Оновлення Koha, встановленої з джерела

Матеріал з Koha Ukraine Wiki
Перейти до навігації Перейти до пошуку

Оновлення Koha 3.6.4 до 3.8.0, встановленої з джерела

Стосується встановлення Koha 3.6.x за інструкцією „Встановлення Koha з джерела на ОС Debian“

Резервні копії

Якщо даних немає — не робимо. Якщо дані є — бажано зробити … буде додано пізніше.

Журнал попереднього встановлення

Дивимося у конфігураційному файлі /etc/koha3/koha-conf.xml за розміщенням журналу встановлення, напр. <config> <install_log>/usr/share/koha3/misc/koha-install-log</install_log>

Отримання останньої стабільної версій Koha 3.8.0

su АдміністраторСистемиKoha

(та вводимо пароль користувача АдміністраторСистемиKoha)

cd ~/koha;

rm koha-latest.tar.gz
wget http://download.koha-community.org/koha-latest.tar.gz
tar -xzf koha-latest.tar.gz

Оновлення

cd ~/koha/koha-3.8.0/
perl Makefile.PL --prev-install-log /usr/share/koha3/misc/koha-install-log

у даному випадку оновлення 3.6-3.8 з’явилася можливість налаштувати Zebra для кращої підтримки Unicode-символів. Вибираємо icu:

Zebra has two methods to perform records tokenization
and characters normalization: CHR and ICU. ICU is
recommended for catalogs containing non-Latin
characters. (chr, icu) [chr] icu

вивід —

Reading values from install log /usr/share/koha3/misc/koha-install-log.  You
will be prompted only for settings that have been
added since the last time you installed Koha.  To
be prompted for all settings, run 'perl Makefile.PL'
without the --prev-install-log option.

Found 'zebrasrv' and 'zebraidx' in /usr/bin.

Koha will be installed with the following configuration parameters:

AUTH_INDEX_MODE          dom
DB_HOST                  localhost
DB_NAME                  Koha3
DB_PASS                  ПарольКористувачаБДKoha3
DB_PORT                  3306
DB_TYPE                  mysql
DB_USER                  КористувачБДKoha3
INSTALL_BASE             /usr/share/koha3
INSTALL_MODE             standard
INSTALL_PAZPAR2          yes
INSTALL_SRU              yes
INSTALL_ZEBRA            yes
KOHA_GROUP               АдміністраторСистемиKoha
KOHA_INSTALLED_VERSION   3.08.00.000
KOHA_USER                АдміністраторСистемиKoha
MEMCACHED_NAMESPACE      KOHA
MEMCACHED_SERVERS        127.0.0.1:11211
MERGE_SERVER_HOST        localhost
MERGE_SERVER_PORT        11001
PATH_TO_ZEBRA            /usr/bin
PAZPAR2_HOST             localhost
PAZPAR2_PORT             11002
RUN_DATABASE_TESTS       no
USE_MEMCACHED            yes
ZEBRA_LANGUAGE           uk
ZEBRA_MARC_FORMAT        unimarc
ZEBRA_PASS               ПарольКористувачаZebra
ZEBRA_SRU_AUTHORITIES_POR9999
ZEBRA_SRU_BIBLIOS_PORT   9998
ZEBRA_SRU_HOST           localhost
ZEBRA_TOKENIZER          icu
ZEBRA_USER               КористувачZebra

and in the following directories:

DOC_DIR                  $(DESTDIR)/usr/share/koha3/doc
INTRANET_CGI_DIR         $(DESTDIR)/usr/share/koha3/intranet/cgi-bin
INTRANET_TMPL_DIR        $(DESTDIR)/usr/share/koha3/intranet/htdocs/intranet-tmpl
INTRANET_WWW_DIR         $(DESTDIR)/usr/share/koha3/intranet/htdocs
KOHA_CONF_DIR            $(DESTDIR)/etc/koha3
LOG_DIR                  $(DESTDIR)/var/log/koha3
MAN_DIR                  $(DESTDIR)/usr/share/koha3/man
MISC_DIR                 $(DESTDIR)/usr/share/koha3/misc
OPAC_CGI_DIR             $(DESTDIR)/usr/share/koha3/opac/cgi-bin
OPAC_TMPL_DIR            $(DESTDIR)/usr/share/koha3/opac/htdocs/opac-tmpl
OPAC_WWW_DIR             $(DESTDIR)/usr/share/koha3/opac/htdocs
PAZPAR2_CONF_DIR         $(DESTDIR)/etc/koha3/pazpar2
PERL_MODULE_DIR          $(DESTDIR)/usr/share/koha3/lib
SCRIPT_DIR               $(DESTDIR)/usr/share/koha3/bin
SCRIPT_NONDEV_DIR        $(DESTDIR)/usr/share/koha3/bin
ZEBRA_CONF_DIR           $(DESTDIR)/etc/koha3/zebradb
ZEBRA_DATA_DIR           $(DESTDIR)/var/lib/koha3/zebradb
ZEBRA_LOCK_DIR           $(DESTDIR)/var/lock/koha3/zebradb
ZEBRA_RUN_DIR            $(DESTDIR)/var/run/koha3/zebradb

