Centos5 x64 üzerine Alfresco nasıl yüklenir

Bu makalede kurumsal içerik ve doküman yönetim uygulaması olan ve en başarılı uygulama olarak görülen ve Microsoft SharePoint’e alternatif olan, open source çözüm arayışında olan küçük ve büyük şirketlerin kullanabileceği Alfresco ECM ‘nin nasıl kurulabileceğini anlatılacaktır.

Alfresco; Windows, Linux ve  Mac platformlarında çalışabiliyor. Uygulamamızın ücretli versiyonu da bulunmakta biz ücretsiz olan Community Edition sürümünü Linux üzerine kullanacağız.

İnternetten araştırdığım kadarıyla bu uygulamanın en iyi ve yaygın olarak Centos üzerinde çalıştırıldığını gördüm.

Öncelikle Centos 5.5 sürümünü minimal install kurup update ediyoruz.

yum update

Bu işlem tamamlandıktan sonra Alfresco kurulumuna başlayabiliriz.

Kurulum öncesi özet bilgi ;

Normalde her platform için Alfresco bir installer wizard ile kuruluyor ve bu wizard üzerinden custom seçerek devam etmek gerekiyor. Biz kurulumu tamamen terminal üzerinden yapacağız Desktop’a ihtiyacımız bulunmuyor terminal üzerinden çalıştırdığımız yükleyicide custom parametresi malesef kullanamıyoruz ama ilgili dosyaları compile ederek bunun da üstesinden geleceğiz.

