Koha 3.10.03 su Centos 6.3 i386 (installazione in locale) Indice CENTOS...1 APACHE...1 MYSQL...2 PERL...2 PHP...2 PRE-INSTALLATION SETUP...3 PHPMYADMIN...3 KOHA...4 HTTPD - KOHA...8 CREARE UN DATABASE...8 SET UP ADMIN INTERFACE...12 ZEBRA...18 REINDEX...19 DAEMON...19 ZEBRA - DAEMON...19 CAMBIARE I DATI DI DEFAULT DEL DATABASE...19 PATRON...20 CRONJOB...20 CENTOS 1. Scaricare CentOS e, dopo averlo scritto su un USB, installare la versione Live su una partizione http://mirrors.usc.edu/pub/linux/distributions/centos/6/isos/i386/ CentOS-6.3-i386-LiveCD.iso 2. Verifica della versione dei CentOS # cat /etc/issue CentOS release 6.3 (Final) Kernel \r on an \m APACHE 3. Installare Apache # yum install httpd 4. Settare Apache in modo che parta al boot del sistema # chkconfig --levels 235 httpd on 5. Far partire Apache #service httpd start 6. Testare Apache digitare localhost nel browser e visualizzare la pagina Test di Apache 1
MYSQL 7. Installare MySQL # yum install mysql mysql-server 8. Far partire MySQL #service mysqld start 9. Mettere in sicurezza l installazione di MySQL # /usr/bin/mysql_secure_installation Set root password? [Y/n] y Remove anonymous users? [Y/n] y Disallow root login remotely? [Y/n] y Remove test database and access to it? [Y/n] y Reload privilege tables now? [Y/n] y 10. Provare ad accedere a MySQL # mysql -p enter the root password > exit 11. Settare MySQL in modo che parta al boot del sistema # chkconfig --levels 235 mysqld on PERL 12. Installare Perl # yum install perl 13. Verifica della versione di Perl # rpm -qa perl perl-5.10.1-127.el6.i686 PHP 14. Installare PHP # yum install php 14.1. Configurare PHP # vim /etc/php.ini [sostituire] memory_limit = 16M [con] memory_limit = 128M [sostituire] max_execution_time = 30 [con] max_execution_time = 120 [sostituire] upload_max_filesize = 2M [con] upload_max_filesize = 50M [sostituire] post_max_size = 8M [con] post_max_size = 50M # mkdir /usr/share/phpinfo # vim /usr/share/phpinfo/index.php <?php phpinfo();?> # chmod 0755 /usr/share/phpinfo/index.php #vim /etc/httpd/conf.d/phpinfo.conf # phpinfo - PHP utility function for displaying php configuration # # Allows only localhost by default 2
Alias /phpinfo /usr/share/phpinfo <Directory /usr/share/phpinfo/> order deny,allow deny from all allow from 127.0.0.1 </Directory> 14.2. Riavviare Apache # service httpd restart 14.3. Testare PHP digitare localhost/phpinfo nel browser e visualizzare la pagina di output PHP PRE-INSTALLATION SETUP 15. Aggiornare il sistema # yum -y update (In caso si blocchi l'aggiornamento e yum rimanga in esecuzione digitare, come root, # yum-complete-transaction --cleanup-only) 16. Set up di EPEL and RPMForge. (Per facilitare l installazione dei moduli Perl con RPM piuttosto che con Cpan) # rpm --install 'http://download.fedoraproject.org/pub/epel/6/i386/epel-release- 6-8.noarch.rpm' # rpm --install 'http://pkgs.repoforge.org/rpmforge-release/rpmforge-release- 0.5.2-2.el6.rf.i686.rpm' 17. Installare alcuni rpms non compresi nell installazione di Centos, ma richiesti da Koha # yum -y install libyaz libyaz-devel perl-cpan perl-cpan-meta-yaml gcc GraphicsMagick-perl # yum -y install --disablerepo=rpmforge,epel 'perl-*' # yum -y --enablerepo=rpmforge-extras install perl-yaml 17.1. Fissare l installazione di GraphicsMagic # cd /usr/lib/perl5/auto/graphics/magick # mv Magick.so Magick-0.so # ld -share -o Magick.so `pwd`/magick-0.so /usr/lib/libgraphicsmagick.so.3.6.0) PHPMYADMIN 18. Installare PhpMyAdmin # yum search phpmyadmin # yum -y install phpmyadmin.noarch 19. Riavviare Apache # service httpd restart 20. Testare PHPMyAdmin digitare localhost/phpmyadmin nel browser, inserire i dati di accesso e visualizzare la pagina di PHPMyAdmin 3
KOHA 21. Aggiunggere un nuovo user koha # useradd koha # passwd koha 22. Scaricare e decomprimere Koha # wget http://download.koha-community.org/koha-latest.tar.gz # tar xvf koha-latest.tar.gz 23. Installare "Development Tools" (per installare i moduli perl richiesti da Koha) # yum groupinstall "Development Tools" 24. Installare le dipendenze (usare lo script koha_perl_deps.pl per sapere quali moduli scaricare da EPEL and RPMForge. Non si specifichino singoli moduli, così che lo script valga anche quando quelli richiesti da Koha cambieranno) # cd koha-3.10.03 # perl koha_perl_deps.pl -m grep 'Yes' sed -e 's/::/-/g' awk '{print "yum -y install perl-"$1}' > perl-pkgs-install # sh perl-pkgs-install 25. Configurare CPAN per dire yes automaticamente e seguire e installare tutte le dipendenze in automatico # perl -MCPAN -e shell > o conf build_requires_install_policy yes > o conf prerequisites_policy follow > o conf commit > exit 25.1. Installare i moduli richiesti da Koha # cd koha-3.10.03 # perl koha_perl_deps.pl -m grep 'Yes' awk '{print "cpan -i -f "$1}' > perlmodules-install # sh perl-modules-install 26. Installare gli ultimi moduli rimasti con cpan # cd koha-3.10.03 # perl koha_perl_deps.pl -u -m # cpan AnyEvent AnyEvent::HTTP CGI::Session::Driver::memcached CHI CHI::Driver::Memcached Cache::Memcached::Fast DBD::SQLite2 Data::Pagination Data::Paginator JSON::Any Memoize::Memcached Moose MooseX::Storage MooseX::Types Net::Server Net::Z3950::ZOOM SMS::Send String::RewritePrefix Test::Strict Test::YAML::Valid Time::Progress UNIVERSAL::require DateTime DateTime::TimeZone 26.1. Risolvere il problema con il modulo Net::Z3950::ZOOM che non si installa: [fonte] http://lists.indexdata.dk/pipermail/net-z3950/2008-january/000723.html [/fonte] Scaricare da http://rpmfind.net/linux/rpm2html/search.php?query=tcp_wrappers-devel/ il pacchetto: "tcp_wrappers-devel-7.6-57.el6.i686.rpm" # wget ftp://rpmfind.net/linux/centos/6.3/os/i386/packages/tcp_wrappers-devel- 7.6-57.el6.i686.rpm [cartella dove si è scaricato]# rpm --install tcp_wrappers-devel-7.6-57.el6.i686.rpm # cd koha-3.10.03 4
# perl koha_perl_deps.pl -u -m # cpan Net::Z3950::ZOOM 27. Installare Koha # cd koha-3.10.03 # perl Makefile.PL unable to locate Koha configuration file koha-conf.xml at /koha-3.10.03/c4/context.pm line 360. By default, Koha can be installed in one of three ways: standard: Install files in conformance with the Filesystem Hierarchy Standard (FHS). This is the default mode and should be used when installing a production Koha system. On Unix systems, root access is needed to complete a standard installation. single: dev: Install files under a single directory. This option is useful for installing Koha without root access, e.g., on a web host that allows CGI scripts and MySQL databases but requires the user to keep all files under the user's HOME directory. Create a set of symbolic links and configuration files to allow Koha to run directly from the source distribution. This mode is useful for developers who want to run Koha from a git clone. Installation mode (dev, single, standard) [standard] Please specify the directory under which most Koha files will be installed. Note that if you are planning in installing more than one instance of Koha, you may want to modify the last component of the directory path, which will be used as the package name in the FHS layout. Base installation directory [/usr/share/koha] Since you are using the 'standard' install mode, you should run 'make install' as root. However, it is recommended that a non-root user (on Unix and Linux platforms) have ownership of Koha's files, including the Zebra indexes if applicable. Please specify a user account. This user account does not need to exist right now, but it needs to exist before you run 'make install'. Please note that for security reasons, this user should not be the same as the user account Apache runs under. User account [koha] Please specify the group that should own Koha's files. As above, this group need not exist right now, but should be created before you run 'make install'. Group [koha] Please specify which database engine you will use to store data in Koha. The choices are MySQL and PostgreSQL; please note that at the moment PostgreSQL support is highly experimental. DBMS to use (Pg, mysql) [mysql] Please specify the name or address of your database server. Note that the database does not have to exist at this point, it can be created after running 'make install' and before you try using Koha for the first time. Database server [localhost] Please specify the port used to connect to the DMBS [3306] Please specify the name of the database to be used by Koha [koha] Please specify the user that owns the database to be 5
used by Koha [kohaadmin] Please specify the password of the user that owns the database to be used by Koha [katikoan] Koha can use the Zebra search engine for high-performance searching of bibliographic and authority records. If you have installed the Zebra software and would like to use it, please answer 'yes' to the following question. Otherwise, Koha will default to using its internal search engine. Please note that if you choose *NOT* to install Zebra, koha-conf.xml will still contain some references to Zebra settings. Those references will be ignored by Koha. Install the Zebra configuration files? (no, yes) [yes] Unable to find the Zebra programs 'zebrasrv' and 'zebraidx' in your PATH or in some of the usual places. If you haven't installed Zebra yet, please do so and run Makefile.PL again. Since you've chosen to use Zebra with Koha, you must specify the primary MARC format of the records to be indexed by Zebra. Koha provides Zebra configuration files for MARC21, NORMARC and UNIMARC. MARC format for Zebra indexing (marc21, normarc, unimarc) [marc21] Koha supplies Zebra configuration files tuned for searching either English (en) or French (fr) MARC records. Primary language for Zebra indexing (en, fr, nb) [en] Koha can use one of two different indexing modes for the MARC bibliographic records: grs1 - uses the Zebra GRS-1 filter, available for legacy support dom - uses the DOM XML filter; offers improved functionality. Bibliographic indexing mode (dom, grs1) [dom] Koha can use one of two different indexing modes for the MARC authorities records: grs1 - uses the Zebra GRS-1 filter, available for legacy support dom - uses the DOM XML filter; offers improved functionality. Authorities indexing mode (dom, grs1) [dom] 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] Please specify Zebra database user [kohauser] Please specify the Zebra database password [zebrastripes] Since you've chosen to use Zebra, you can enable the SRU/ Z39.50 Server if you so choose, but you must specify a few configuration options for it. Please note that if you choose *NOT* to configure SRU, koha-conf.xml will still contain some references to SRU settings. Those references will be ignored by Koha. Install the SRU configuration files? (no, yes) [yes] SRU Database host? [localhost] SRU port for bibliographic data? [9998] SRU port for authority data? [9999] Since you've chosen to use Zebra, you can also choose to install PazPar2, which is a metasearch tool. With PazPar2, Koha can perform on-the-fly merging of bibliographic records during searching, allowing for FRBRization of the results list. 6
Install the PazPar2 configuration files? [no] Use memcached and memoize to cache the results of some function calls? This provides a signficant performance improvement. You will need a Memcached server running. (no, yes) [no] Would you like to run the database-dependent test suite? (no, yes) [no] Koha will be installed with the following configuration parameters: AUTH_INDEX_MODE dom BIB_INDEX_MODE dom DB_HOST localhost DB_NAME koha DB_PASS katikoan DB_PORT 3306 DB_TYPE mysql DB_USER kohaadmin INSTALL_BASE /usr/share/koha INSTALL_MODE standard INSTALL_PAZPAR2 no INSTALL_SRU yes INSTALL_ZEBRA yes KOHA_GROUP koha KOHA_INSTALLED_VERSION 3.10.03.000 KOHA_USER koha RUN_DATABASE_TESTS no USE_MEMCACHED no ZEBRA_LANGUAGE en ZEBRA_MARC_FORMAT marc21 ZEBRA_PASS zebrastripes ZEBRA_SRU_AUTHORITIES_POR9999 ZEBRA_SRU_BIBLIOS_PORT 9998 ZEBRA_SRU_HOST localhost ZEBRA_TOKENIZER chr ZEBRA_USER kohauser and in the following directories: BACKUP_DIR DOC_DIR INTRANET_CGI_DIR INTRANET_TMPL_DIR INTRANET_WWW_DIR KOHA_CONF_DIR LOG_DIR MAN_DIR MISC_DIR OPAC_CGI_DIR OPAC_TMPL_DIR OPAC_WWW_DIR PAZPAR2_CONF_DIR PERL_MODULE_DIR SCRIPT_DIR SCRIPT_NONDEV_DIR ZEBRA_CONF_DIR ZEBRA_DATA_DIR ZEBRA_LOCK_DIR ZEBRA_RUN_DIR $(DESTDIR)/var/spool/koha $(DESTDIR)/usr/share/koha/doc $(DESTDIR)/usr/share/koha/intranet/cgi-bin $(DESTDIR)/usr/share/koha/intranet/htdocs/intranet-tmpl $(DESTDIR)/usr/share/koha/intranet/htdocs $(DESTDIR)/etc/koha $(DESTDIR)/var/log/koha $(DESTDIR)/usr/share/koha/man $(DESTDIR)/usr/share/koha/misc $(DESTDIR)/usr/share/koha/opac/cgi-bin $(DESTDIR)/usr/share/koha/opac/htdocs/opac-tmpl $(DESTDIR)/usr/share/koha/opac/htdocs $(DESTDIR)/etc/koha/pazpar2 $(DESTDIR)/usr/share/koha/lib $(DESTDIR)/usr/share/koha/bin $(DESTDIR)/usr/share/koha/bin $(DESTDIR)/etc/koha/zebradb $(DESTDIR)/var/lib/koha/zebradb $(DESTDIR)/var/lock/koha/zebradb $(DESTDIR)/var/run/koha/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.10 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 and MYMETA.json 28. Make Koha 7
# cd koha-3.10.03 # make 29. Make install Koha # cd koha-3.10.03 # make install 30. Esportare le variabili relative a Koha # vim /etc/profile.d/koha.tcsh setenv KOHA_CONF /etc/koha/koha-conf.xml setenv PERL5LIB /usr/share/koha/lib # vim /etc/profile.d/koha.sh export KOHA_CONF=/etc/koha/koha-conf.xml export PERL5LIB=/usr/share/koha/lib HTTPD - KOHA 31. Settare Koha su HTTPD # ln -s /etc/koha/koha-httpd.conf /etc/httpd/conf.d/ # vim /etc/httpd/conf/httpd.conf Listen 8080 32. Settare un http_context: # chcon -t httpd_sys_content_t /usr/share/koha/intranet/cgi-bin/* -R # chcon -t httpd_sys_content_t /usr/share/koha/opac/cgi-bin/* -R 33. Riavviare Apache: # service httpd restart CREARE UN DATABASE 34. Creare il database Koha Login in http://localhost/phpmyadmin/ Aggiungere un database "koha" Aggiungere un utente "kohaadmin" con password "katikoan" con tutti i privilegi sul database "koha" 8
9
10
11
SET UP ADMIN INTERFACE 34. Andare a http://localhost:8080/ per terminare l installazione 12
13
14
15
16
17
ZEBRA 35. Installare Yaz # wget http://ftp.indexdata.dk/pub/yaz/redhat/centos/6/srpms/yaz-4.2.51-1indexdata.src.rpm # rpm -ivh yaz-4.2.51-1indexdata.src.rpm # cd /root/rpmbuild/sources # tar xvf yaz-4.2.51.tar.gz # cd yaz-4.2.51 #./configure # make # make install 36. Installare Libicu # yum install libicu-devel 37. Installare Zebra # wget http://ftp.indexdata.dk/pub/zebra/redhat/centos/6/srpms/idzebra-2.0.54-1indexdata.src.rpm # rpm -ivh idzebra-2.0.54-1indexdata.src.rpm # cd /root/rpmbuild/sources # tar xvf idzebra-2.0.54.tar.gz # cd idzebra-2.0.54 #./configure # make # make install 38. Cambiare le Path # vim /usr/share/koha/bin/koha-zebra-ctl.sh ZEBRASRV=/usr/local/bin/zebrasrv # vim /etc/koha/zebradb/zebra-authorities.cfg - zebra-authorities-dom.cfg - zebra-biblios.cfg - zebra-biblios-dom.cfg modulepath: /usr/local/lib/idzebra-2.0/modules 39. Permission on folder # cd /var/log/koha 18
# chown -R koha.. # cd /var/run/koha # chown -R koha.. # cd /var/lock/koha # chown -R koha.. REINDEX 40. Creare alcuni record (authorities e biblios) in Koha e fare un reindex totale: # su koha # cd /usr/share/koha/bin/ $ migration_tools/rebuild_zebra.pl -b -a -v -r DAEMON 41. Installare il tool daemon # wget http://libslack.org/daemon/download/daemon-0.6.4.tar.gz # tar xvf daemon-0.6.4.tar.gz # cd daemon-0.6.4 #./config # make # make test # make install ZEBRA - DAEMON 42. Situazione iniziale # ps aux grep zebra root 20918 0.0 0.0 4352 752 pts/0 S+ 02:22 0:00 grep zebra 43. Zebra - Demone # ln -s /usr/share/koha/bin/koha-zebra-ctl.sh /etc/init.d/koha-zebra-daemon # chkconfig --add koha-zebra-daemon # chkconfig koha-zebra-daemon on # su koha $ /etc/init.d/koha-zebra-daemon start $ ps aux grep zebra koha 9707 0.0 0.0 5524 648? S 07:34 0:00 daemon --name=koha-zebra-ctl.koha --errlog=/var/log/koha/koha-zebradaemon.err --stdout=/var/log/koha/kohazebradaemon.log --output=/var/log/koha/koha-zebradaemon-output.log --verbose=1 --respawn --delay=30 --user=koha.koha -- usr/local/bin/zebrasrv -v none,fatal,warn -f /etc/koha/koha-conf.xml koha 9725 0.0 0.4 9040 4164? S 07:36 0:00 usr/local/bin/zebrasrv -v none,fatal,warn -f /etc/koha/koha-conf.xml root 9779 0.0 0.0 5476 744 pts/0 S+ 07:45 0:00 grep zebra CAMBIARE I DATI DI DEFAULT DEL DATABASE 44. Cambiare in #vim /etc/koha/koha-conf.xml i dati di accesso al database (kohaadmin; katikoan) 43. Eliminare da Phpmyadmin l'utente kohaadmin e farne uno con i dati di quello settato in koha-conf.xml 19
PATRON 45. Dal pannello di controllo di Koha creare un Patron amministratore del sistema per non entrare con l'utente del database CRONJOB 46. Settare un Cronjob per il reindex dei record [root@host /]# env HOSTNAME=host.creacomstudio.net TERM=xterm SHELL=/bin/bash HISTSIZE=1000 SSH_CLIENT=79.182.235.60 59940 2200 PERL5LIB=/usr/share/koha/lib OLDPWD=/root SSH_TTY=/dev/pts/2 USER=root LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=01;05;37; 41:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31: *.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.zip=01;31:*.z=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lz=01;31: *.xz=01;31:*.bz2=01;31:*.tbz=01;31:*.tbz2=01;31:*.bz=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.rar=01 ;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*. pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=0 1;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.ogm=01;35 :*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb =01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=01;36:*.au=01;36:*.flac=01;36:*.mid=0 1;36:*.midi=01;36:*.mka=01;36:*.mp3=01;36:*.mpc=01;36:*.ogg=01;36:*.ra=01;36:*.wav=01;36:*.axa=01;36:*.oga=01;36:*.spx=01;36:*.xspf=01;36: MAIL=/var/spool/mail/root PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin PWD=/ LANG=en_US.UTF-8 KOHA_CONF=/etc/koha/koha-conf.xml HISTCONTROL=ignoredups SHLVL=1 HOME=/root LOGNAME=root CVS_RSH=ssh SSH_CONNECTION=79.182.235.60 59940 108.160.148.63 2200 LESSOPEN= /usr/bin/lesspipe.sh %s G_BROKEN_FILENAMES=1 _=/bin/env e poi: [root@host /]#su koha [koha@host /]$ crontab -e PERL5LIB=/usr/share/koha/lib KOHA_CONF=/etc/koha/koha-conf.xml */1 * * * * PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin; /usr/share/koha/bin/migration_tools/rebuild_zebra.pl -b -a -z >/dev/null [gli a capo non vanno fatti] Ulteriore documentazione di riferimento http://wiki.koha-community.org/wiki/koha_3.6_on_centos_6.2_i386 20