To change any configuration setting, please run
perl Makefile.PL again.  To override one of the target
directories, you can do so on the command line like this:

perl Makefile.PL PERL_MODULE_DIR=/usr/share/perl/5.8

You can also set different default values for parameters
or override directory locations by using environment variables.

For example:

export DB_USER=my_koha
perl Makefile.PL

or

DB_USER=my_koha DOC_DIR=/usr/local/info perl Makefile.PL

If installing on a Win32 platform, be sure to use:
'dmake -x MAXLINELENGTH=300000'

Writing Makefile for koha
Writing MYMETA.yml

Якщо у попередньому виводі є зауваження на кшталт такого

Warning: prerequisite DateTime::Format::DateParse 0.04 not found.
Warning: prerequisite Gravatar::URL 1.03 not found.
Warning: prerequisite DateTime::Format::ICal 0.09 not found.
Warning: prerequisite Modern::Perl 1.03 not found.
Warning: prerequisite Readonly 1.03 not found.
Warning: prerequisite Readonly::XS 1.02 not found.

то необхідно довстановити згадані пакунки:

sudo apt-get install libgravatar-url-perl libdatetime-format-ical-perl libmodern-perl-perl libdatetime-format-dateparse-perl libreadonly-perl libreadonly-xs-perl

Може бути й зауваження такого роду:

Warning: prerequisite Gravatar::URL 1.03 not found. We have 1.02.
Warning: prerequisite DateTime::TimeZone 1.26 not found. We have 1.20.

Це означає, що у Вашій версії Debian цей пакунок є але версія нижче ніж необхідно. Тоді довстановлюємо з репозитарію „testing“ (чи „unstable“):

sudo apt-get -t testing install libgravatar-url-perl libdatetime-timezone-perl

(чи з CPAN)

Також знову виконуємо

perl Makefile.PL --prev-install-log /usr/share/koha3/misc/koha-install-log

Компіляція та встановлення

make
make test
sudo make upgrade

Поправити налаштування хоста Apache

sudo mc -e /etc/koha3/koha-httpd.conf
/etc/koha3/koha-httpd.conf

...
<VirtualHost *:80>
  ServerName koha
...
...
<VirtualHost *:8888>
  ServerName koha:8888
...

та перезапустити сервер Apache

sudo /etc/init.d/apache2 restart

Продовжуємо оновлення через веб-інтерфейс

http://localhost:8888

Логін АдміністраторСистемиKoha та пароль

