Встановлення Koha з репозитарію на ОС Debian: відмінності між версіями
Dubyk (обговорення | внесок) |
Dubyk (обговорення | внесок) |
||
Рядок 318: | Рядок 318: | ||
Створення екземпляра АБІС Koha (українська, Unimarc) |
Створення екземпляра АБІС Koha (українська, Unimarc) |
||
sudo koha-create --create-db -- |
sudo koha-create --create-db --configfile /etc/koha/koha-ukr-unimarc-site.conf ukr_unimarc |
||
--auth-idx dom --biblio-idx dom \ |
|||
--configfile /etc/koha/koha-ukr-unimarc-site.conf \ |
|||
ukr_unimarc |
|||
Вивід: |
Вивід: |
Версія за 18:47, 30 листопада 2016
Розглядається встановлення АБІС Koha версії 16.05.05 з репозитарію debian.koha-community.org. Див. також
- Koha_on_Debian на Koha Wiki
- INSTALL.debian на Git
- Category:Installation на Koha Wiki
Цей варіант встановлення ще тестується, наразі більш апробованим та універсальним залишається встановлення з джерельних кодів.
Встановлення ОС Debian GNU/Linux 8 Jessie
Детальніше: [Встановлення ОС Debian Linux].
Попередні налаштування
Локаль з 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 не згадується, то встановлюємо локаль
sudo /usr/sbin/update-locale LANG=uk_UA.UTF-8 LANGUAGE="uk_UA:uk"
Підключення репозитарію Koha
В репозитарії debian.koha-community.org доступні стабільна та розробницька версії.
Підключаємо у файлі /etc/apt/sources.list стабільну версію (рекомендується)
deb http://debian.koha-community.org/koha stable main
(доступні й інші версії, див. тут http://debian.koha-community.org/koha/dists/)
Швидко підключити репозитарій Koha можна командою
echo 'deb http://debian.koha-community.org/koha stable main' | sudo tee /etc/apt/sources.list.d/koha.list
Також додаємо ключ gpg.asc до довірених ключів APT:
wget -O- http://debian.koha-community.org/koha/gpg.asc | sudo apt-key add -
Оновлюємо список доступних для встановлення пакунків
apt-get update
Встановлення Koha
Встановлення пакунка „koha-common“
Доступні два пакунки, що встановлюють АБІС Koha, це
„koha-common“ — містить увесь код та допоміжні сценарії. Цей пакунок після встановлення не надає налаштованого та працюючого екземпляру Koha, однак доступна команда „koha-create“ та інші корисні інструменти, що дозволять Вам створити скільки завгодно налаштованих та працюючих екземплярів (включаючи завдання cron та індексацію Zebra).
та
„koha“ — подібний пакунок, однак надає один екземпляр Koha. Однак цей варіант ще не керується сценаріями а також необхідно вручну додавати завдання cron та індексування Zebra (див. bug 5071.
Отож рекомендовано встановлювати пакунок „koha-common“
apt-get install koha-common
Також читаємо стандартну інструкцію про подальше налаштування
less /usr/share/doc/koha-common/README.Debian
Може бути помилка з конфігурацією пакунка libapache2-mpm-itk, див. рішення тут https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=734865
Встановлення БД MySQL та допоміжних пакунків
sudo apt-get install \ mysql-server \ phpmyadmin
- при встановленні сервера MySQL вказуємо пароль адміністратора (користувач „root“), надалі „ПарольАдмінаMySQL“
- для „phpmyadmin“ вибрати лише „apache2“
- при встановленні „phpmyadmin“ нагадати системі пароль адміна MySQL а також встановити пароль застосунку
У файлі /etc/phpmyadmin/phpmyadmin.service змінити порт
... <port>8888</port> ...
та додати цей порт у файл /etc/apache2/ports.conf
Listen 8888
Перезапуск Apache
/etc/init.d/apache2 restart
Налаштування MySQL
1) Пароль для користувача root БД MySQL: ПарольАдмінаMySQL Якщо пароль не вибрано при встановленні MySQL чи необхідно вказати новий, то діємо наступним чином
sudo dpkg-reconfigure mysql-server-5.5
2) Для підтримки UTF-8 у MySQL у файлі /etc/mysql/my.cnf (в кінці) має бути наступне
[mysqld] init-connect='SET NAMES utf8, collation_connection=utf8_unicode_ci' character-set-server=utf8 collation-server=utf8_unicode_ci character_set_client=utf8 skip-character-set-client-handshake
3) Перезапускаємо сервер MySQL
sudo /etc/init.d/mysql restart
4) Переконуємося, що зміни внесені, виконавши
sudo mysql -uroot -pПарольАдмінаMySQL show variables; quit
Налаштування Apache та сценарій „koha-post-install-setup“
1) Виконуємо сценарій
sudo koha-post-install-setup
(він задіює модулі Rewrite та Suexec для Apache)
2) Додатково задіюємо модуль Cgi
sudo a2enmod cgi
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" AUTHORITIES_INDEXING_MODE="dom" USE_MEMCACHED="yes" MEMCACHED_SERVERS="127.0.0.1:11211" MEMCACHED_PREFIX="koha_"
ports.conf
Додаємо
Listen 8080 Listen 8888
у файл /etc/apache2/ports.conf
Також перезапускаємо Apache
/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" AUTHORITIES_INDEXING_MODE="dom" USE_MEMCACHED="yes" MEMCACHED_SERVERS="127.0.0.1:11211" MEMCACHED_PREFIX="koha_"
ports.conf
Додаємо
Listen 8080 Listen 8008
у файл /etc/apache2/ports.conf
Порт 8008 додано для того щоб переспрямувати типовий віртуальний хост сервера Apache з порта 80 на порт 8008. Для цього редагуємо типовий файл /etc/apache2/sites-enabled/000-default.conf і змінюємо наступний рядок
<VirtualHost *:8008>
Також перезапускаємо Apache
/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“
Синтаксис на вікі та більш актуальний у коді на Git, а також через вбудовану довідку „koha-create --help“.
koha-create [--create-db|--request-db|--populate-db|--use-db] \ [--marcflavor marc21(default)|normarc|unimarc] \ [--zebralang cs|en(default)|es|fr|gr|nb|ru|uk] \ [--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] \ [--database dbname] \ [--adminuser admin_user_id_in_db] \ [--upload-path /var/lib/koha/<instancename>/uploads(default)|...] [--letsencrypt] instancename
Створення екземпляра АБІС 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 Zebra server for ukr_unimarc
[ ok ] Starting Koha indexing daemon for ukr_unimarc:.
Веб-встановлювач
Актуальні українські sql-файли
Актуальні локалізовані SQL-таблиці (у DrobBox Сергія Дубика) українською знаходяться за адресою:
'https://www.dropbox.com/sh/nybt54x8yhh7frq/AACfsG32sJnBgNh1CdivXDjYa?dl=0'
Звантажуємо звідси найновішу версію теки uk-UA та замінюємо нею відповідну теку у /usr/share/koha/intranet/cgi-bin/installer/data/mysql.
Примітка: локалізація SQL-таблиць російською ru-RU доступна лише для версії 3.4.х.
Утворення локалізованих шаблонів
Спочатку дивимося перелік доступних мов
sudo koha-translate --list --available
Встановлюємо переклади для української та російської
sudo koha-translate --install uk-UA sudo koha-translate --install ru-RU
та декілька інших
sudo koha-translate --install pl-PL sudo koha-translate --install be-BY …
Кроки веб-встановлювача
У файлі /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. Бачимо запит на авторизацію від веб-встановлювача.
Крок 1: мова uk-UA, перевірка залежностей
Крок 2: налаштування бази даних, перевірка з’єднання, існування БД та привілеїв
Крок 3: створення таблиць, вибір МАРК-стандарту (Unimarc), вибір типових даних.
На 3 кроці слідкуємо за помилками при імпорті типових даних. Якщо є помилки — знаходимо відповідні sql-файли, виправляємо їх та імпортуємо вручну (напр., через phpmyadmin). Також повідомляйте про sql-помилки Сергія Дубика, serhijdubykЖАБКАgmail.com.
Рідко, скоріш на повільних серверах, на 3-му кроці може з’являтися помилка „Gateway Timeout“. Спробуйте в налаштуваннях Apache (/etc/apache2/apache2.conf) виставити більший час (Timeout 600).
Встановлення завершено!.
Підтримка кирилиці рушієм пошуку 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-start-zebra ukr_unimarc
Запуск індексації Zebra
sudo koha-rebuild-zebra -f -v 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
Перевірка пошуку
У типових даних є декілька біб-записів й примірників. Перевіряємо пошук за словами
Україна (http://localhost:80/cgi-bin/koha/opac-search.pl?q=Україна)
Інвестиції (http://localhost:80/cgi-bin/koha/opac-search.pl?q=Інвестиції)
2011 (http://localhost:80/cgi-bin/koha/opac-search.pl?q=2011)
До перевірки
- що додано у завдання cron?
- переіндесація автоматична чи по розкладу і чи взагалі робиться?
- як задіяти ICU? (Зауваження щодо ICU див. тут)
- чи можна обійтися без правки word-phrase-utf.chr?
- пошук за „Інвестиції“ мав дати 4 результати..?
Оновлення Koha
Нова версія Koha виходить кожні шість місяців з набором нових функцій. Також кожен місяць виходять коригувальні оновлення.
Оновлення проходить легко для варіанту встановлення Koha з пакунків Debian.
sudo apt-get update sudo apt-get upgrade sudo apt-get install koha-common
Деколи необхідно оновити ключ debian-сховища Koha.
wget -O- http://debian.koha-community.org/koha/gpg.asc | sudo apt-key add -
Встановлення/оновлення допоміжних perl-модулів
Після оновлення, перевіряємо в бібліотечному інтерфейсі сторінку „Домівка > Про АБІС Koha > Модулі Perl“.
Ви можете побачити відсутні модулі Perl, виділені різними кольорами,
Пакунки з репозитарію Debian
Деякі згадувані тут пакунки могли бути відсутні у репозиторії Debian на момент підготовки пакунки з Koha. Пробуємо знайти відсутні пакунки через пошук https://www.debian.org/distrib/packages#search_packages
Знайдені пакунки довстановлюємо
sudo apt-get install знайдений_пакунок
Пакунки з 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-common“ не приводить до автоматичного вилучення екземплярів АБІС Koha. Попередньо необхідно зупинити та вилучити усі екземпляри АБІС Koha командами
koha-stop-zebra ukr_unimarc koha-disable ukr_unimarc koha-remove ukr_unimarc
Перегляд переліку наявних екземплярів
koha-list
Остаточне вилучення пакунків Koha
apt-get purge koha koha-common
Налаштування
Щодо додаткових налаштувань та адаптацій див. тут: Налаштування Koha, встановленої з джерела.