Alfresco Tomcat üzerinde çalışıyor, ImageMagick, swftools, OpenOffice gibi paketlere de ihtiyaç duyuyor. Ben bu kurulumu karşılaştığım sorunlar sebebiyle onlarca defa tekrarladığımdan paketleri yükleme sırası size garip gelebilir fakat en sorunsuz yükleme bu şekilde oluyor (: hemde yükleme adımlarını önceden kontrol etmiş oluyoruz. Her adımda belirttiğim komutları sırasıyla girerseniz kurulumu sorunsuzca tamamlayacaksınız.

Uygulamanın veritabanı için mysql kurulumu ile kuruluma başlıyoruz;

yum install mysql-server

Mysql server yüklemesinden sonra servisi başlatıp mysql root user şifresi ve diğer bir kaç ayar için;

service mysqld start
/usr/bin/mysql_secure_installation

Büyük/Küçük harf ve karakter sorunu yaşamamak için etc/my.cnf dosyasını bir text editorü ile açalım;

vi /etc/my.cnf

Aşağıdaki satırları ekliyoruz;

character-set-server = utf8
collation-server = utf8_bin
lower_case_table_names = 1

Esc tuşuna bastıktan sonra :wq! yazıp Enter’a basarak kaydediyoruz ardından mysql servisini yeniden başlatıyoruz.

service mysqld restart

Şimdi Sun java jdk paketlerini yükleyeceğiz.

http://www.oracle.com/technetwork/java/javase/downloads/index.html adresinden ilgili paketleri temin edebilirsiniz.
Ben jdk-6u21-linux-x64.rpm.bin paketini indirdim ve indirdiğim dizinde aşağıdaki komutlar ile kuruyorum;

chmod +x jdk-6u21-linux-x64-rpm.bin
./jdk-6u21-linux-x64-rpm.bin

alternatives –install /usr/bin/java java /usr/java/jdk1.6.0_21/bin/java 100
alternatives –install /usr/bin/jar jar /usr/java/jdk1.6.0_21/bin/jar 100
alternatives –install /usr/bin/javac javac /usr/java/jdk1.6.0_21/bin/javac 100

Java yüklemesini tamamladık eğer javanın farklı bir versiyonu daha yüklüyse aşağıdaki komutları kullanarak kontrol edip 1.6.0_21 olanı seçmemiz gerekiyor.

alternatives –config java
alternatives –config jar
alternatives –config javac

Centos 5 ile Tomcat5 versiyonu gelmekte biz Alfresco’nun önerdiği Tomcat6 versiyonunu kuracağız.

cd /etc/yum.repos.d
wget ‘http://www.jpackage.org/jpackage50.repo’
yum update
yum install tomcat6 tomcat6-webapps tomcat6-admin-webapps

tomcat6 yüklemesi sırasında alabileceğiniz muhtemel hata işletim sistemine ait bir bug. Bu hata “Missing Dependency: /usr/bin/rebuild-security-providers is needed by package” için buraya tıklayarak bir diğer makalemde yazdığım çözümü uygulamanız gerekiyor.

Eğer tomcat6′yı başarıyla yüklediyseniz servisini başlatın;

service tomcat6 start

Şimdi bir browser penceresi açarak http://sunucunuzunipadresi:8080 sayfasına gittiğinizde Tomcat varsayılan sayfasını görüyorsanız Tomcat başarıyla kurulmuş demektir. Servisi tekrar durduruyoruz.

service tomcat6 stop

Bu aşamadan sonra tomcat6 üzerinde bir kaç ayar yapacağız. Editörle açtığımız dosyalarda gerekli düzeltmeleri/eklemeleri yapın.

cd /usr/share/tomcat6
mkdir -p shared/classes/alfresco

nano conf/catalina.properties
shared.loader=${catalina.base}/shared/classes,${catalina.base}/shared/lib/*.jar

nano conf/tomcat6.conf
JAVA_OPTS=”$JAVA_OPTS -Xms128m -Xmx512m -XX:MaxPermSize=128M”

Şimdi açacağımız yeni dosyaya aşağıdaki satırları tümüyle girip kaydedin.

nano shared/classes/alfresco-global.properties

#
# Sample custom content and index data location
#
dir.root=/var/lib/alfresco/alf_data
dir.indexes=/var/lib/alfresco/lucene

#
# Sample database connection properties
#
db.name=alfresco
db.username=alfresco
db.password=alfresco
db.host=localhost
db.port=3306

#
# MySQL connection
#
db.driver=org.gjt.mm.mysql.Driver
db.url=jdbc:mysql://${db.host}:${db.port}/${db.name}
hibernate.dialect=org.hibernate.dialect.MySQLInnoDBDialect

#
# Outbound Email Configuration
#
mail.host=localhost
mail.port=25
mail.encoding=UTF-8
mail.from.default=alfresco@somedomain.com
#mail.username=
#mail.password=
#mail.smtp.auth=true

#
# External locations
#
#ooo.exe=/usr/lib64/openoffice.org/program/soffice.bin
#img.root=./ImageMagick
img.dyn=/usr/lib64
img.exe=/usr/bin/convert
swf.exe=/usr/local/bin/pdf2swf

#
# CIFS configuration
#
cifs.enabled=true
cifs.serverName=sunucunuzunipadresi
cifs.hostannounce=true
cifs.urlfile.prefix=http://sunucunuzunipadresi:8080/alfresco

#
# FTP configuration
#
ftp.enabled=true
ftp.port=8021

MySQL JDBC connector’ü /lib dizinine indirip kuruyoruz

cd /lib
pushd ~
wget http://gd.tuwien.ac.at/db/mysql/Downloads/Connector-J/mysql-connector-java-5.1.13.tar.gz
tar xzvf mysql-connector-java-5.1.13.tar.gz
cp mysql-connector-java-5.1.13/mysql-connector-java-5.1.13-bin.jar /usr/share/tomcat6/lib/

Şimdi Alfresco yüklemesine geçiyoruz.

wget http://dl.alfresco.com/release/community/build-2860/alfresco-community-war-3.3g.tar.gz
tar xzvf alfresco-community-war-3.3g.tar.gz
unzip alfresco.war -d /usr/share/tomcat6/webapps/alfresco
unzip share.war -d /usr/share/tomcat6/webapps/share
cp -r endorsed /usr/java/jdk1.6.0_21/jre/lib/
cp -r extensions/* /usr/share/tomcat6/shared/classes/alfresco/
mysql -u root -p < extras/databases/mysql/db_setup.sql    (Mysql root şifresi soracak girip Enter’a basıyoruz)
popd

mkdir -p /var/lib/alfresco/alf_data
mkdir -p /var/lib/alfresco/lucene
chown -R tomcat:tomcat /var/lib/alfresco

nano /usr/share/tomcat6/webapps/alfresco/WEB-INF/classes/log4j.properties
Düzenle : log4j.appender.File.File=/var/log/tomcat6/alfresco.log

nano /usr/share/tomcat6/webapps/share/WEB-INF/classes/log4j.properties
Düzenle : log4j.appender.File.File=/var/log/tomcat6/alfresco.log

Eğer hata yapmadıysanız herşey çalışıyor olmalı, servisi başlatıp logları kontrol edin eğer hata varsa düzeltin

service tomcat6 start
tail -f /var/log/tomcat6/catalina.out

Loglarda ImageMagick, swftools ve OpenOffice(soffice) ile ilgili hatalar almanız normal henüz onları kurmadık (:

Şimdi browser penceresini yeniden açıyor ve aşağıdaki linklere girip Kullanıcı adı ve parola olarak admin girerek sorunsuz login olup olamadığımıza bakıyoruz.

http://sunucunuzunipadresi:8080/share

http://sunucunuzunipadresi:8080/alfresco

Eğer herşey yolundaysa diğer paketlerin kurulumu için servisi yeniden durduruyoruz.

service tomcat6 stop

ImageMagick ile ek bileşen kurulumlarına başlayalım;

yum install ImageMagick

Şimdi swftools’u derleyeceğiz ama öncesinde gerekli paketleri indirip kuruyoruz;

yum install zlib-devel libjpeg-devel giflib-devel freetype-devel gcc gcc-c++
wget http://www.swftools.org/swftools-0.9.1.tar.gz
tar xzvf swftools-0.9.1.tar.gz
cd swftools-0.9.1
./configure
make
make install

Kurulumu OpenOffice kurulumu ile tamamlıyoruz.

yum install openoffice.org-base openoffice.org-calc openoffice.org-core openoffice.org-draw openoffice.org-graphicfilter openoffice.org-impress openoffice.org-math openoffice.org-writer openoffice.org-xsltfilter openoffice.org-headless

Kurulum bittikten sonra sistem açılışı için bir init scripti oluşturuyoruz

nano /etc/init.d/soffice

Açtığımız dosyaya aşağıdaki alandaki tüm veriyi aynı olacak şekilde kopyalıyoruz.

#!/bin/bash
# chkconfig: 345 20 80
# description: init.d script for headless openoffice.org (2.3+ for RHEL5 32bit)
# credit: Chris Schuld http://chrisschuld.com/2008/10/rhel5-init-initd-script-for-openoffice-org/
#
# processname: soffice
#
# source function library
. /etc/rc.d/init.d/functions

RETVAL=0
SOFFICE_PATH=’/usr/lib64/openoffice.org3/program’
SOFFICE_ARGS=’-accept=socket,host=localhost,port=8100;urp -headless -nofirststartwizard’
SOFFICE_PIDFILE=/var/run/soffice.bin.pid

start_soffice() {
echo -n $”Starting OpenOffice | www.fatihsolen.com”
$SOFFICE_PATH/soffice.bin $SOFFICE_ARGS >/dev/null 2>&1 &
[ $? -eq 0 ] && echo_success || echo_failure
pidof soffice.bin > $SOFFICE_PIDFILE
echo
}
start() {
start_soffice
}
stop() {
echo -n $”Stopping OpenOffice | www.fatihsolen.com”
killproc soffice.bin
echo
}
case “$1″ in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
*)
echo $”Usage: $0 {start|stop|restart}”
esac

Son olarak;

chmod +x /etc/init.d/soffice
chkconfig tomcat6 on
chkconfig soffice on
service soffice start
service tomcat6 start

Tebrikler kurulumu başarıyla tamamladınız...

Fatih Şölen tarafından hazırlanmıştır.