Встановлення Koha з джерела на ОС Debian
Розглядається встановлення АБІС Koha серії 3.4 з джерельних кодів. Опис, в основному взятий з http://wiki.koha-community.org/wiki/Category:Installation з доповненнями.
Попередні налаштування
Локаль з UTF-8
Перевірка локалі:
sudo locale
у виводі повинно бути
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 update-locale LANG=uk_UA.UTF-8
Користувач для Koha
Додаємо користувача
(нижче замість „АдміністраторСистемиKoha“ вводимо своє)
sudo adduser АдміністраторСистемиKoha
Деколи група автоматично не створюється — тоді потрібно ще
sudo addgroup АдміністраторСистемиKoha sudo adduser АдміністраторСистемиKoha АдміністраторСистемиKoha
Командою visudo відкриваємо для редагування файл привілеїв адміністратора і надаємо їх користувачу АдміністраторСистемиKoha, додавши у кінці файлу рядок
АдміністраторСистемиKoha ALL=(ALL) ALL
Після додавання клавіатурним скороченням Ctrl-O зберігаємо файл (/etc/sudoers) та через Ctrl-X виходимо.
Встановлення й налаштування додаткових пакунків
Встановленню безпосередньо ПЗ Koha передує встановлення усіх необхідних пакунків та модулів, від яких залежить Koha.
Встановлення пакунків з репозитаріїв
Веб-сервер, БД MySQL та допоміжні пакунки
Однією командою
sudo apt-get install \ at \ apache2 \ cvs \ git \ git-core \ make \ gcc \ daemon \ perlmagick \ mysql-server \ phpmyadmin
- при встановленні сервера MySQL вказуємо пароль адміністратора (користувач „root“), надалі „ПарольАдмінаMySQL“.
- для „phpmyadmin“ вибрати лише „apache2“
Перлівські модулі
Однією командою
sudo apt-get install \ libcgi-session-perl \ libclass-factory-util-perl \ libdata-ical-perl \ libdate-calc-perl \ libdate-ical-perl \ libdate-manip-perl \ libdatetime-format-mail-perl \ libdatetime-format-strptime-perl \ libdatetime-format-w3cdtf-perl \ libdatetime-locale-perl \ libdatetime-perl \ libdatetime-timezone-perl \ libdbd-mysql-perl \ libdbi-perl \ libemail-date-perl \ libgd-barcode-perl \ libhtml-scrubber-perl \ libimage-magick-perl \ libjson-perl \ liblingua-ispell-perl \ liblingua-stem-perl \ liblist-moreutils-perl \ liblist-moreutils-perl \ liblocale-gettext-perl \ liblocale-po-perl \ libmail-sendmail-perl \ libmime-lite-perl \ libnet-ldap-perl \ libpdf-api2-perl \ libpoe-perl \ libtext-charwidth-perl \ libtext-csv-perl \ libtext-iconv-perl \ libtext-wrapi18n-perl \ libtimedate-perl \ libtime-duration-perl \ libtime-format-perl \ libunix-syslog-perl \ libxml-dom-perl \ libxml-dumper-perl \ libxml-libxml-perl \ libxml-libxslt-perl \ libxml-namespacesupport-perl \ libxml-parser-perl \ libxml-perl \ libxml-regexp-perl \ libxml-sax-writer-perl \ libxml-simple-perl \ libxml-xslt-perl \ libyaml-syck-perl \ libbiblio-endnotestyle-perl \ libcgi-session-serialize-yaml-perl \ libhtml-template-pro-perl \ libmarc-charset-perl \ libmarc-crosswalk-dublincore-perl \ libmarc-xml-perl \ libmarc-record-perl \ libnet-z3950-zoom-perl \ libpdf-reuse-perl \ libpdf-reuse-barcode-perl \ libschedule-at-perl \ libxml-rss-perl \ libyaml-perl \ libalgorithm-checkdigits-perl \ libhttp-oai-perl \ libsms-send-perl \ libtemplate-perl \ libmemoize-memcached-perl \ libbusiness-isbn-perl \ libdbd-sqlite2-perl \ libuniversal-require-perl \ libtext-csv-encoded-perl \ libpdf-api2-simple-perl \ libpdf-table-perl \ libnet-server-perl \ libnumber-format-perl \ liblocale-currency-format-perl \ liblingua-stem-snowball-perl \ libgraphics-magick-perl \ libauthen-cas-client-perl
Zebra та Yaz
Однією командою
sudo apt-get install \ idzebra-2.0-common \ idzebra-2.0-doc \ idzebra-2.0 \ idzebra-2.0-utils \ libidzebra-2.0-dev \ libidzebra-2.0-0 \ libidzebra-2.0-mod-alvis \ libidzebra-2.0-mod-grs-marc \ libidzebra-2.0-mod-grs-regx \ libidzebra-2.0-mod-grs-xml \ libidzebra-2.0-mod-text \ libidzebra-2.0-modules \ yaz \ yaz-doc \ libyaz4 \ libyaz4-dev
Інші пакунки
Однією командою
sudo apt-get install \ gettext \ libgcrypt11-dev \ libgcrypt11 \ libgd2-noxpm-dev \ libmysqlclient-dev \ libxml2-dev \ libxml2 \ libxml2-utils \ libxslt1.1 \ libxslt1-dev \ memcached \ libapache2-mod-perl2
Пакунки з гілок Дебіен „unstable“ чи „testing“
1) Створюємо файл /etc/apt/apt.conf і додаємо наступне
# Зробити „squeeze“ дистрибутивом за умовчанням APT::Default-Release "squeeze";
2) Створюємо файл /etc/apt/preferences і додаємо наступне (щоб у стабільної гілки „squeeze“ був вищий пріоритет)
Package: * Pin: release a=squeeze Pin-Priority: 900
Package: * Pin: release a=unstable Pin-Priority: 90
3) У файл /etc/apt/sources.list додаємо наступне джерело
# Джерело пакунків з гілки Дебіен „unstable“ deb http://http.us.debian.org/debian unstable main contrib non-free
4) Встановлення пакунків з гілки „unstable“
sudo apt-get update sudo apt-cache policy libcgi-session-driver-memcached-perl sudo apt-get -t unstable install libcgi-session-driver-memcached-perl
Налаштування пакунків
Apache
1) Модулі
Задіюємо модуль Rewrite
sudo a2enmod rewrite
а також модулі Expires та Deflate
sudo a2enmod expires sudo a2enmod deflate
2) Редагуємо /etc/apache2/conf.d/charset
AddCharset UTF-8 .utf8 AddDefaultCharset UTF-8
3) Перезапуск Apache
sudo /etc/init.d/apache2 restart
MySQL
1) Пароль для користувача root БД MySQL: ПарольАдмінаMySQL
Якщо пароль не вибрано при встановленні MySQL, то змінити можна так
sudo dpkg-reconfigure mysql-server-5.1
2) Для підтримки UTF-8 у MySQL у файлі /etc/mysql/my.cnf (в кінці) має бути наступне
[client] default-character-set=utf8 [mysqld_safe] default-character-set=utf8 [mysql] default-character-set=utf8 [mysqld] init-connect='SET NAMES utf8, collation_connection=utf8_unicode_ci' default-character-set=utf8 character-set-server=utf8 collation-server=utf8_unicode_ci character_set_client=utf8 default-collation=utf8_unicode_ci skip-character-set-client-handshake
3) Перезапускаємо сервер MySQL
sudo /etc/init.d/mysql restart
4) Переконуємося, що зміни внесені, виконавши
sudo mysql -uroot -pПарольАдмінаMySQL show variables; quit
Встановлення Koha
Вхід від користувача АдміністраторСистемиKoha
Переходимо у середовище користувача АдміністраторСистемиKoha (вводимо пароль користувача АдміністраторСистемиKoha)
su АдміністраторСистемиKoha cd ~/
Отримання Koha
1) Для отримання останньої стабільної Koha — звантажуємо її з http://download.koha-community.org
mkdir ~/koha; wget -O ~/koha/koha-latest.tar.gz http://download.koha-community.org/koha-latest.tar.gz
2) Розпаковування архіву
cd ~/koha; tar -xzf koha-latest.tar.gz
3) Логічне посилання на теку
Зручно мати логічне посилання на теку з Koha
rm ~/koha/koha.local;ln -s ~/koha/koha-3.04.00.000 ~/koha/koha.local
Створення БД для Koha в MySQL
Утворюємо базу даних Koha3 та привілеї користувачів щодо неї:
sudo mysqladmin -uroot -pПарольАдмінаMySQL create Koha3 sudo mysql -uroot -pПарольАдмінаMySQL
У середовищі mysql виконати наступне
grant all on Koha3.* to 'КористувачБДKoha3'@'localhost' identified by 'ПарольКористувачаБДKoha3';\ flush privileges; exit
Перевірка аналізатора SAX Parser
У теці Koha виконати
~/koha/koha.local/misc/sax_parser_print.pl
Ви повинні побачити щось таке
XML::LibXML::SAX::Parser=HASH(0x81fe220)
Якщо ж є PurePerl чи Expat, то необхідно поправити файл /etc/perl/XML/SAX/ParserDetails.ini (запис щодо XML::LibXML::SAX::Parser має бути найнижче)
Перевірка чи встановлені усі необхідні пакунки
Команда
~/koha/koha.local/koha_perl_deps.pl -c -u -m
видасть список відсутніх модулів та модулів, які необхідно оновити.
Вам необхідно знайти та встановити ці модулі (ймовірно, що список буде порожнім, оскільки всі необхідні пакунки повинні згадуватися у цьому керівництві вище).
Відсутні та модулі новіших версій шукайте у гілці Debian unstable або ж в CPAN (Perl-модулі з CPAN встановлюються командую на кшталт „sudo cpan HTTP::OAI“).