Обговорення:Встановлення Koha з репозитарію на ОС Debian: відмінності між версіями
Dubyk (обговорення | внесок) Немає опису редагування |
Dubyk (обговорення | внесок) Немає опису редагування |
||
| Рядок 205: | Рядок 205: | ||
== Налаштування репозиторію Koha == |
== Налаштування репозиторію Koha == |
||
Встановити пакети, необхідні для роботи з HTTPS-репозиторіями. |
|||
'''Примітка.''' |
|||
У цьому розділі використовується офіційний репозиторій Koha. |
|||
Після виходу нових версій Debian або Koha адреса репозиторію чи спосіб підпису GPG-ключем можуть змінюватися. Перед виконанням команд бажано звірити їх з офіційною документацією Koha. |
|||
Оновити список пакетів. |
|||
apt update |
|||
apt install -y curl gnupg ca-certificates |
|||
<syntaxhighlight lang="bash"> |
|||
Створити каталог для ключів APT. |
|||
apt update |
|||
apt install -y \ |
|||
ca-certificates \ |
|||
curl \ |
|||
gnupg |
|||
</syntaxhighlight> |
|||
Імпортувати ключ репозиторію Koha. |
Імпортувати ключ репозиторію Koha. |
||
<syntaxhighlight lang="bash"> |
|||
curl -fsSL https://debian.koha-community.org/koha/gpg.asc \ |
|||
wget -qO- https://debian.koha-community.org/koha/gpg.asc \ |
|||
| gpg --dearmor -o /etc/apt/keyrings/koha.gpg |
|||
| gpg --dearmor \ |
|||
-o /usr/share/keyrings/koha-keyring.gpg |
|||
</syntaxhighlight> |
|||
Створити файл репозиторію. |
Створити файл репозиторію. |
||
<syntaxhighlight lang="bash"> |
|||
mc -e /etc/apt/sources.list.d/koha.sources |
|||
mc -e /etc/apt/sources.list.d/koha.list |
|||
</syntaxhighlight> |
|||
Вміст файлу |
Вміст файлу |
||
<syntaxhighlight lang="text"> |
|||
Types: deb |
|||
deb [signed-by=/usr/share/keyrings/koha-keyring.gpg] \ |
|||
URIs: https://debian.koha-community.org/koha |
|||
https://debian.koha-community.org/koha stable main |
|||
Suites: stable |
|||
</syntaxhighlight> |
|||
Components: main |
|||
Signed-By: /etc/apt/keyrings/koha.gpg |
|||
Оновити список пакетів. |
Оновити список пакетів. |
||
<syntaxhighlight lang="bash"> |
|||
apt update |
|||
apt update |
|||
</syntaxhighlight> |
|||
=== Перевірка === |
=== Перевірка === |
||
<syntaxhighlight lang="bash"> |
|||
apt policy koha-common |
|||
apt policy koha-common |
|||
</syntaxhighlight> |
|||
У списку джерел пакетів повинен бути репозиторій |
|||
Повинна відображатися доступна версія Koha 26.05. |
|||
<syntaxhighlight lang="text"> |
|||
== Встановлення Koha == |
|||
https://debian.koha-community.org/koha |
|||
</syntaxhighlight> |
|||
== Встановлення Koha == |
|||
Встановити пакет Koha. |
|||
Встановити Koha. |
|||
apt install -y koha-common |
|||
<syntaxhighlight lang="bash"> |
|||
Під час встановлення будуть автоматично встановлені: |
|||
apt install -y koha-common |
|||
</syntaxhighlight> |
|||
Під час встановлення буде створено користувача '''koha''', каталоги програми та встановлено всі необхідні Perl-модулі. :contentReference[oaicite:1]{index=1} |
|||
* Apache; |
|||
* MariaDB (якщо її ще не встановлено); |
|||
* Elasticsearch (залежно від пакунків репозиторію); |
|||
* Plack; |
|||
* усі необхідні Perl-модулі. |
|||
=== Перевірка === |
=== Перевірка === |
||
<syntaxhighlight lang="bash"> |
|||
dpkg -l koha-common |
|||
koha-list |
|||
</syntaxhighlight> |
|||
До створення першої бібліотеки команда нічого не виведе. |
|||
Пакет повинен мати стан |
|||
Це нормально. |
|||
ii |
|||
== Основний файл налаштувань Koha == |
|||
Відкрити файл |
|||
mc -e /etc/koha/koha-sites.conf |
|||
Рекомендується перевірити такі параметри. |
|||
DOMAIN=".example.org" |
|||
OPACPORT="80" |
|||
INTRAPORT="8080" |
|||
USE_MEMCACHED="yes" |
|||
MEMCACHED_SERVERS="127.0.0.1:11211" |
|||
ZEBRA_MARC_FORMAT="UNIMARC" |
|||
ZEBRA_LANGUAGE="en" |
|||
ENABLE_SRU="yes" |
|||
USE_ELASTICSEARCH="yes" |
|||
'''Примітка.''' |
|||
Значення '''DOMAIN''' повинно відповідати доменному імені сервера. |
|||
=== Перевірка === |
|||
Перевірити синтаксис файлу. |
|||
grep -v '^#' /etc/koha/koha-sites.conf | grep . |
|||
== MariaDB == |
== MariaDB == |
||
Запустити сервер баз даних. |
|||
Якщо MariaDB ще не встановлена, виконати |
|||
apt install -y mariadb-server |
|||
Запустити службу. |
|||
<syntaxhighlight lang="bash"> |
|||
systemctl enable mariadb |
|||
systemctl enable mariadb |
|||
systemctl restart mariadb |
|||
</syntaxhighlight> |
|||
Виконати початкове налаштування. |
Виконати початкове налаштування. |
||
<syntaxhighlight lang="bash"> |
|||
mysql_secure_installation |
|||
mysql_secure_installation |
|||
</syntaxhighlight> |
|||
Рекомендується: |
Рекомендується: |
||
* встановити пароль користувача root; |
* встановити пароль користувача '''root'''; |
||
* видалити анонімних користувачів; |
* видалити анонімних користувачів; |
||
* заборонити віддалений |
* заборонити віддалений вхід користувача '''root'''; |
||
* видалити тестову базу даних; |
* видалити тестову базу даних; |
||
* |
* перезавантажити таблиці привілеїв. |
||
=== Перевірка === |
=== Перевірка === |
||
<syntaxhighlight lang="bash"> |
|||
systemctl is-active mariadb |
|||
systemctl is-active mariadb |
|||
</syntaxhighlight> |
|||
Повинно бути |
Повинно бути |
||
<syntaxhighlight lang="text"> |
|||
active |
|||
active |
|||
</syntaxhighlight> |
|||
== Elasticsearch == |
|||
Якщо пакет не встановлено автоматично |
|||
apt install -y elasticsearch |
|||
Увімкнути автоматичний запуск. |
|||
systemctl enable elasticsearch |
|||
systemctl restart elasticsearch |
|||
=== Перевірка === |
|||
systemctl status elasticsearch |
|||
Служба повинна бути у стані '''active (running)'''. |
|||
Перевірити відповідь сервера. |
|||
curl http://127.0.0.1:9200 |
|||
Повинен відобразитися JSON із відомостями про Elasticsearch. |
|||
== Memcached == |
|||
Встановити сервер кешування. |
|||
apt install -y memcached |
|||
Увімкнути службу. |
|||
systemctl enable memcached |
|||
systemctl restart memcached |
|||
=== Перевірка === |
|||
systemctl is-active memcached |
|||
Повинно бути |
|||
active |
|||
== Створення бібліотеки == |
== Створення бібліотеки == |
||
У прикладах використовується назва |
У прикладах використовується назва |
||
<syntaxhighlight lang="text"> |
|||
library |
|||
library |
|||
</syntaxhighlight> |
|||
За потреби замініть її на власну. |
За потреби замініть її на власну. |
||
| Рядок 388: | Рядок 322: | ||
Створити бібліотеку. |
Створити бібліотеку. |
||
<syntaxhighlight lang="bash"> |
|||
koha-create --create-db library |
|||
koha-create --create-db library |
|||
</syntaxhighlight> |
|||
Під час створення буде: |
|||
Процес може тривати кілька хвилин. |
|||
* створено базу даних; |
|||
* створено користувача MariaDB; |
|||
* створено конфігурацію Apache; |
|||
* створено конфігурацію Plack; |
|||
* створено службові каталоги; |
|||
* згенеровано пароль адміністратора бази даних. |
|||
=== Перевірка === |
=== Перевірка === |
||
<syntaxhighlight lang="bash"> |
|||
koha-list |
|||
koha-list |
|||
</syntaxhighlight> |
|||
Повинно відобразитися |
Повинно відобразитися |
||
<syntaxhighlight lang="text"> |
|||
library |
|||
library |
|||
</syntaxhighlight> |
|||
== Пароль доступу до бази даних == |
|||
== Apache == |
|||
Під час встановлення Koha автоматично генерує пароль користувача бази даних. |
|||
Переглянути його можна у файлі |
|||
Перевірити її наявність. |
|||
<syntaxhighlight lang="bash"> |
|||
ls -l /etc/apache2/sites-enabled/ |
|||
mc -e /etc/koha/sites/library/koha-conf.xml |
|||
</syntaxhighlight> |
|||
Знайти рядок |
|||
Повинні бути присутні конфігураційні файли бібліотеки. |
|||
<syntaxhighlight lang="xml"> |
|||
Перезапустити Apache. |
|||
<pass>...</pass> |
|||
</syntaxhighlight> |
|||
Цей пароль знадобиться під час роботи веб-інсталятора. |
|||
systemctl restart apache2 |
|||
'''Примітка.''' |
|||
=== Перевірка === |
|||
systemctl status apache2 |
|||
Служба повинна бути у стані '''active (running)'''. |
|||
Перевірити синтаксис конфігурації. |
|||
apachectl configtest |
|||
Повинно відобразитися |
|||
Не змінюйте цей пароль вручну без необхідності. |
|||
Syntax OK |
|||
Версія за 16:08, 6 липня 2026
Встановлення та початкове налаштування Koha 26.05 на Debian GNU/Linux 13 (Trixie)
Вступ
У статті описано встановлення автоматизованої бібліотечної інформаційної системи Koha 26.05 з офіційного репозиторію на Debian GNU/Linux 13 (Trixie).
Після виконання всіх кроків буде встановлено та налаштовано:
- Koha 26.05;
- MariaDB;
- Apache;
- Elasticsearch;
- Plack;
- електронний каталог;
- інтерфейс бібліотекаря;
- HTTPS;
- SMTP;
- резервне копіювання.
Інструкція розрахована на чисту інсталяцію Debian 13.
Усі команди виконуються від користувача root.
Мінімальні вимоги
Для невеликих бібліотек рекомендується:
| Компонент | Мінімально | Рекомендовано |
|---|---|---|
| Процесор | 2 ядра | 4 ядра і більше |
| Оперативна пам'ять | 4 ГБ | 8 ГБ і більше |
| Системний диск | 40 ГБ SSD | 100 ГБ SSD і більше |
| База даних | MariaDB | MariaDB |
| Пошуковий рушій | Elasticsearch | Elasticsearch |
Для середніх і великих бібліотек обсяг оперативної пам'яті та дискового простору слід збільшити відповідно до кількості бібліографічних записів, примірників та користувачів.
Підготовка системи
Оновити список пакетів та встановити всі доступні оновлення.
apt update apt full-upgrade -y reboot
Перевірка
Перевірити версію Debian.
cat /etc/debian_version
Повинна відображатися версія 13.x.
Часовий пояс
Перевірити поточний часовий пояс.
timedatectl
Для України рекомендується:
timedatectl set-timezone Europe/Kyiv
Перевірка
timedatectl
У полі Time zone повинно бути
Europe/Kyiv
Локалі
Перевірити поточні локалі.
locale
Якщо локалі ще не створені, виконати
dpkg-reconfigure locales
Рекомендується увімкнути
en_US.UTF-8 UTF-8 uk_UA.UTF-8 UTF-8
Локаль за замовчуванням
en_US.UTF-8
Перевірка
locale
Ім'я сервера
Перевірити поточне ім'я сервера.
hostnamectl
При необхідності змінити його.
hostnamectl set-hostname koha
Якщо використовується доменне ім'я, рекомендується одразу встановити повне ім'я сервера, наприклад
koha.example.org
Перевірка
hostname -f
Файл hosts
Відкрити файл
mc -e /etc/hosts
Приклад
127.0.0.1 localhost 127.0.1.1 koha.example.org koha ::1 localhost ip6-localhost ip6-loopback
Перевірка
hostname -f ping -c4 localhost
Синхронізація часу
Перевірити стан служби синхронізації часу.
systemctl status systemd-timesyncd
Якщо служба не запущена
systemctl enable systemd-timesyncd systemctl restart systemd-timesyncd
Перевірка
timedatectl
У полі
System clock synchronized
повинно бути
yes
Встановлення додаткових пакетів
Встановити пакети, які знадобляться під час налаштування сервера.
apt install -y \ apt-transport-https \ ca-certificates \ curl \ wget \ gnupg \ lsb-release \ software-properties-common \ mc \ htop \ iotop \ iftop \ tree \ zip \ unzip \ rsync \ cron \ certbot
Перевірка
mc htop
Програми повинні запускатися без помилок.
Налаштування репозиторію Koha
Встановити пакети, необхідні для роботи з HTTPS-репозиторіями.
<syntaxhighlight lang="bash"> apt update
apt install -y \ ca-certificates \ curl \ gnupg </syntaxhighlight>
Імпортувати ключ репозиторію Koha.
<syntaxhighlight lang="bash"> wget -qO- https://debian.koha-community.org/koha/gpg.asc \ | gpg --dearmor \ -o /usr/share/keyrings/koha-keyring.gpg </syntaxhighlight>
Створити файл репозиторію.
<syntaxhighlight lang="bash"> mc -e /etc/apt/sources.list.d/koha.list </syntaxhighlight>
Вміст файлу
<syntaxhighlight lang="text"> deb [signed-by=/usr/share/keyrings/koha-keyring.gpg] \ https://debian.koha-community.org/koha stable main </syntaxhighlight>
Оновити список пакетів.
<syntaxhighlight lang="bash"> apt update </syntaxhighlight>
Перевірка
<syntaxhighlight lang="bash"> apt policy koha-common </syntaxhighlight>
У списку джерел пакетів повинен бути репозиторій
<syntaxhighlight lang="text"> https://debian.koha-community.org/koha </syntaxhighlight>
Встановлення Koha
Встановити Koha.
<syntaxhighlight lang="bash"> apt install -y koha-common </syntaxhighlight>
Під час встановлення буде створено користувача koha, каталоги програми та встановлено всі необхідні Perl-модулі. :contentReference[oaicite:1]{index=1}
Перевірка
<syntaxhighlight lang="bash"> koha-list </syntaxhighlight>
До створення першої бібліотеки команда нічого не виведе.
Це нормально.
MariaDB
Запустити сервер баз даних.
<syntaxhighlight lang="bash"> systemctl enable mariadb systemctl restart mariadb </syntaxhighlight>
Виконати початкове налаштування.
<syntaxhighlight lang="bash"> mysql_secure_installation </syntaxhighlight>
Рекомендується:
- встановити пароль користувача root;
- видалити анонімних користувачів;
- заборонити віддалений вхід користувача root;
- видалити тестову базу даних;
- перезавантажити таблиці привілеїв.
Перевірка
<syntaxhighlight lang="bash"> systemctl is-active mariadb </syntaxhighlight>
Повинно бути
<syntaxhighlight lang="text"> active </syntaxhighlight>
Створення бібліотеки
У прикладах використовується назва
<syntaxhighlight lang="text"> library </syntaxhighlight>
За потреби замініть її на власну.
Створити бібліотеку.
<syntaxhighlight lang="bash"> koha-create --create-db library </syntaxhighlight>
Під час створення буде:
- створено базу даних;
- створено користувача MariaDB;
- створено конфігурацію Apache;
- створено конфігурацію Plack;
- створено службові каталоги;
- згенеровано пароль адміністратора бази даних.
Перевірка
<syntaxhighlight lang="bash"> koha-list </syntaxhighlight>
Повинно відобразитися
<syntaxhighlight lang="text"> library </syntaxhighlight>
Пароль доступу до бази даних
Під час встановлення Koha автоматично генерує пароль користувача бази даних.
Переглянути його можна у файлі
<syntaxhighlight lang="bash"> mc -e /etc/koha/sites/library/koha-conf.xml </syntaxhighlight>
Знайти рядок
<syntaxhighlight lang="xml"> <pass>...</pass> </syntaxhighlight>
Цей пароль знадобиться під час роботи веб-інсталятора.
Примітка.
Не змінюйте цей пароль вручну без необхідності.