Update report :

   Upgrade done (Change borrowers.debarred into Date )
   Setting NULL to debarred where 0000-00-00 is stored (bug 7272)
   Updating message_name in message_attributes
   Upgrade to 3.07.00.004 done (Add column to suggestions table to store patrons' reasons for submitting a suggestion. )
   Upgrade to 3.07.00.005 done (BorrowerUnwantedField syspref)
   Upgrade to 3.07.00.006 done (Add syspref CircAutoPrintQuickSlip to control what should happen when an empty barcode field is submitted in circulation: Display a print quick slip window (default value, 3.6 behaviour) or clear the screen (previous 3.6 behaviour). )
   Upgrade to 3.07.00.007 done alter items.material from varchar(10) to text
   Upgrade to 3.07.00.008 done (add MARC21 field 545 to framework)
   Upgrade to 3.07.00.009 done (Add claims_count and claimed_date fields in aqorders table)
   Upgrade to 3.07.00.010 done (Added support for local cover images)
   Upgrade to 3.07.00.011 done (Added a system preference to allow renewal of Patron account either from todays date or from existing expiry date in the patrons account.)
   Upgrade to 3.07.00.012 add 'AllowItemsOnHoldCheckout' syspref
   Upgrade to 3.07.00.013 done (Bug 7345: Add system preference OpacExportOptions.)
   RELTERMS category available for English-, French-, and Spanish-language relator terms. They are not loaded during upgrade but can be easily inserted using the provided marc21_relatorterms.sql SQL script (MARC21 only, and currently available for en, es, and fr only).
   Upgrade to 3.07.00.015 done (Added a mapping for biblioitems.editionstatement.)
   Upgrade to 3.07.00.016 done (Added index on items.itemcallnumber)
   Upgrade to 3.07.00.017 done (Add sysprefs to control transfer when cancel all waiting holds)
   Upgrade to 3.07.00.018 done ( adding offline operations table )
   Upgrade to 3.07.00.019 done ( Adding additional options for the display of commenter's identity in the OPAC: Full name, first name, last name, first name and last name first initial, username, or no information)
   Upgrade to 3.07.00.020 done (Bug 3516: Add the option to show patron images in the OPAC.)
   Upgrade to 3.07.00.021 done (Enhancement 7284, improved authority matching, see http://wiki.koha-community.org/wiki/Bug7284_authority_matching_improvement wiki page for configuration update needed)
   Upgrade to 3.07.00.022 done (Bug 7493 - Add constraint linking OPAC comment biblionumber to biblio, OPAC comment borrowernumber to borrowers.)
   Upgrade to 3.07.00.023 done (Add branchcode and is_html to letter table; Default ISSUESLIP, RESERVESLIP and TRANSFERSLIP letters; Add NoticeCSS and SlipCSS sysprefs)
   Upgrade to 3.07.00.024 done (Added system preference ExpireReservesMaxPickUpDelay, system preference ExpireReservesMaxPickUpDelayCharge, add reseves.charge_if_expired)
   Upgrade to 3.07.00.025 done (Correct table name for local cover images if needed. )
   Upgrade to 3.07.00.026 done (Add syspref CalendarFirstDayOfWeek used to select the first day of week to use in the calendar. )
   Upgrade to 3.07.00.027 done (Added system preference RoutingListNote for adding a general note to all routing lists.)
   Upgrade to 3.07.00.028 done (Bug 6296 New System preference AllowPKIAuth)
   Upgrade to 3.07.00.029 done (Atomic update for OAI-PMH sets management)
   Upgrade to 3.07.00.030 done (Atomic update for OAI-PMH sets management)
   Upgrade to 3.07.00.031 done (Add syspref to tell Koha if ICU indexing is in use for Zebra or not.)
   Upgrade to 3.07.00.032 done (BZ7310: Improving list permissions)
   Upgrade to 3.07.00.033 done add opac_info to branches
   Upgrade to 3.07.00.034 done (New fields category_code and class in borrower_attribute_types table)
   Upgrade to 3.07.00.035 done (Setting up issues tables for hourly loans)
   Upgrade to 3.07.00.036 done (New timeout field in z3950servers)
   Upgrade to 3.07.00.037 done (Add new field maxlength to marc_subfield_structure)
   Upgrade to 3.07.00.038 done (Added system preference 'UniqueItemFields')
   Upgrade to 3.07.00.039 done (added syspref and table for babeltheque (Babeltheque_url_js, babeltheque))
   Upgrade to 3.07.00.040 done (added syspref SocialNetworks, to display facebook/ggl+ and other buttons)
   Upgrade to 3.07.00.041 done (Add system preference SubscriptionDuplicateDroppedInput)
   Upgrade to 3.07.00.042 done (Add suspend fields to reserves table, add syspref AutoResumeSuspendedHolds)
   Upgrade to 3.07.00.043 done (XSLT systempreference takes a path to file rather than YesNo)
   Upgrade to 3.07.00.044 done (Add deliverytime field in aqbooksellers table)Upgrade to 3.07.00.045 done (Add 'webservice' to batch_type enum)
   Upgrade to 3.07.00.046 done (Setting up issues tables for hourly loans (lengthunit fix))
   Upgrade to 3.07.00.047 done (items_location and items_ccode indexes added for ShelfBrowser)
   Upgrade to 3.07.00.048 done (Add 'ratings' table and 'OpacStarRatings' syspref)
   Upgrade to 3.07.00.049 done (Add system preference OpacBrowseResults ))
   Upgrade to 3.08.00.000 done

Update errors :

   [Tue Apr 24 16:05:16 2012] updatedatabase.pl: DBD::mysql::db do failed: Duplicate column name 'patronreason' at /usr/share/koha3/intranet/cgi-bin/installer/data/mysql/updatedatabase.pl line 4586.
   [Tue Apr 24 16:05:33 2012] updatedatabase.pl: DBD::mysql::db do failed: Duplicate entry 'AllowItemsOnHoldCheckout' for key 'PRIMARY' at /usr/share/koha3/intranet/cgi-bin/installer/data/mysql/updatedatabase.pl line 4672.

Поновлення мовних шаблонів

Шаблони для мов відмінних від en залишаються старі — необхідно теж оновити, напр. для укр. та рос.:

cd /usr/share/koha3/misc/translator/;sudo env KOHA_CONF=/etc/koha3/koha-conf.xml PERL5LIB=/usr/share/koha3/lib perl -I /usr/share/koha3/lib "./translate" install uk-UA
cd /usr/share/koha3/misc/translator/;sudo env KOHA_CONF=/etc/koha3/koha-conf.xml PERL5LIB=/usr/share/koha3/lib perl -I /usr/share/koha3/lib "./translate" install ru-RU

Бажано після цього перезапустити й службу memcached

sudo /etc/init.d/memcached restart

Відновлення Zebra

Поновлювач перезаписує файл

/etc/koha3/zebradb/etc/word-phrase-utf.chr

витираючи набори кириличних символів, необхідні для працездатності пошуку Zebra, отож виправляємо у цьому файлі на наступне:

lowercase {0-9}{a-z}æäåąßćęłńóśøöüźżабвгдежзийклмнопрстуфхцчшщьыъэюяёєїґўі                                                                                                       
uppercase {0-9}{A-Z}ÆÄÅĄẞĆĘŁŃÓŚØÖÜŹŻАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЬЫЪЭЮЯЁЄЇҐЎІ

Зауваження: спробувати не міняти це при ICU

Переіндексація БД

env KOHA_CONF=/etc/koha3/koha-conf.xml PERL5LIB=usr/share/koha3/lib perl -I \
 /usr/share/koha3/lib /usr/share/koha3/bin/migration_tools/rebuild_zebra.pl -b -r -x -v
     
env KOHA_CONF=/etc/koha3/koha-conf.xml PERL5LIB=usr/share/koha3/lib perl -I \
 /usr/share/koha3/lib /usr/share/koha3/bin/migration_tools/rebuild_zebra.pl -a -r -v

Зауваження щодо ICU

Використання ICU, ймовірно, ще потребує дослідження. На великій БД з'явилась помилка при переіндесації Zebra:

...
*** glibc detected *** zebraidx: corrupted double-linked list: 0x09d57700 ***
...

Згадки по цій проблемі: http://lists.nongnu.org/archive/html/koha-zebra/2011-06/msg00001.html http://irc.koha-community.org/irclog/koha/2011-05-29

Відключити ICU можна у файлі /etc/koha3/zebradb/etc/default.idx, замінивши у двох рядках

icuchain words-icu.xml

на

charmap word-phrase-utf.chr

Відновлення алфавітного вибору читачів

У файлі intranet/cgi-bin/members/member.pl виправити

my @letters = map { {letter => $_} } ( 'A' .. 'Z');

на

my @letters = map { {letter => $_} } (
'А','Б','В','Г','Ґ','Д','Е','Є','Ж','З','И','І','Ї','Й','К','Л','М','Н','О','П','Р','С','Т','У','Ф','Х','Ц','Ч','Ш','Щ','Ь','Ю',
'Я','</a>…<a>','Ў','Ё','Ъ','Ы','Э','</a>…<a>',
'A' .. 'Z');

Також у файлі intranet/cgi-bin/members/members-home.pl виправити

my @letters = map { {letter => $_} } ( 'A' .. 'Z');

на

my @letters = map { {letter => $_} } (
'А','Б','В','Г','Ґ','Д','Е','Є','Ж','З','И','І','Ї','Й','К','Л','М','Н','О','П','Р','С','Т','У','Ф','Х','Ц','Ч','Ш','Щ','Ь','Ю',
'Я','</a>…<a>','Ў','Ё','Ъ','Ы','Э','</a>…<a>',
'A' .. 'Z');

Оновлення завершено

Заходимо у інтерфейс бібліотекаря. Бачимо зміну версії за адресою http://localhost:8888/cgi-bin/koha/about.pl

Див. також