Встановлення Koha з репозитарію на ОС Debian: відмінності між версіями
Dubyk (обговорення | внесок) |
Dubyk (обговорення | внесок) |
||
(Не показані 73 проміжні версії цього користувача) | |||
Рядок 1: | Рядок 1: | ||
Розглядається встановлення АБІС Koha версії 21.05.X- |
Розглядається встановлення АБІС Koha версії 21.05.X-23.11.X '''з репозитарію''' [http://debian.koha-community.org/ debian.koha-community.org]. |
||
На даний час це найбільш протестований і розповсюджений варіант. |
На даний час це найбільш протестований і розповсюджений варіант. |
||
Окрім цього ще є варіант [[Встановлення Koha з джерела на ОС Debian|встановлення АБІС Koha з джерельних кодів]], що є дещо більш гнучким щодо налаштування. |
Окрім цього ще є варіант [[Встановлення Koha з джерела на ОС Debian|встановлення АБІС Koha з джерельних кодів]], що є дещо більш гнучким щодо налаштування, але і складнішим. |
||
Див. також |
Див. також |
||
Рядок 21: | Рядок 21: | ||
lsb_release -d |
lsb_release -d |
||
Щодо сумісності Коха з іншими версіями ОС див. |
|||
<!-- = Швидкий варіант для нетерплячих = |
|||
* [https://wiki.koha-community.org/wiki/System_requirements_and_recommendations Системні вимоги та рекомендації] (англ.) |
|||
echo 'deb http://debian.koha-community.org/koha stable main' | sudo tee /etc/apt/sources.list.d/koha.list; wget -O- http://debian.koha-community.org/koha/gpg.asc | sudo apt-key add -; sudo apt-get update |
|||
sudo apt-get install koha-common mysql-server memcached libmemcached-tools libgdbm-dev apache2-dev libreadonly-xs-perl |
|||
sudo perl -MCPAN -e 'install HTTPD::Bench::ApacheBench'; sudo perl -MCPAN -e 'install Test::DBIx::Class'; sudo perl -MCPAN -e 'install WebService::ILS' |
|||
sudo koha-post-install-setup; sudo a2enmod cgi; sudo a2enmod headers proxy_http; sudo a2enconf charset; sudo /etc/init.d/apache2 restart |
|||
--> |
|||
= Попередні налаштування = |
|||
== Локаль з UTF-8 == |
|||
Перевірка локалі: |
|||
sudo locale |
|||
у виводі повинно бути магічне „'''UTF-8'''“ (en.UTF-8,ru_RU.UTF-8 тощо), наприклад для України |
|||
LANG=uk_UA.UTF-8 |
|||
LANGUAGE= |
|||
LC_CTYPE="uk_UA.UTF-8" |
|||
LC_NUMERIC="uk_UA.UTF-8" |
|||
LC_TIME="uk_UA.UTF-8" |
|||
LC_COLLATE="uk_UA.UTF-8" |
|||
LC_MONETARY="uk_UA.UTF-8" |
|||
LC_MESSAGES="uk_UA.UTF-8" |
|||
LC_PAPER="uk_UA.UTF-8" |
|||
LC_NAME="uk_UA.UTF-8" |
|||
LC_ADDRESS="uk_UA.UTF-8" |
|||
LC_TELEPHONE="uk_UA.UTF-8" |
|||
LC_MEASUREMENT="uk_UA.UTF-8" |
|||
LC_IDENTIFICATION="uk_UA.UTF-8" |
|||
Якщо '''UTF-8''' не згадується, то встановлюємо локаль |
|||
apt install locales-all |
|||
sudo /usr/sbin/update-locale LANG=uk_UA.UTF-8 LANGUAGE="uk_UA:uk" |
|||
== Підключення гілок non-free та contrib для пакунків Дебіен == |
== Підключення гілок non-free та contrib для пакунків Дебіен == |
||
Рядок 59: | Рядок 29: | ||
sudo mc -e /etc/apt/sources.list |
sudo mc -e /etc/apt/sources.list |
||
<!-- |
|||
deb http://deb.debian.org/debian/ buster main non-free contrib |
|||
deb-src http://deb.debian.org/debian/ buster main non-free contrib |
|||
deb http://security.debian.org/debian-security buster/updates main contrib non-free |
|||
deb-src http://security.debian.org/debian-security buster/updates main contrib non-free |
|||
deb http://deb.debian.org/debian/ buster-updates main contrib non-free |
|||
deb-src http://deb.debian.org/debian/ buster-updates main contrib non-free |
|||
deb http://deb.debian.org/debian buster-backports main contrib non-free |
|||
deb-src http://deb.debian.org/debian buster-backports main |
|||
--> |
|||
deb http://deb.debian.org/debian/ bullseye main non-free contrib |
deb http://deb.debian.org/debian/ bullseye main non-free contrib |
||
deb-src http://deb.debian.org/debian/ bullseye main non-free contrib |
deb-src http://deb.debian.org/debian/ bullseye main non-free contrib |
||
Рядок 87: | Рядок 45: | ||
sudo apt-get upgrade |
sudo apt-get upgrade |
||
= Встановлення ОС Debian GNU/Linux 12 bookworm = |
|||
<!--== Користувач для Koha == |
|||
Див. також: |
|||
Додаємо користувача |
|||
* https://d-i.debian.org/manual/uk.amd64/index.html Debian GNU/Linux гайд інсталяції |
|||
Перевірка поточної версії Debian: |
|||
(нижче замість „АдміністраторСистемиKoha“ вводимо своє) |
|||
lsb_release -d |
|||
Щодо сумісності Коха з іншими версіями ОС див. |
|||
sudo adduser АдміністраторСистемиKoha |
|||
* [https://wiki.koha-community.org/wiki/System_requirements_and_recommendations Системні вимоги та рекомендації] (англ.) |
|||
== Підключення гілок non-free та contrib для пакунків Дебіен == |
|||
Деколи група автоматично не створюється — тоді потрібно ще |
|||
Перевіряємо у /etc/apt/sources.list чи підключені гілки non-free та contrib |
|||
sudo addgroup АдміністраторСистемиKoha |
|||
sudo adduser АдміністраторСистемиKoha АдміністраторСистемиKoha |
|||
sudo mc -e /etc/apt/sources.list |
|||
Командою „sudo visudo“ відкриваємо для редагування файл привілеїв адміністратора і надаємо їх користувачу АдміністраторСистемиKoha, додавши у кінці файлу рядок |
|||
deb http://deb.debian.org/debian/ bookworm contrib main non-free non-free-firmware |
|||
АдміністраторСистемиKoha ALL=(ALL) ALL |
|||
deb-src http://deb.debian.org/debian/ bookworm contrib main non-free non-free-firmware |
|||
Після додавання клавіатурним скороченням Ctrl-O зберігаємо файл (/etc/sudoers) та через Ctrl-X виходимо. |
|||
--> |
|||
<!--== Підключення репозитарію Debian „testing“ та „unstable“ == |
|||
Деякі пакунки (чи оновленні версії) не попали в стабільний випуск Debian, проте можуть бути у випуску „testing“ чи „unstable“. |
|||
Створюємо файл /etc/apt/apt.conf і додаємо наступне |
|||
# Зробити „wheezy“ дистрибутивом за умовчанням |
|||
APT::Default-Release "wheezy"; |
|||
Створюємо файл /etc/apt/preferences і додаємо наступне (щоб у стабільної гілки „wheezy“ був вищий пріоритет) |
|||
Package: * |
|||
Pin: release a=stable |
|||
Pin-Priority: 700 |
|||
deb http://deb.debian.org/debian/ bookworm-updates contrib main non-free non-free-firmware |
|||
Package: * |
|||
deb-src http://deb.debian.org/debian/ bookworm-updates contrib main non-free non-free-firmware |
|||
Pin: release a=testing |
|||
Pin-Priority: 650 |
|||
deb http://deb.debian.org/debian/ bookworm-proposed-updates contrib main non-free non-free-firmware |
|||
Package: * |
|||
deb-src http://deb.debian.org/debian/ bookworm-proposed-updates contrib main non-free non-free-firmware |
|||
Pin: release a=unstable |
|||
Pin-Priority: 600 |
|||
У файл /etc/apt/sources.list додаємо наступне джерело |
|||
# Джерело пакунків з гілки Дебіен „testing“ |
|||
deb http://http.us.debian.org/debian/ testing main contrib non-free. |
|||
deb-src http://http.us.debian.org/debian/ testing main contrib non-free. |
|||
deb http://deb.debian.org/debian/ bookworm-backports contrib main non-free non-free-firmware |
|||
# Джерело пакунків з гілки Дебіен „testing“ — оновлення безпеки |
|||
deb http:// |
deb-src http://deb.debian.org/debian/ bookworm-backports contrib main non-free non-free-firmware |
||
deb-src http://security.debian.org/ testing/updates main contrib non-free |
|||
deb http://deb.debian.org/debian-security/ bookworm-security contrib main non-free non-free-firmware |
|||
# Джерело пакунків з гілки Дебіен „unstable“ |
|||
deb http:// |
deb-src http://deb.debian.org/debian-security/ bookworm-security contrib main non-free non-free-firmware |
||
deb-src http://http.us.debian.org/debian/ unstable main contrib non-free. |
|||
sudo apt-get update |
|||
sudo apt-get upgrade |
|||
= Попередні налаштування = |
|||
Оновлюємо список доступних для встановлення пакунків |
|||
== Локаль з UTF-8 == |
|||
Перевірка локалі: |
|||
sudo locale |
|||
у виводі повинно бути магічне „'''UTF-8'''“ (en.UTF-8 тощо), наприклад для України |
|||
LANG=uk_UA.UTF-8 |
|||
sudo apt-get update |
|||
LANGUAGE= |
|||
--> |
|||
LC_CTYPE="uk_UA.UTF-8" |
|||
LC_NUMERIC="uk_UA.UTF-8" |
|||
LC_TIME="uk_UA.UTF-8" |
|||
LC_COLLATE="uk_UA.UTF-8" |
|||
LC_MONETARY="uk_UA.UTF-8" |
|||
LC_MESSAGES="uk_UA.UTF-8" |
|||
LC_PAPER="uk_UA.UTF-8" |
|||
LC_NAME="uk_UA.UTF-8" |
|||
LC_ADDRESS="uk_UA.UTF-8" |
|||
LC_TELEPHONE="uk_UA.UTF-8" |
|||
LC_MEASUREMENT="uk_UA.UTF-8" |
|||
LC_IDENTIFICATION="uk_UA.UTF-8" |
|||
Якщо '''UTF-8''' не згадується, то встановлюємо локаль |
|||
apt install locales locales-all |
|||
sudo /usr/sbin/update-locale LANG=uk_UA.UTF-8 LANGUAGE="uk_UA:uk" |
|||
== Підключення репозитарію Koha == |
== Підключення репозитарію Koha == |
||
Рядок 153: | Рядок 109: | ||
В репозитарії [http://debian.koha-community.org/ debian.koha-community.org] доступні стабільна та розробницька версії. |
В репозитарії [http://debian.koha-community.org/ debian.koha-community.org] доступні стабільна та розробницька версії. |
||
Спочатку додаємо ключ gpg.asc (koha-keyring.gpg) до довірених ключів APT: |
|||
Підключаємо у файлі '''/etc/apt/sources.list''' стабільну версію (рекомендується) |
|||
deb http://debian.koha-community.org/koha stable main |
|||
(доступні й інші версії, див. тут http://debian.koha-community.org/koha/dists/) |
|||
Встановити gpg |
|||
Швидко підключити репозитарій Koha можна командою |
|||
apt-get install gnupg2 |
|||
echo 'deb http://debian.koha-community.org/koha stable main' | sudo tee /etc/apt/sources.list.d/koha.list |
|||
Звантажити та встановити ключ |
|||
Також можна вибрати репозитарій з певною версією, напр |
|||
echo 'deb http://debian.koha-community.org/koha 21.05 main' | sudo tee /etc/apt/sources.list.d/koha.list |
|||
echo 'deb http://debian.koha-community.org/koha 21.11 main' | sudo tee /etc/apt/sources.list.d/koha.list |
|||
echo 'deb http://debian.koha-community.org/koha 22.05 main' | sudo tee /etc/apt/sources.list.d/koha.list |
|||
echo 'deb http://debian.koha-community.org/koha 22.11 main' | sudo tee /etc/apt/sources.list.d/koha.list |
|||
Новіший спосіб |
|||
Також додаємо ключ gpg.asc до довірених ключів APT: |
|||
wget -qO - https://debian.koha-community.org/koha/gpg.asc | gpg --dearmor -o /usr/share/keyrings/koha-keyring.gpg |
|||
apt-get install gnupg2 |
|||
або старіший спосіб |
|||
wget -q -O- https://debian.koha-community.org/koha/gpg.asc | sudo apt-key add - |
wget -q -O- https://debian.koha-community.org/koha/gpg.asc | sudo apt-key add - |
||
Див. також [https://wiki.koha-community.org/wiki/Koha_on_Debian#The_apt-key_deprecation_warning] та [https://wiki.debian.org/DebianRepository/UseThirdParty]). |
|||
Швидко підключити репозитарій стабільну версію Koha (рекомендується) можна командою |
|||
echo 'deb [signed-by=/usr/share/keyrings/koha-keyring.gpg] http://debian.koha-community.org/koha stable main' | sudo tee /etc/apt/sources.list.d/koha.list |
|||
Також можна вибрати репозитарій з певною версією (див. тут http://debian.koha-community.org/koha/dists/), напр |
|||
echo 'deb [signed-by=/usr/share/keyrings/koha-keyring.gpg] http://debian.koha-community.org/koha 21.05 main' | sudo tee /etc/apt/sources.list.d/koha.list |
|||
echo 'deb [signed-by=/usr/share/keyrings/koha-keyring.gpg] http://debian.koha-community.org/koha 21.11 main' | sudo tee /etc/apt/sources.list.d/koha.list |
|||
echo 'deb [signed-by=/usr/share/keyrings/koha-keyring.gpg] http://debian.koha-community.org/koha 22.05 main' | sudo tee /etc/apt/sources.list.d/koha.list |
|||
echo 'deb [signed-by=/usr/share/keyrings/koha-keyring.gpg] http://debian.koha-community.org/koha 22.11 main' | sudo tee /etc/apt/sources.list.d/koha.list |
|||
'''echo 'deb [signed-by=/usr/share/keyrings/koha-keyring.gpg] http://debian.koha-community.org/koha 23.05 main' | sudo tee /etc/apt/sources.list.d/koha.list''' |
|||
echo 'deb [signed-by=/usr/share/keyrings/koha-keyring.gpg] http://debian.koha-community.org/koha 23.11 main' | sudo tee /etc/apt/sources.list.d/koha.list |
|||
Оновлюємо список доступних для встановлення пакунків |
Оновлюємо список доступних для встановлення пакунків |
||
Рядок 176: | Рядок 141: | ||
== Встановлення пакунків Koha == |
== Встановлення пакунків Koha == |
||
sudo apt-get install koha-common koha-deps koha-perldeps koha-elasticsearch |
sudo apt-get install koha-common koha-deps koha-perldeps koha-l10n koha-elasticsearch |
||
Може бути помилка з конфігурацією пакунка libapache2-mpm-itk, див. рішення тут https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=734865 та https://wiki.koha-community.org/wiki/Koha_on_Debian#Aside:_a_common_problem_on_Ubuntu_happens_here |
Може бути помилка з конфігурацією пакунка libapache2-mpm-itk, див. рішення тут https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=734865 та https://wiki.koha-community.org/wiki/Koha_on_Debian#Aside:_a_common_problem_on_Ubuntu_happens_here |
||
Рядок 194: | Рядок 159: | ||
За винятком першого питання, на всі питання можна відповісти Так (“'''Y'''”). Необхідно встановити root пароль (надалі „ПарольАдмінаMySQL“)! |
За винятком першого питання, на всі питання можна відповісти Так (“'''Y'''”). Необхідно встановити root пароль (надалі „ПарольАдмінаMySQL“)! |
||
sudo apt-get install |
sudo apt-get install memcached libmemcached-tools |
||
memcached libmemcached-tools |
|||
sudo apt install aptitude |
sudo apt install aptitude |
||
Рядок 209: | Рядок 173: | ||
Типово phpmyadmin доступний за адресою http://localhost/phpmyadmin |
Типово phpmyadmin доступний за адресою http://localhost/phpmyadmin |
||
Щодо phpmyadmin також див. https://think.unblog.ch/en/phpmyadmin-error-php-7-2-5-is-required/ |
|||
Якщо потрібен доступ до phpmyadmin на іншому порті, то у файлі /etc/phpmyadmin/phpmyadmin.service змінити |
Якщо потрібен доступ до phpmyadmin на іншому порті, то у файлі /etc/phpmyadmin/phpmyadmin.service змінити |
||
Рядок 239: | Рядок 205: | ||
Пакунки, яких немає у репозитаріях Debian чи Koha, встановлюємо з CPAN. |
Пакунки, яких немає у репозитаріях Debian чи Koha, встановлюємо з CPAN. |
||
Станом на |
Станом на 12.2023 необхідні модулі |
||
* '''HTTPD::Bench::ApacheBench''' (0.73), перевірка в Debian: [https://packages.debian.org/search?keywords=libhttpd-bench-apachebench-perl&searchon=names&suite=all§ion=all]). |
* '''HTTPD::Bench::ApacheBench''' (0.73), перевірка в Debian: [https://packages.debian.org/search?keywords=libhttpd-bench-apachebench-perl&searchon=names&suite=all§ion=all]). |
||
* '''Test::DBIx::Class''' (0.42), перевірка в Debian: [https://packages.debian.org/search?keywords=libtest-dbix-class-perl&searchon=names&suite=all§ion=all]). |
|||
* '''Text::CSV::Unicode''' (0.40), перевірка в Debian: [https://packages.debian.org/search?keywords=libtext_csv_unicode-perl&searchon=names&suite=all§ion=all]). |
* '''Text::CSV::Unicode''' (0.40), перевірка в Debian: [https://packages.debian.org/search?keywords=libtext_csv_unicode-perl&searchon=names&suite=all§ion=all]). |
||
* '''Selenium::Remote::Driver''' (1.27), перевірка в Debian: [https://packages.debian.org/search?keywords=libselenium_remote_driver-perl&searchon=names&suite=all§ion=all]). |
* '''Selenium::Remote::Driver''' (1.27), перевірка в Debian: [https://packages.debian.org/search?keywords=libselenium_remote_driver-perl&searchon=names&suite=all§ion=all]). |
||
* '''Test::MockModule''' |
|||
<!-- exists in Debian 10: * '''Net::OAuth2::AuthorizationServer''' (0.16), перевірка в Debian: [https://packages.debian.org/search?keywords=libnet_oauth2_authorizationserver-perl&searchon=names&suite=all§ion=all]). --> |
|||
* Locale::XGettext::TT2 |
* '''Locale::XGettext::TT2''' |
||
Встановлюємо командами (при цьому, якщо це перше використання CPAN, підтверджуємо автоматичне налаштування та підключення до Інтернет) : |
Встановлюємо командами (при цьому, якщо це перше використання CPAN, підтверджуємо автоматичне налаштування та підключення до Інтернет) : |
||
Рядок 261: | Рядок 223: | ||
sudo apt-get install libgdbm-dev apache2-dev libdatetimex-easy-perl |
sudo apt-get install libgdbm-dev apache2-dev libdatetimex-easy-perl |
||
sudo perl -MCPAN -e 'DBIx::Class::Schema::PopulateMore' |
sudo perl -MCPAN -e 'DBIx::Class::Schema::PopulateMore' |
||
sudo perl -MCPAN -e 'install Test::Differences' |
sudo perl -MCPAN -e 'install Test::Differences' |
||
sudo perl -MCPAN -e 'install Test::DBIx::Class' |
|||
— встановився, вивід — |
|||
NEWELLC/Test-DBIx-Class-0.52.tar.gz |
|||
make install -- OK |
|||
sudo perl -MCPAN -e 'install Text::CSV::Unicode' |
sudo perl -MCPAN -e 'install Text::CSV::Unicode' |
||
Рядок 273: | Рядок 232: | ||
RMBARKER/Text-CSV-Unicode-0.400.tar.gz |
RMBARKER/Text-CSV-Unicode-0.400.tar.gz |
||
./Build install -- OK |
./Build install -- OK |
||
sudo perl -MCPAN -e 'install Test::MockModule' |
|||
— встановився |
|||
sudo perl -MCPAN -e 'install Selenium::Remote::Driver' |
sudo perl -MCPAN -e 'install Selenium::Remote::Driver' |
||
Рядок 335: | Рядок 291: | ||
(він задіює модулі Rewrite та Suexec для Apache) |
(він задіює модулі Rewrite та Suexec для Apache) |
||
2) Додатково задіюємо модулі<!--і Expires, |
2) Додатково задіюємо модулі <!--і Expires, --> Deflate, Cgi, headers, proxy_http<!--, Mpm_Itk та виключаємо[https://wiki.koha-community.org/wiki/Koha_on_Debian#Aside:_a_common_problem_on_Ubuntu_happens_here] модуль Event |
||
sudo a2enmod expires |
sudo a2enmod expires--> |
||
sudo a2enmod deflate |
sudo a2enmod deflate |
||
sudo a2enmod rewrite |
sudo a2enmod rewrite |
||
sudo a2enmod cgi |
sudo a2enmod cgi |
||
Рядок 510: | Рядок 466: | ||
Частина локалізованих SQL-таблиць '''українською''' була долучена латкою https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=18537 у 2017 р. для версії Koha 17.05.05 та вище. |
Частина локалізованих SQL-таблиць '''українською''' була долучена латкою https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=18537 у 2017 р. для версії Koha 17.05.05 та вище. |
||
Оновлення для українських SQL-таблиць доступні у |
Оновлення для українських SQL-таблиць доступні у DrobBox Сергія Дубика за адресою: |
||
'https://www.dropbox.com/sh/nybt54x8yhh7frq/AACfsG32sJnBgNh1CdivXDjYa?dl=0' |
'https://www.dropbox.com/sh/nybt54x8yhh7frq/AACfsG32sJnBgNh1CdivXDjYa?dl=0' |
||
Тека ''' |
Тека '''SQL_Koha_23_05_0X_adds/uk-UA_additional/uk-UA''' містить оновлення, які необхідно скопіювати у теку '''uk-UA''' у '''/usr/share/koha/intranet/cgi-bin/installer/data/mysql''' |
||
Виконайте наступну команду |
|||
(Теку /usr/share/koha/intranet/cgi-bin/installer/data/mysql/uk-UA не витираємо, лише дописуємо (копіюємо зі заміною) оновлення з DrobBox). |
|||
sudo find /usr/share/koha/intranet/cgi-bin/installer/data/mysql/uk-UA -type d -exec chmod ugo+x {} \; |
|||
щоб надати привілеї теці /usr/share/koha/intranet/cgi-bin/installer/data/mysql/uk-UA. Інакше інсталятор її не побачить. |
|||
=== Утворення локалізованих шаблонів === |
=== Утворення локалізованих шаблонів === |
||
Рядок 536: | Рядок 494: | ||
sudo koha-translate --list --available |
sudo koha-translate --list --available |
||
Встановлюємо переклади для української та російської |
Встановлюємо переклади для української<!-- та російської --> |
||
sudo koha-translate --install uk-UA |
sudo koha-translate --install uk-UA |
||
<!-- sudo koha-translate --install ru-RU --> |
|||
Ця команда також згенерує деякі перекладені дані для Коха (у форматі '''yaml'''-файлів) у теці |
|||
та декілька інших |
|||
/usr/share/koha/intranet/cgi-bin/installer/data/mysql/uk-UA |
|||
разом з раніше скопійованими '''SQL'''-файлами. Примітка: sudo koha-translate --update uk-UA також генерує yaml-файли (потрібно при встановленні екземплярів Коха). |
|||
Також можете встановити деякі інші мови інтерфейсу |
|||
sudo koha-translate --install pl-PL |
sudo koha-translate --install pl-PL |
||
<!-- sudo koha-translate --install be-BY --> |
|||
sudo koha-translate --install de-DE |
|||
sudo koha-translate --install fr-FR |
|||
sudo koha-translate --install it-IT |
|||
sudo koha-translate --install cs-CZ |
|||
sudo koha-translate --install bg-Cyrl |
|||
… |
… |
||
=== Кроки веб-встановлювача === |
=== Кроки веб-встановлювача === |
||
Типовий логін для екземляра напр. |
Типовий логін для екземляра напр. „ukr_unimarc“ буде: |
||
koha_ukr_unimarc |
koha_ukr_unimarc |
||
Пароль можна переглянути за допомогою: |
Пароль та логін можна переглянути за допомогою: |
||
sudo koha-passwd ukr_unimarc |
sudo koha-passwd ukr_unimarc |
||
Рядок 566: | Рядок 533: | ||
Крок 2: налаштування бази даних, перевірка з’єднання, існування БД та привілеїв |
Крок 2: налаштування бази даних, перевірка з’єднання, існування БД та привілеїв |
||
Крок 3: створення таблиць, вибір МАРК-стандарту '''Unimarc''' (УкрМарк), вибір типових даних (послідовно '''вибираємо усі''' дані, імпорт |
Крок 3: створення таблиць, вибір МАРК-стандарту '''Unimarc''' (УкрМарк), вибір типових даних (послідовно '''вибираємо усі¹²''' '''дані''', імпорт 1-10 хв.). |
||
¹Які типові дані можна вимкнути: |
|||
На 3 кроці слідкуємо за помилками при імпорті типових даних. Якщо є помилки — знаходимо відповідні sql-файли, виправляємо їх та імпортуємо вручну (напр., через phpmyadmin). Також повідомляйте про sql-помилки Сергія Дубика, serhijdubykЖАБКАgmail.com. |
|||
* Приклади користувачів |
|||
* Приклади бібліотек/підрозділів |
|||
²Також варто вимкнути типову структуру unimarc_sample_fastadd_framework (вона конфліктує з unimarc_sample_fastadd_framework_FA_UKR) у блоці „Факультативне“. |
|||
Встановлення завершено! |
|||
==== |
==== Процес імпорту даних ==== |
||
Для імпорту даних Koha використовуватиме дані з теки /usr/share/koha/intranet/cgi-bin/installer/data/mysql/uk-UA. |
|||
Рідко, скоріш на повільних серверах, на 3-му кроці може з’являтися помилка „Gateway Timeout“. Спробуйте в налаштуваннях Apache (/etc/apache2/apache2.conf) виставити більший час (Timeout 1200), виконати |
|||
У цій теці будуть як дані, згенеровані самою Коха (у форматі yml-файлів) так і дані sql-скриптів (з набору Сергія Дубика). |
|||
sudo /etc/init.d/apache2 restart |
|||
На 3 кроці слідкуємо за помилками при імпорті типових даних. Якщо є помилки — знаходимо відповідні sql-файли, виправляємо їх та імпортуємо вручну (напр., через phpmyadmin) або очищуємо таблиці і перезапускаємо веб-встановлювач. Також повідомляйте про sql-помилки Сергія Дубика, serhijdubykЖАБКАgmail.com. |
|||
та перезапустити веб-встановлювач. |
|||
Якщо була така помилка, то скоріш всього sql-дані вставилися в БД частково і веб-встановлювач може видавати помилку на кшталт |
|||
Для очищення таблиць (ОБЕРЕЖНО - БУДУТЬ ВИТЕРТИ УСІ ДАНІ з БД koha_ukr_unimarc) та перезапуску веб-встановлювача можна використати наступний bash-скрипт delete_all_data_in_db_koha_ukr_unimarc.sh: |
|||
DBIx::Class::Storage::DBI::_dbh_execute(): Duplicate entry '380-55' for key 'PRIMARY' at /usr/share/koha/lib/Koha/SearchField.pm line 38 |
|||
#!/bin/bash |
|||
У такому випадку необхідно |
|||
# MySQL сервер та інформація про підключення |
|||
INSTANCE="ukr_unimarc" |
|||
MYSQL_USER="koha_"$INSTANCE |
|||
MYSQL_PASSWORD="ваш_пароль" |
|||
MYSQL_HOST="localhost" # або інший хост, на якому запущено MySQL |
|||
MYSQL_DB="koha_"$INSTANCE |
|||
# Вибір всіх таблиць в базі даних |
|||
TABLES=$(mysql -u"$MYSQL_USER" -p"$MYSQL_PASSWORD" -h "$MYSQL_HOST" "$MYSQL_DB" -se "SHOW TABLES") |
|||
# Вимкнення перевірки зовнішніх ключів |
|||
mysql -u"$MYSQL_USER" -p"$MYSQL_PASSWORD" -h "$MYSQL_HOST" "$MYSQL_DB" -e "SET FOREIGN_KEY_CHECKS = 0;" |
|||
# Цикл для виконання DELETE для кожної таблиці |
|||
for table in $TABLES |
|||
do |
|||
mysql -u"$MYSQL_USER" -p"$MYSQL_PASSWORD" -h "$MYSQL_HOST" "$MYSQL_DB" -e "DELETE FROM $table;" |
|||
done |
|||
# Включення перевірки зовнішніх ключів |
|||
mysql -u"$MYSQL_USER" -p"$MYSQL_PASSWORD" -h "$MYSQL_HOST" "$MYSQL_DB" -e "SET FOREIGN_KEY_CHECKS = 1;" |
|||
echo "Всі дані з бази даних $MYSQL_DB були очищені." |
|||
sudo /etc/init.d/koha-common restart |
|||
sudo /etc/init.d/apache2 restart |
|||
sudo /etc/init.d/mariadb restart |
|||
sudo /etc/init.d/memcached restart |
|||
koha-plack --restart $INSTANCE |
|||
Інколи, для кращого очищення, цей скрипт потрібно запускати повторно. |
|||
1 варіант) |
|||
==== Помилка „Gateway Timeout“ ==== |
|||
Очистити БД і наново запустити веб-встановлювач: |
|||
Рідко, скоріш на повільних серверах, на 3-му кроці може з’являтися помилка „Gateway Timeout“. Спробуйте в налаштуваннях Apache (/etc/apache2/apache2.conf) виставити більший час (Timeout 1200), виконати |
|||
mysql -u root -p |
|||
DROP DATABASE koha_ukr_unimarc; |
|||
DROP USER 'koha_ukr_unimarc'@'localhost'; |
|||
quit |
|||
sudo /etc/init.d/mysql restart |
|||
sudo /etc/init.d/apache2 restart |
sudo /etc/init.d/apache2 restart |
||
sudo /etc/init.d/memcached restart |
|||
sudo koha-zebra --stop ukr_unimarc |
|||
sudo koha-disable ukr_unimarc |
|||
sudo koha-remove ukr_unimarc |
|||
sudo userdel ukr_unimarc-koha |
|||
sudo groupdel ukr_unimarc-koha |
|||
та перезапустити веб-встановлювач (й попередньо очистити таблиці). |
|||
sudo koha-create --create-db --configfile /etc/koha/koha-ukr-unimarc-site.conf ukr_unimarc |
|||
==== Адаптаційний етап ==== |
|||
2 варіант) |
|||
=====Створення бібліотеки/підрозділу===== |
|||
Створюємо свій підрозділ, напр. |
|||
Простіший варіант drop-ання усіх таблиць (згадується тут https://www.cyberciti.biz/faq/how-do-i-empty-mysql-database/) а не цілої БД. Тоді не потрібно перевстановлювати екземпляр Koha. |
|||
Код бібліотеки/підрозділу: AB |
|||
Через phpmyadmin виділити усі таблиці у БД koha_ukr_unimarc, та вибрати „Знищити“ їх (знімаємо галочуку „Enable foreign key checks“). |
|||
Найменування: Абонемент |
|||
=====Створення категорії користувачів===== |
|||
Перед кроками веб-встановлювача перезапускаємо |
|||
Якщо у sql-даних були вибрані типові категорії користувачів, то цей крок Коха пропустить. |
|||
sudo /etc/init.d/memcached restart |
|||
===== Створення адміністратора Коха===== |
|||
Вводимо дані адміністратора Коха - прізвище, ім’я, номер читацького квитка, бібліотека / підрозділ, категорію користувача, логін, пароль. |
|||
===== Створення нового типу одиниць ===== |
|||
оскільки може бути помиока |
|||
Якщо у sql-даних були вибрані приклади типів одиниць, то цей крок Коха пропустить. |
|||
DBIx::Class::Storage::DBI::catch {...} (): DBI Connection failed: Access denied for user 'koha_ukr_unimarc'@'localhost' (using password: YES) at /usr/share/perl5/DBIx/Class/Storage/DBI.pm line 1520. at /usr/share/koha/lib/Koha/Database.pm line 100 |
|||
(створюється новий пароль для koha_ukr_unimarc і веб-встановлювач може видавати помилку) |
|||
===== Створення нового правила обігу ===== |
|||
Далі знову проходимо кроки веб-встановлювача. |
|||
Наприклад, вибираємо |
|||
Підрозділ бібліотеки: Абонемент |
|||
Категорія користувача: Студент |
|||
Тип одиниці: BOOK |
|||
Поточна дозволена кількість видач: 50 |
|||
Термін випозичання: 14 |
|||
Одиниці: дні |
|||
Продовження (дозволена кількість): 1 |
|||
=====Встановлення завершено!===== |
|||
Вітаємо, Ви закінчили і готові до використання Коха |
|||
== Підтримка кирилиці рушієм пошуку Zebra == |
== Підтримка кирилиці рушієм пошуку Zebra == |
||
Рядок 652: | Рядок 647: | ||
* https://wiki.koha-community.org/wiki/Performance |
* https://wiki.koha-community.org/wiki/Performance |
||
* https://wiki.koha-community.org/wiki/Benchmark_for_16.11 |
* https://wiki.koha-community.org/wiki/Benchmark_for_16.11 |
||
== Створення sitemap == |
|||
koha-sitemap --enable ukr_unimarc |
|||
koha-sitemap --generate ukr_unimarc |
|||
== E-mail == |
== E-mail == |
||
Рядок 658: | Рядок 657: | ||
sudo koha-email-enable ukr_unimarc |
sudo koha-email-enable ukr_unimarc |
||
== Вимкнення оновлення Koha == |
|||
Для більш контрольованого оновлення пакунків Коха можна тимчасово виключити оновлення у /etc/apt/sources.list.d/koha.list |
|||
#deb [signed-by=/usr/share/keyrings/koha-keyring.gpg] http://debian.koha-community.org/koha 23.05 main |
|||
Це дозволить легко оновлювати інші пакунки Debian |
|||
= Виправлення проблем = |
= Виправлення проблем = |
||
Рядок 690: | Рядок 695: | ||
Оновлення проходить легко для варіанту [[Встановлення Koha з репозитарію на ОС Debian|встановлення Koha з пакунків Debian]]. |
Оновлення проходить легко для варіанту [[Встановлення Koha з репозитарію на ОС Debian|встановлення Koha з пакунків Debian]]. |
||
Більш стабільними є версії Коха, що пройшли декілька коригувальних оновлень. |
|||
Можна оновлювати Коху до версії з певної стабільної гілки. Напр., якщо потрібно оновити Коха до найновішої коригувальної версії у гілці 23.05, то у файлі /etc/apt/sources.list.d/koha.list |
|||
має бути наступне |
|||
deb [signed-by=/usr/share/keyrings/koha-keyring.gpg] http://debian.koha-community.org/koha 23.05 main |
|||
sudo apt-get update |
sudo apt-get update |
||
Рядок 697: | Рядок 709: | ||
Деколи необхідно оновити ключ debian-сховища Koha. |
Деколи необхідно оновити ключ debian-сховища Koha. |
||
wget - |
wget -qO - https://debian.koha-community.org/koha/gpg.asc | gpg --dearmor -o /usr/share/keyrings/koha-keyring.gpg |
||
Для більшого контролю над наступними оновленнями Коха можна закоментувати рядок у /etc/apt/sources.list.d/koha.list (і розкоментовувати чи змінювати при ручному оновленні АБІС Koha). |
|||
== Встановлення/оновлення допоміжних perl-модулів == |
== Встановлення/оновлення допоміжних perl-модулів == |
||
Рядок 713: | Рядок 727: | ||
sudo apt-get install знайдений_пакунок |
sudo apt-get install знайдений_пакунок |
||
Напр. |
|||
sudo apt-get install libhttp-tiny-perl |
|||
=== Пакунки з CPAN === |
=== Пакунки з CPAN === |
||
Рядок 738: | Рядок 755: | ||
Вилучення пакунка „koha-common“ не приводить до автоматичного вилучення екземплярів АБІС Koha. '''Попередньо''' необхідно зупинити та вилучити усі екземпляри АБІС Koha командами |
Вилучення пакунка „koha-common“ не приводить до автоматичного вилучення екземплярів АБІС Koha. '''Попередньо''' необхідно зупинити та вилучити усі екземпляри АБІС Koha командами |
||
sudo /etc/init.d/ |
sudo /etc/init.d/mariadb restart |
||
sudo /etc/init.d/apache2 restart |
sudo /etc/init.d/apache2 restart |
||
sudo koha-zebra --stop ukr_unimarc |
sudo koha-zebra --stop ukr_unimarc |
||
Рядок 745: | Рядок 762: | ||
sudo koha-disable ukr_unimarc |
sudo koha-disable ukr_unimarc |
||
sudo koha-remove ukr_unimarc |
sudo koha-remove ukr_unimarc |
||
sudo userdel ukr_unimarc-koha |
sudo /sbin/userdel ukr_unimarc-koha |
||
sudo groupdel ukr_unimarc-koha |
sudo /sbin/groupdel ukr_unimarc-koha |
||
sudo /etc/init.d/memcached restart |
sudo /etc/init.d/memcached restart |
||
Рядок 761: | Рядок 778: | ||
Перевірте також теки: |
Перевірте також теки: |
||
/var/spool/koha |
/var/spool/koha |
||
/var/log/koha |
|||
/var/lib/koha |
/var/lib/koha |
||
/var/cache/koha |
|||
/usr/share/koha |
/usr/share/koha |
||
/etc/koha |
/etc/koha |
||
Можна очистити вміст цих тек щодо |
Можна очистити вміст цих тек щодо екземпляру ukr_unimarc |
||
rm -rf /var/spool/koha/ukr_unimarc |
rm -rf /var/spool/koha/ukr_unimarc |
||
rm -rf /var/ |
rm -rf /var/log/koha/ukr_unimarc |
||
rm -rf /var/lib/koha/ukr_unimarc |
|||
rm -rf /var/cache/koha/ukr_unimarc |
|||
У випадку якщо це був останній екземпляр та Вам не потрібна тека /usr/share/koha, то вилучайте й повністю теку /usr/share/koha |
|||
rm -rf /usr/share/koha |
rm -rf /usr/share/koha |
||
Примітка: Теку /usr/share/koha мала вилучити команда „apt-get purge koha-common“, однак там могли залишитися файли перекладів чи інші ваші зміни чи долучені файли. |
|||
У теці /etc/koha команда „apt-get purge koha-common“ також вилучила більшість файлів. Залишилася тека /etc/koha/sites/ukr_unimarc, її вилучаємо |
|||
rm -rf /etc/koha/sites/ukr_unimarc |
|||
Також там могли зберегтися конфіг налаштування екземпляра (/etc/koha/koha-ukr-unimarc-site.conf) та інші ваші зміни. Якщо нічого з цього не потрібно, то вилучаємо теку /etc/koha/ |
|||
rm -rf /etc/koha |
|||
Вилучення налаштувань для веб-сервера Apache2 |
|||
rm /etc/apache2/sites-enabled/ukr_unimarc.conf |
|||
rm /etc/apache2/sites-available/ukr_unimarc.conf |
|||
Якщо після видалення планується перевстановлення Коха, то ще потрібно |
|||
sudo /etc/init.d/memcached restart |
|||
= Налаштування = |
= Налаштування = |
Поточна версія на 22:17, 28 липня 2024
Розглядається встановлення АБІС Koha версії 21.05.X-23.11.X з репозитарію debian.koha-community.org.
На даний час це найбільш протестований і розповсюджений варіант.
Окрім цього ще є варіант встановлення АБІС Koha з джерельних кодів, що є дещо більш гнучким щодо налаштування, але і складнішим.
Див. також
- Koha_on_Debian на Koha Wiki
- Koha & Debian на Koha Wiki
- Category:Installation на Koha Wiki
- Koha on ubuntu - packages на Koha Wiki
Встановлення ОС Debian GNU/Linux 11 Bullseye
Див. також:
- http://download.openlib.org.ua/ustanovka-debian-11/
- https://infoit.com.ua/linux/kak-ustanovit-debian-11-bullseye-shag-za-shagom/
- Встановлення ОС Debian Linux.
Перевірка поточної версії Debian:
lsb_release -d
Щодо сумісності Коха з іншими версіями ОС див.
- Системні вимоги та рекомендації (англ.)
Підключення гілок non-free та contrib для пакунків Дебіен
Перевіряємо у /etc/apt/sources.list чи підключені гілки non-free та contrib
sudo mc -e /etc/apt/sources.list
deb http://deb.debian.org/debian/ bullseye main non-free contrib deb-src http://deb.debian.org/debian/ bullseye main non-free contrib deb http://security.debian.org/debian-security/ bullseye-security main deb-src http://security.debian.org/debian-security/ bullseye-security main deb http://deb.debian.org/debian/ bullseye-updates main contrib non-free deb-src http://deb.debian.org/debian/ bullseye-updates main contrib non-free deb http://deb.debian.org/debian bullseye-backports main contrib non-free deb-src http://deb.debian.org/debian bullseye-backports main sudo apt-get update sudo apt-get upgrade
Встановлення ОС Debian GNU/Linux 12 bookworm
Див. також:
- https://d-i.debian.org/manual/uk.amd64/index.html Debian GNU/Linux гайд інсталяції
Перевірка поточної версії Debian:
lsb_release -d
Щодо сумісності Коха з іншими версіями ОС див.
- Системні вимоги та рекомендації (англ.)
Підключення гілок non-free та contrib для пакунків Дебіен
Перевіряємо у /etc/apt/sources.list чи підключені гілки non-free та contrib
sudo mc -e /etc/apt/sources.list
deb http://deb.debian.org/debian/ bookworm contrib main non-free non-free-firmware deb-src http://deb.debian.org/debian/ bookworm contrib main non-free non-free-firmware deb http://deb.debian.org/debian/ bookworm-updates contrib main non-free non-free-firmware deb-src http://deb.debian.org/debian/ bookworm-updates contrib main non-free non-free-firmware deb http://deb.debian.org/debian/ bookworm-proposed-updates contrib main non-free non-free-firmware deb-src http://deb.debian.org/debian/ bookworm-proposed-updates contrib main non-free non-free-firmware deb http://deb.debian.org/debian/ bookworm-backports contrib main non-free non-free-firmware deb-src http://deb.debian.org/debian/ bookworm-backports contrib main non-free non-free-firmware deb http://deb.debian.org/debian-security/ bookworm-security contrib main non-free non-free-firmware deb-src http://deb.debian.org/debian-security/ bookworm-security contrib main non-free non-free-firmware sudo apt-get update sudo apt-get upgrade
Попередні налаштування
Локаль з UTF-8
Перевірка локалі:
sudo locale
у виводі повинно бути магічне „UTF-8“ (en.UTF-8 тощо), наприклад для України
LANG=uk_UA.UTF-8 LANGUAGE= LC_CTYPE="uk_UA.UTF-8" LC_NUMERIC="uk_UA.UTF-8" LC_TIME="uk_UA.UTF-8" LC_COLLATE="uk_UA.UTF-8" LC_MONETARY="uk_UA.UTF-8" LC_MESSAGES="uk_UA.UTF-8" LC_PAPER="uk_UA.UTF-8" LC_NAME="uk_UA.UTF-8" LC_ADDRESS="uk_UA.UTF-8" LC_TELEPHONE="uk_UA.UTF-8" LC_MEASUREMENT="uk_UA.UTF-8" LC_IDENTIFICATION="uk_UA.UTF-8"
Якщо UTF-8 не згадується, то встановлюємо локаль
apt install locales locales-all sudo /usr/sbin/update-locale LANG=uk_UA.UTF-8 LANGUAGE="uk_UA:uk"
Підключення репозитарію Koha
В репозитарії debian.koha-community.org доступні стабільна та розробницька версії.
Спочатку додаємо ключ gpg.asc (koha-keyring.gpg) до довірених ключів APT:
Встановити gpg
apt-get install gnupg2
Звантажити та встановити ключ
Новіший спосіб
wget -qO - https://debian.koha-community.org/koha/gpg.asc | gpg --dearmor -o /usr/share/keyrings/koha-keyring.gpg
або старіший спосіб
wget -q -O- https://debian.koha-community.org/koha/gpg.asc | sudo apt-key add -
Швидко підключити репозитарій стабільну версію Koha (рекомендується) можна командою
echo 'deb [signed-by=/usr/share/keyrings/koha-keyring.gpg] http://debian.koha-community.org/koha stable main' | sudo tee /etc/apt/sources.list.d/koha.list
Також можна вибрати репозитарій з певною версією (див. тут http://debian.koha-community.org/koha/dists/), напр
echo 'deb [signed-by=/usr/share/keyrings/koha-keyring.gpg] http://debian.koha-community.org/koha 21.05 main' | sudo tee /etc/apt/sources.list.d/koha.list echo 'deb [signed-by=/usr/share/keyrings/koha-keyring.gpg] http://debian.koha-community.org/koha 21.11 main' | sudo tee /etc/apt/sources.list.d/koha.list echo 'deb [signed-by=/usr/share/keyrings/koha-keyring.gpg] http://debian.koha-community.org/koha 22.05 main' | sudo tee /etc/apt/sources.list.d/koha.list echo 'deb [signed-by=/usr/share/keyrings/koha-keyring.gpg] http://debian.koha-community.org/koha 22.11 main' | sudo tee /etc/apt/sources.list.d/koha.list echo 'deb [signed-by=/usr/share/keyrings/koha-keyring.gpg] http://debian.koha-community.org/koha 23.05 main' | sudo tee /etc/apt/sources.list.d/koha.list echo 'deb [signed-by=/usr/share/keyrings/koha-keyring.gpg] http://debian.koha-community.org/koha 23.11 main' | sudo tee /etc/apt/sources.list.d/koha.list
Оновлюємо список доступних для встановлення пакунків
sudo apt-get update
Встановлення Koha
Встановлення пакунків Koha
sudo apt-get install koha-common koha-deps koha-perldeps koha-l10n koha-elasticsearch
Може бути помилка з конфігурацією пакунка libapache2-mpm-itk, див. рішення тут https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=734865 та https://wiki.koha-community.org/wiki/Koha_on_Debian#Aside:_a_common_problem_on_Ubuntu_happens_here
Якщо далі щось піде не так, читаємо стандартну інструкцію про налаштування
less /usr/share/doc/koha-common/README.Debian
(у нових версіях можуть бути зміни)
Встановлення БД MySQL та допоміжних пакунків
sudo apt-get install mariadb-server
sudo mysql_secure_installation
За винятком першого питання, на всі питання можна відповісти Так (“Y”). Необхідно встановити root пароль (надалі „ПарольАдмінаMySQL“)!
sudo apt-get install memcached libmemcached-tools
sudo apt install aptitude
sudo apt install php-twig
sudo apt install phpmyadmin php libapache2-mod-php
- для „phpmyadmin“ вибрати (пробілом позначити зірочкою) лише „apache2“
- configure database for phpmyadmin with dbconfig-common? — так та встановити пароль застосунку
Типово phpmyadmin доступний за адресою http://localhost/phpmyadmin
Щодо phpmyadmin також див. https://think.unblog.ch/en/phpmyadmin-error-php-7-2-5-is-required/
Якщо потрібен доступ до phpmyadmin на іншому порті, то у файлі /etc/phpmyadmin/phpmyadmin.service змінити
... <port>8888</port> ...
та додати цей порт у файл /etc/apache2/ports.conf
Listen 8888
Перезапуск Apache
sudo /etc/init.d/apache2 restart
По умовчанню вхід через phphmyadmin для root закрито. За потреби можна створити іншого користувача
mysql -u root -p CREATE USER 'sysadmin'@'localhost' IDENTIFIED BY 'парольдляsysadmin';
та надати йому привілеї на усі БД:
GRANT ALL PRIVILEGES ON *.* TO 'sysadmin'@'localhost' WITH GRANT OPTION; exit sudo /etc/init.d/mysql restart
Пакунки з CPAN
Пакунки, яких немає у репозитаріях Debian чи Koha, встановлюємо з CPAN.
Станом на 12.2023 необхідні модулі
- HTTPD::Bench::ApacheBench (0.73), перевірка в Debian: [3]).
- Text::CSV::Unicode (0.40), перевірка в Debian: [4]).
- Selenium::Remote::Driver (1.27), перевірка в Debian: [5]).
- Locale::XGettext::TT2
Встановлюємо командами (при цьому, якщо це перше використання CPAN, підтверджуємо автоматичне налаштування та підключення до Інтернет) :
sudo apt-get install make
sudo perl -MCPAN -e 'install HTTPD::Bench::ApacheBench'
— встановився, вивід —
ADIRAJ/ApacheBench-0.73.tar.gz make install -- OK
sudo apt-get install libgdbm-dev apache2-dev libdatetimex-easy-perl
sudo perl -MCPAN -e 'DBIx::Class::Schema::PopulateMore'
sudo perl -MCPAN -e 'install Test::Differences'
sudo perl -MCPAN -e 'install Text::CSV::Unicode'
— встановився, вивід —
RMBARKER/Text-CSV-Unicode-0.400.tar.gz ./Build install -- OK
sudo perl -MCPAN -e 'install Selenium::Remote::Driver'
— встановився, вивід —
TEODESIAN/Selenium-Remote-Driver-1.32.tar.gz /usr/bin/make install -- OK
sudo perl -MCPAN -e 'install Locale::XGettext::TT2'
Налаштування Apache та сценарій „koha-post-install-setup“
1) Виконуємо сценарій
sudo koha-post-install-setup
(він задіює модулі Rewrite та Suexec для Apache)
2) Додатково задіюємо модулі Deflate, Cgi, headers, proxy_http
sudo a2enmod deflate sudo a2enmod rewrite sudo a2enmod cgi sudo a2enmod headers proxy_http
3) Редагуємо /etc/apache2/conf-available/charset.conf
AddCharset UTF-8 .utf8 AddDefaultCharset UTF-8
та задіюємо його
sudo a2enconf charset
4) Перезапуск Apache
sudo /etc/init.d/apache2 restart
Створення екземпляра АБІС Koha
Варіанти налаштування АБІС Koha з доменами та портами
Варіант з портами 8080 та 8888 (тестовий)
Цей варіант зручно використовувати на початковому етапі, коли домен (порт 80) зайнято під інший сайт/сервіс.
koha-ukr-unimarc-site.conf
Створюємо файл
sudo mc -e /etc/koha/koha-ukr-unimarc-site.conf
наступного змісту
DOMAIN="localhost" # Change this to be your domain. Any instance will be a subdomain of this string. OPACPORT="8080" # TCP listening port for the users' interface (if you skip this, the apache default of 80 will be used) OPACPREFIX="" # For users' interface URL: Prefix to be added to the instance name. OPACSUFFIX="" # For users' interface URL: Suffix to be added to the instance name. INTRAPORT="8888" # TCP listening port for the administration interface INTRAPREFIX="" # For administration interface URL: Prefix to be added to the instance name. INTRASUFFIX="" # For administration interface URL: Suffix to be added to the instance name. ZEBRA_MARC_FORMAT="unimarc" # Specifies format of MARC records to be indexed by Zebra. Possible values are 'marc21', 'normarc' and 'unimarc'. ZEBRA_LANGUAGE="uk" # Primary language for Zebra indexing. Possible values are 'en', 'fr' and 'nb'. DEFAULTSQL="" # a value is generally not needed. BIBLIOS_INDEXING_MODE="dom" # Set the indexing mode for bibliographic records. Valid values are dom (default) and grs1. AUTHORITIES_INDEXING_MODE="dom" # Set the indexing mode for authority records. Valid values are dom (default) and grs1. USE_MEMCACHED="yes" # Set the instance to make use of memcache. MEMCACHED_SERVERS="127.0.0.1:11211" # Set a comma-separated list of host:port memcached servers. MEMCACHED_PREFIX="koha_" # Set the desired prefix for the instance memcached namespace. ENABLE_SRU="yes" # Enable the Z39.50/SRU server (default: disabled). SRU_SERVER_PORT="7090" # Specifiy a TCP port number for the Z39.50/SRU server to listen on. (default: 7090).
ports.conf
Додаємо
Listen 8080 Listen 8888
у файл /etc/apache2/ports.conf
Також перезапускаємо Apache
sudo /etc/init.d/apache2 restart
Варіант з портами 80 та 8080
Цей варіант зручно використовувати, коли під АБІС Koha відведено окремий домен/сервер.
koha-ukr-unimarc-site.conf
/змінюється/ Створюємо файл
sudo mc -e /etc/koha/koha-ukr-unimarc-site.conf
наступного змісту
DOMAIN="localhost" # Change this to be your domain. Any instance will be a subdomain of this string. OPACPORT="80" # TCP listening port for the users' interface (if you skip this, the apache default of 80 will be used) OPACPREFIX="" # For users' interface URL: Prefix to be added to the instance name. OPACSUFFIX="" # For users' interface URL: Suffix to be added to the instance name. INTRAPORT="8080" # TCP listening port for the administration interface INTRAPREFIX="" # For administration interface URL: Prefix to be added to the instance name. INTRASUFFIX="" # For administration interface URL: Suffix to be added to the instance name. ZEBRA_MARC_FORMAT="unimarc" # Specifies format of MARC records to be indexed by Zebra. Possible values are 'marc21', 'normarc' and 'unimarc'. ZEBRA_LANGUAGE="uk" # Primary language for Zebra indexing. Possible values are 'en', 'fr' and 'nb'. DEFAULTSQL="" # a value is generally not needed. BIBLIOS_INDEXING_MODE="dom" # Set the indexing mode for bibliographic records. Valid values are dom (default) and grs1. AUTHORITIES_INDEXING_MODE="dom" # Set the indexing mode for authority records. Valid values are dom (default) and grs1. USE_MEMCACHED="yes" # Set the instance to make use of memcache. MEMCACHED_SERVERS="127.0.0.1:11211" # Set a comma-separated list of host:port memcached servers. MEMCACHED_PREFIX="koha_" # Set the desired prefix for the instance memcached namespace. ENABLE_SRU="yes" # Enable the Z39.50/SRU server (default: disabled). SRU_SERVER_PORT="7090" # Specifiy a TCP port number for the Z39.50/SRU server to listen on. (default: 7090).
ports.conf
Додаємо
Listen 8080 Listen 8008
у файл /etc/apache2/ports.conf
Порт 8008 додано для того щоб переспрямувати типовий віртуальний хост сервера Apache з порта 80 на порт 8008. Для цього редагуємо типовий файл /etc/apache2/sites-enabled/000-default.conf і змінюємо наступний рядок
<VirtualHost *:8008>
Також перезапускаємо Apache
sudo /etc/init.d/apache2 restart
Варіант з доменами
Цей варіант для випадку, коли є можливість попередньо налаштувати для АБІС Koha 2 домени на кшталт
opac.librarydomain.ua staff.librarydomain.ua
Щодо налаштування див. тут https://wiki.koha-community.org/wiki/How_to_set_up_a_domain_name_for_Koha
Команда „koha-create“
Синтаксис команди для створення екземплярів АБІС Koha — на вікі та більш актуальний у коді на Git, а також через вбудовану довідку „koha-create --help“:
koha-create [--create-db|--request-db|--populate-db|--use-db] \ [--marcflavor marc21(default)|normarc|unimarc] \ [--zebralang cs|el|en(default)|es|fr|nb|ru|uk] \ [--elasticsearch-server localhost:9200(default)] \ [--auth-idx dom(default)|grs1] \ [--biblio-idx dom (default)|grs1] \ [--use-memcached] \ [--memcached-servers 127.0.0.1:11211,host2:port2,...] \ [--memcached-prefix KOHA|koha_|...] \ [--enable-sru] \ [--sru-port 7090(default)|9998] \ [--defaultsql /path/to/some.sql] \ [--configfile /path/to/config] \ [--passwdfile /path/to/passwd] \ [--dbhost host] \ [--database dbname] \ [--adminuser admin_user_id_in_db] \ [--template-cache-dir /var/cache/koha/<instance>/templates(default)] \ [--timezone time/zone (America/Argentina)] \ [--upload-path /var/lib/koha/<instancename>/uploads(default)|...] \ [--tmp-path dir /var/lib/koha/<instance>/tmp(default)] \ [--letsencrypt] \ [--smtp-host host] \ [--smtp-port NN] \ [--smtp-timeout NN] \ [--smtp-ssl-mode mode [disabled(default)|ssl|starttls] \ [--smtp-user-name user] \ [--smtp-password pass] \ [--smtp-debug] \ [--mb-host localhost)default)] \ [--mb-port NN default: 61613] \ [--mb-user guest(default)] \ [--mb-pass guest(default)] \ [--mb-vhost koha_<instance>(default)] \ [--keep-cookie NAME] \ [--help,-h] \ instancename
Зауваження: довжина екземпляра Коха („instancename“) наразі обмежена 11 символами (див. [6], [7]). Екземпляр з назвою більшої довжини буде непрацездатним.
Створення екземпляра АБІС Koha (українська, Unimarc)
sudo koha-create --create-db --configfile /etc/koha/koha-ukr-unimarc-site.conf ukr_unimarc
Вивід:
Koha instance is empty, no staff user created. Starting Koha worker daemon for ukr_unimarc (default):. Starting Koha indexing daemon for ukr_unimarc:.
Веб-встановлювач
Актуальні українські sql-файли
Частина локалізованих SQL-таблиць українською була долучена латкою https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=18537 у 2017 р. для версії Koha 17.05.05 та вище.
Оновлення для українських SQL-таблиць доступні у DrobBox Сергія Дубика за адресою:
'https://www.dropbox.com/sh/nybt54x8yhh7frq/AACfsG32sJnBgNh1CdivXDjYa?dl=0'
Тека SQL_Koha_23_05_0X_adds/uk-UA_additional/uk-UA містить оновлення, які необхідно скопіювати у теку uk-UA у /usr/share/koha/intranet/cgi-bin/installer/data/mysql
Виконайте наступну команду
sudo find /usr/share/koha/intranet/cgi-bin/installer/data/mysql/uk-UA -type d -exec chmod ugo+x {} \;
щоб надати привілеї теці /usr/share/koha/intranet/cgi-bin/installer/data/mysql/uk-UA. Інакше інсталятор її не побачить.
Утворення локалізованих шаблонів
Спочатку дивимося перелік доступних мов
sudo koha-translate --list --available
Встановлюємо переклади для української
sudo koha-translate --install uk-UA
Ця команда також згенерує деякі перекладені дані для Коха (у форматі yaml-файлів) у теці
/usr/share/koha/intranet/cgi-bin/installer/data/mysql/uk-UA
разом з раніше скопійованими SQL-файлами. Примітка: sudo koha-translate --update uk-UA також генерує yaml-файли (потрібно при встановленні екземплярів Коха).
Також можете встановити деякі інші мови інтерфейсу
sudo koha-translate --install pl-PL sudo koha-translate --install de-DE sudo koha-translate --install fr-FR sudo koha-translate --install it-IT sudo koha-translate --install cs-CZ sudo koha-translate --install bg-Cyrl …
Кроки веб-встановлювача
Типовий логін для екземляра напр. „ukr_unimarc“ буде:
koha_ukr_unimarc
Пароль та логін можна переглянути за допомогою:
sudo koha-passwd ukr_unimarc
або логін і пароль зберігаються у файлі /etc/koha/sites/ukr_unimarc/koha-conf.xml, у розділі config знаходимо користувача (user) та пароль (pass). Також побачити логін та пароль можна через команди
sudo xmlstarlet sel -t -v 'yazgfs/config/user' /etc/koha/sites/ukr_unimarc/koha-conf.xml sudo xmlstarlet sel -t -v 'yazgfs/config/pass' /etc/koha/sites/ukr_unimarc/koha-conf.xml
У веб-оглядачі переходимо за адресою http://localhost:8080/?language=uk-UA (чи http://localhost:8888/?language=uk-UA). Бачимо запит на авторизацію від веб-встановлювача.
Крок 1: мова uk-UA, перевірка залежностей
Крок 2: налаштування бази даних, перевірка з’єднання, існування БД та привілеїв
Крок 3: створення таблиць, вибір МАРК-стандарту Unimarc (УкрМарк), вибір типових даних (послідовно вибираємо усі¹² дані, імпорт 1-10 хв.).
¹Які типові дані можна вимкнути:
- Приклади користувачів
- Приклади бібліотек/підрозділів
²Також варто вимкнути типову структуру unimarc_sample_fastadd_framework (вона конфліктує з unimarc_sample_fastadd_framework_FA_UKR) у блоці „Факультативне“.
Процес імпорту даних
Для імпорту даних Koha використовуватиме дані з теки /usr/share/koha/intranet/cgi-bin/installer/data/mysql/uk-UA. У цій теці будуть як дані, згенеровані самою Коха (у форматі yml-файлів) так і дані sql-скриптів (з набору Сергія Дубика).
На 3 кроці слідкуємо за помилками при імпорті типових даних. Якщо є помилки — знаходимо відповідні sql-файли, виправляємо їх та імпортуємо вручну (напр., через phpmyadmin) або очищуємо таблиці і перезапускаємо веб-встановлювач. Також повідомляйте про sql-помилки Сергія Дубика, serhijdubykЖАБКАgmail.com.
Для очищення таблиць (ОБЕРЕЖНО - БУДУТЬ ВИТЕРТИ УСІ ДАНІ з БД koha_ukr_unimarc) та перезапуску веб-встановлювача можна використати наступний bash-скрипт delete_all_data_in_db_koha_ukr_unimarc.sh:
#!/bin/bash # MySQL сервер та інформація про підключення INSTANCE="ukr_unimarc" MYSQL_USER="koha_"$INSTANCE MYSQL_PASSWORD="ваш_пароль" MYSQL_HOST="localhost" # або інший хост, на якому запущено MySQL MYSQL_DB="koha_"$INSTANCE # Вибір всіх таблиць в базі даних TABLES=$(mysql -u"$MYSQL_USER" -p"$MYSQL_PASSWORD" -h "$MYSQL_HOST" "$MYSQL_DB" -se "SHOW TABLES") # Вимкнення перевірки зовнішніх ключів mysql -u"$MYSQL_USER" -p"$MYSQL_PASSWORD" -h "$MYSQL_HOST" "$MYSQL_DB" -e "SET FOREIGN_KEY_CHECKS = 0;" # Цикл для виконання DELETE для кожної таблиці for table in $TABLES do mysql -u"$MYSQL_USER" -p"$MYSQL_PASSWORD" -h "$MYSQL_HOST" "$MYSQL_DB" -e "DELETE FROM $table;" done # Включення перевірки зовнішніх ключів mysql -u"$MYSQL_USER" -p"$MYSQL_PASSWORD" -h "$MYSQL_HOST" "$MYSQL_DB" -e "SET FOREIGN_KEY_CHECKS = 1;" echo "Всі дані з бази даних $MYSQL_DB були очищені." sudo /etc/init.d/koha-common restart sudo /etc/init.d/apache2 restart sudo /etc/init.d/mariadb restart sudo /etc/init.d/memcached restart koha-plack --restart $INSTANCE
Інколи, для кращого очищення, цей скрипт потрібно запускати повторно.
Помилка „Gateway Timeout“
Рідко, скоріш на повільних серверах, на 3-му кроці може з’являтися помилка „Gateway Timeout“. Спробуйте в налаштуваннях Apache (/etc/apache2/apache2.conf) виставити більший час (Timeout 1200), виконати
sudo /etc/init.d/apache2 restart
та перезапустити веб-встановлювач (й попередньо очистити таблиці).
Адаптаційний етап
Створення бібліотеки/підрозділу
Створюємо свій підрозділ, напр.
Код бібліотеки/підрозділу: AB Найменування: Абонемент
Створення категорії користувачів
Якщо у sql-даних були вибрані типові категорії користувачів, то цей крок Коха пропустить.
Створення адміністратора Коха
Вводимо дані адміністратора Коха - прізвище, ім’я, номер читацького квитка, бібліотека / підрозділ, категорію користувача, логін, пароль.
Створення нового типу одиниць
Якщо у sql-даних були вибрані приклади типів одиниць, то цей крок Коха пропустить.
Створення нового правила обігу
Наприклад, вибираємо
Підрозділ бібліотеки: Абонемент Категорія користувача: Студент Тип одиниці: BOOK Поточна дозволена кількість видач: 50 Термін випозичання: 14 Одиниці: дні Продовження (дозволена кількість): 1
Встановлення завершено!
Вітаємо, Ви закінчили і готові до використання Коха
Підтримка кирилиці рушієм пошуку Zebra
Необхідно додати кириличні символи до файлу
/etc/koha/zebradb/etc/word-phrase-utf.chr
а саме виправити на наступне:
lowercase {0-9}{a-z}αβγδεζηθικλμνξοπρστυφχψωæäåąßćęłńóśøöüźżабвгдежзийклмнопрстуфхцчшщьыъэюяёєїґўі’ uppercase {0-9}{A-Z}ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩÆÄÅĄẞĆĘŁŃÓŚØÖÜŹŻАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЬЫЪЭЮЯЁЄЇҐЎІ’ space {\001-\040}!"#$%&'\()*+,-./:;<=>?@\[\\]^_`\{|}~{\x88-\x89}{\x98-\x9C}
Без цієї зміни пошук або не буде працювати або даватиме некоректні результати.
Також для коректного сортування кирилиці аналогічні зміни також потрібно внести і до файлу /etc/koha/zebradb/lang_defs/en/sort-string-utf.chr (наявність uk/sort-string-utf.chr наразі не дає бажаного результату).
При оновленнях пакунка „koha-common“ також потрібно вносити ці зміни.
Запуск служби Zebra
sudo koha-zebra --start ukr_unimarc
- koha-zebra — новий скрипт, згадка про нього є тут https://koha-community.org/koha-17-11-released/
Запуск індексації Zebra
sudo koha-rebuild-zebra -f -v ukr_unimarc
Включення Plack
koha-plack --enable ukr_unimarc; koha-plack --start ukr_unimarc
Щодо продуктивності див. також тут:
- https://wiki.koha-community.org/wiki/Performance
- https://wiki.koha-community.org/wiki/Benchmark_for_16.11
Створення sitemap
koha-sitemap --enable ukr_unimarc koha-sitemap --generate ukr_unimarc
By default, email is turned off. This is to let you get everything set up before you risk sending unwanted notices to people. To turn email on:
sudo koha-email-enable ukr_unimarc
Вимкнення оновлення Koha
Для більш контрольованого оновлення пакунків Коха можна тимчасово виключити оновлення у /etc/apt/sources.list.d/koha.list
#deb [signed-by=/usr/share/keyrings/koha-keyring.gpg] http://debian.koha-community.org/koha 23.05 main
Це дозволить легко оновлювати інші пакунки Debian
Виправлення проблем
Деколи стає відомо про проблему у поточній версії Koha. Зазвичай виправлення з’являється в наступній версії. Це у випадку, якщо про проблему повідомлено на баґгтрекар Koha і знайдено й прийнято її вирішення (латка) до виходу наступної версії. Тут згадуватимуться проблеми й їх вирішення для поточних версій Koha.
Див. також: Виправлення та вдосконалення для АБІС Koha, зроблені українською спільнотою АБІС Koha.
Оновлення Koha
Нова версія Koha виходить кожні шість місяців з набором нових функцій. Також кожен місяць виходять коригувальні оновлення.
Оновлення проходить легко для варіанту встановлення Koha з пакунків Debian.
Більш стабільними є версії Коха, що пройшли декілька коригувальних оновлень.
Можна оновлювати Коху до версії з певної стабільної гілки. Напр., якщо потрібно оновити Коха до найновішої коригувальної версії у гілці 23.05, то у файлі /etc/apt/sources.list.d/koha.list має бути наступне
deb [signed-by=/usr/share/keyrings/koha-keyring.gpg] http://debian.koha-community.org/koha 23.05 main
sudo apt-get update sudo apt-get upgrade sudo apt-get install koha-common
Деколи необхідно оновити ключ debian-сховища Koha.
wget -qO - https://debian.koha-community.org/koha/gpg.asc | gpg --dearmor -o /usr/share/keyrings/koha-keyring.gpg
Для більшого контролю над наступними оновленнями Коха можна закоментувати рядок у /etc/apt/sources.list.d/koha.list (і розкоментовувати чи змінювати при ручному оновленні АБІС Koha).
Встановлення/оновлення допоміжних perl-модулів
Після оновлення, перевіряємо в бібліотечному інтерфейсі сторінку „Домівка > Про АБІС Koha > Модулі Perl“.
Ви можете побачити відсутні модулі Perl, виділені різними кольорами,
Пакунки з репозитарію Debian
Деякі згадувані тут пакунки могли бути відсутні у репозиторії Debian на момент підготовки пакунки з Koha. Пробуємо знайти відсутні пакунки через пошук https://www.debian.org/distrib/packages#search_packages
Знайдені пакунки довстановлюємо
sudo apt-get install знайдений_пакунок
Напр.
sudo apt-get install libhttp-tiny-perl
Пакунки з CPAN
Perl-пакунки, наразі не пакетизовані й відсутні у репозитарії Debian, встановлюємо напряму з репозитарію perl-пакунків CPAN.
Наприклад, при оновлення до 16.11:
(perl-пакунок „Test::DBIx::Class“ також вимагав встановлення debian-пакунка „apache2-dev“)
sudo cpan install Test::DBIx::Class install Readonly::XS install HTTPD::Bench::ApacheBench
Оновлення локалізації
sudo koha-translate --update uk-UA
та, за потреби, інших мов (ru-RU, pl-PL, be-BY)
Однак, при оновленні пакунків Koha локалізація оновлюється автоматично для усіх вибраних мов.
Вилучення Koha
Вилучення пакунка „koha-common“ не приводить до автоматичного вилучення екземплярів АБІС Koha. Попередньо необхідно зупинити та вилучити усі екземпляри АБІС Koha командами
sudo /etc/init.d/mariadb restart sudo /etc/init.d/apache2 restart sudo koha-zebra --stop ukr_unimarc sudo koha-indexer --stop ukr_unimarc sudo koha-plack --stop ukr_unimarc sudo koha-disable ukr_unimarc sudo koha-remove ukr_unimarc sudo /sbin/userdel ukr_unimarc-koha sudo /sbin/groupdel ukr_unimarc-koha sudo /etc/init.d/memcached restart
Інколи виникає помилка userdel: user ukr_unimarc-koha is currently used by process 4793 /usr/sbin/deluser: `/usr/sbin/userdel ukr_unimarc-koha' returned error code 8. Див. https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=4880.
Перегляд переліку наявних екземплярів
sudo koha-list
Остаточне вилучення пакунків Koha
sudo apt-get purge koha-common koha-deps koha-perldeps koha-elasticsearch
Перевірте також теки:
/var/spool/koha /var/log/koha /var/lib/koha /var/cache/koha /usr/share/koha /etc/koha
Можна очистити вміст цих тек щодо екземпляру ukr_unimarc
rm -rf /var/spool/koha/ukr_unimarc rm -rf /var/log/koha/ukr_unimarc rm -rf /var/lib/koha/ukr_unimarc rm -rf /var/cache/koha/ukr_unimarc
У випадку якщо це був останній екземпляр та Вам не потрібна тека /usr/share/koha, то вилучайте й повністю теку /usr/share/koha
rm -rf /usr/share/koha
Примітка: Теку /usr/share/koha мала вилучити команда „apt-get purge koha-common“, однак там могли залишитися файли перекладів чи інші ваші зміни чи долучені файли.
У теці /etc/koha команда „apt-get purge koha-common“ також вилучила більшість файлів. Залишилася тека /etc/koha/sites/ukr_unimarc, її вилучаємо
rm -rf /etc/koha/sites/ukr_unimarc
Також там могли зберегтися конфіг налаштування екземпляра (/etc/koha/koha-ukr-unimarc-site.conf) та інші ваші зміни. Якщо нічого з цього не потрібно, то вилучаємо теку /etc/koha/
rm -rf /etc/koha
Вилучення налаштувань для веб-сервера Apache2
rm /etc/apache2/sites-enabled/ukr_unimarc.conf rm /etc/apache2/sites-available/ukr_unimarc.conf
Якщо після видалення планується перевстановлення Коха, то ще потрібно
sudo /etc/init.d/memcached restart
Налаштування
Щодо додаткових налаштувань та адаптацій див. тут: Налаштування Koha, встановленої з джерела.