Установка Alfresco за 19 шагов
На днях руководство поставило мне задачу установить на сервер программу управления документооборотом – Alfresco. Если быть кратки программа основана на открытом коде. Есть бесплатная версия и платная, уровня предприятия.
Для наших целей используем ОС CentOS 5.3.
Итак приступаем к установке Alfresco:
1. Устанавливаем с нуля CentOS, с базовыми пакетами (mysql, httpd, tomcat – не устанавливаем). Все необходимые пакеты мы установим позже, взяв их из репозитариев.
2. После установки операционной системы, необходимо полностью ее обновить (выкачает из интернета около 350мб):
[root@server]# yum update
3. После того как обновление завершилось устанавливаем пакеты tomcate5, mysql, openoffice, xml, wget:
[root@server]# yum install tomcat5 tomcat5-common-lib tomcat5-jasper \
tomcat5-jsp-2.0-api tomcat5-server-lib tomcat5-servlet-2.4-api 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 \
mysql-server mysql xml-commons-apis wget
4. После установки всех пакетов необходимо удалить из системы два пакета с ненужной нам версии Java:
[root@server]# rpm -e –nodeps java-1.6.0-openjdk java-1.6.0-openjdk-devel
5. Снова обновляем систему:
[root@server]# yum update
6. Теперь создаем необходимые директории:
[root@server]# cd /opt
[root@server]# mkdir alfresco
[root@server]# cd alfresco
7. Закачиваем пакеты Alfresco версии 3.2 в созданную ранее директорию alfresco:
[root@server alfresco]# wget \
http://dl.alfresco.com/release/community/build-2039/alfresco-community-war-3.2.tar.gz \
http://dl.alfresco.com/release/community/build-2039/alfresco-community-sample-extensions-3.2.tar.gz \
http://dl.alfresco.com/release/community/build-2039/alfresco-community-wcm-3.2.tar.gz \
http://mirrors.dotsrc.org/jpackage/1.7/generic/non-free/RPMS/java-1.6.0-sun-compat-1.6.0.06-1jpp.i586.rpm \
http://download.softagency.net/MySQL/Downloads/Connector-J/mysql-connector-java-5.1.5.tar.gz
8. Устанавливаем Java JDK 1.6, для этого необходимо скачать JDK 6 update 6:
8.1 Любым веб-браузером заходим на сайт Sun по адресу – http://java.sun.com/
8.2 Находим строку – Download JDK
8.3 Выбираем платформу – Linux и соглашаемся с лицензии
8.4 Скачиваем файл - jdk-6u6-linux-i586-rpm.bin
При помощи WinSCP или любого другого FTP клиента, закачиваем jdk на сервер, в папку /opt/alfresco/
Далее делаем файл исполняем и запускаем:
[root@server alfresco]# chmod +x jdk-6u6-linux-i586-rpm.bin
[root@server alfresco]# ./jdk-6u6-linux-i586-rpm.bin
Получившийся в ходе предыдущих операций пакет rpm, инсталлируем:
[root@server alfresco]# rpm –Uvh java-1.6.0-sun-compat-1.6.0.06-1jpp.i586.rpm
Далее нужно посмотреть версию и конфигурацию Java в системе:
[root@server alfresco]# alternatives –config java
Вы увидете такие строки:
Selection Command
1 /usr/lib/jvm/jre-1.4.2-gcj/bin/java
*+ 2 /usr/lib/jvm/jre-1.6.0-sun/bin/java
Знак «+» указывает на текущую используемую версию java в системе.
Для выбора версий java, указываем нужную цифру в нижней строке, и жмем enter.
Если все операции выполнены успешно, проверяем наличие в системе всех необходимых нам библиотек java:
[root@server alfresco]# rpm -qa | grep java
Получаем такой вот список:
sun-javadb-common-10.3.1-4.1
sun-javadb-docs-10.3.1-4.1
java-1.4.2-gcj-compat-devel-1.4.2.0-40jpp.115
sun-javadb-core-10.3.1-4.1
sun-javadb-demo-10.3.1-4.1
sun-javadb-javadoc-10.3.1-4.1
gcc-java-4.1.2-46.el5_4.1
java-1.4.2-gcj-compat-1.4.2.0-40jpp.115
sun-javadb-client-10.3.1-4.1
java-1.6.0-sun-compat-1.6.0.06-1jpp
9. После того как установлена java, настраиваем веб-сервер tomcat5, а именно делаем настройку использования системной памяти сервером tomcat. Данная настройка желательна для системы имеющий 2 GB оперативной памяти и выше :
[root@server]# vi /etc/sysconfig/tomcat5
Добавляем в верху конфигурационного файла строчку:
JAVA_OPTS=»$JAVA_OPTS -Xms512m -Xmx512m -XX:MaxPermSize=256M»
10. Теперь разархивируем архив WAR, который нам понадобиться в дальнейшем, для настройки MySQL:
[root@server alfresco]# tar -xzf alfresco-community-war-3.2.tar.gz
11. Приступаем к настройке и созданию БД MySQL.
Включаем в загрузку при старте системы сервер MySQL:
[root@server alfresco]# chkconfig mysqld on
Запускаем MySQL:
[root@server alfresco]# service mysqld start
Задаем пароль пользователю root и общую настройку MySQL при помощи скрипта:
[root@server alfresco]# mysql_secure_installation
Теперь импортируем базу Alfresco:
[root@server alfresco]# mysql -u root -p < ./extras/database/mysql/db_setup.sql
Для проверки после копирования и просмотра нашей базы Alfresco в MySQL выполняем команду:
[root@server alfresco]# mysql
mysql> show databases;
+--------------------+ | Database | +--------------------+ | information_schema | | alfresco | | mysql | | test | +--------------------+ 4 rows in set (0.00 sec)
mysql> exit
12. Создаем репозитарий для Alfresco:
[root@server alfresco]# mkdir -p /var/lib/alfresco/alf_data/
[root@server alfresco]# chown -R tomcat:tomcat /var/lib/alfresco
13. Устанавливаем mysql-connector-java
[root@server alfresco]# tar -xzf mysql-connector-java-5.1.5.tar.gz
[root@server alfresco]# cd mysql-connector-java-5.1.5
[root@server alfresco]# cp mysql-connector-java-5.1.5-bin.jar /usr/share/java/
[root@server alfresco]# cd /var/lib/tomcat5/common/endorsed/
[root@server alfresco]# rebuild-jar-repository /var/lib/tomcat5/common/endorsed mysql-connector-java-5.1.5-bin.jar
14. Устанавливаем Alfresco в веб-сервер Tomcat5
[root@server alfresco]# cd /opt/alfresco
[root@server alfresco]# cp alfresco.war /var/lib/tomcat5/webapps
Стартуем сервер tomcat:
[root@server alfresco]# service tomcat5 start
Ошибок при старте быть не должно!
Останавливаем сервер tomcat:
[root@server alfresco]# service tomcat5 start
15. Разархивируем расширения Alfresco – alfresco-community-sample-extensions-3.2.tar.gz в директорию cс расширениями tomcat5:
[root@server alfresco]# cd /var/lib/tomcat5/shared/classes
[root@server classes]# tar -xzf /opt/alfresco/alfresco-community-sample-extensions-3.2.tar.gz
16. Теперь настроим Alfresco. Для начала переименуем конфигурационный файл – alfresco-global.properties:
[root@server classes]# cd /opt/alfresco
[root@server alfresco]# mv /var/lib/tomcat5/webapps/alfresco/WEB-INF/classes/alfresco-global.properties.sample /var/lib/tomcat5/webapps/alfresco/WEB-INF/classes/alfresco-global.properties
Редактируем файл – alfresco-global.properties:
[root@server alfresco]# vi /var/lib/tomcat5/weapps/alfresco/WEB-INF/classes/ alfresco-global.properties
В конфигурационном файле необходимо раскомментировать следующие строки:
dir.root=/var/lib/alfresco/alf_data
db.username=alfresco
db.password=alfresco (запомним этот пароль, он нам пригодиться для настройки БД MySQL, см. ниже)
db.driver=org.gjt.mm.mysql.Driver
db.url=jdbc:mysql://localhost/alfresco?useUnicode=true&characterEncoding=utf-8
Далее копируем конфигурационный файл в директорию shared, сервера tomcat:
[root@server alfresco]# cp /var/lib/tomcat5/webapps/alfresco/WEB-INF/classes/alfresco-global.properties /var/lib/tomcat5/shared/classes/alfresco-global.properties
Теперь возвращаемся к настройке БД MySQL, и выполняем следующие команды:
[root@server alfresco]# mysql
mysql> set password for ‘alfresco’@'localhost’ = PASSWORD (‘alfresco’);
В скобках указываем пароль который мы указали в файле alfresco-global.properties (см. выше)
Выходим из MySQL
mysql> exit
[root@server alfresco]# cd /var/lib/tomcat5/webapps/alfresco/WEB-INF/classes
Редактируем файл log4j.properties:
[root@server alfresco]# vi log4j.properties
Находим строку ###### File appender definition ####### и прописываем следующее:
log4j.appender.File.File=/var/log/tomcat5/alfresco.log
Теперь все сообщения Alfresco смотрим по адресу – /var/log/tomcat5/alfresco.log
17. Делаем автозапуск и старт сервера tomcat:
[root@server alfresco]# chkconfig tomcat5 on
[root@server alfresco]# service tomcat5 start
18. Если у вас установлен фаерволл, необходимо открыть порт 8080, так как именно по этому порту работает Alfresco.
На этом основная настройка Alfresco закончена, пробуем запустить. Открываем любой веб-браузер и заходим по адресу – http://localhost:8080/alfresco/
По умолчанию – Login: admin Password: admin
Если выдается ошибка 404 и страница не открывается перезагружаем сервер (Как правило виновата Java). При сохранении ошибки изучаем логи Alfresco.
19. Теперь русифицируем Alfresco. На даный момент официальной русификации нет, но есть хорошие люди, которые не пожалели времени и сил и сделали русификацию. К сожалению она от 2006 года, и для второй версии Alfresco, но у меня на версии 3.2 работает. К сожалению русификация не полная, но большая часть русифицирована.
Итак скачиваем языковой пакет версии 1.4 с сайта http://forge.alfresco.com/projects/alf-russian/
Распаковываем содержимое архива в каталог/var/lib/tomcat5/webapps/alfresco/WEB-INF/classes/alfresco/messages/
Теперь копируем и переименовываем языковой конфигурационный файл:
[root@server alfresco]# cp /opt/alfresco/exyensions/extension/web-client-config-custom.xml.samle /var/lib/tomcat5/shared/classes/alfresco/extension/web-client-config-custom.xml
Редактируем данный файл, а именно удаляем все содержимое кроме строк:
<alfresco-config>
<config evaluator=»string-compare» condition=»Languages»>
<languages>
<language locale=»ru_RU»>Russian</language>
</languages>
</config>
</alfresco-config>
На этом русификация закончена.
Полезные ссылки:
Официальный сайт Alfresco – http://www.alfresco.com/
Alfresco в Википедии:
http://ru.wikipedia.org/wiki/Alfresco
http://wiki.alfresco.com/wiki/Download_and_install_Alfresco_in_Linux
Разное об Alfresco (установка, настройка, описание)
http://www.tux.in.ua/articles/1457
http://solarisblog.ru/alfresco_installation_on_solaris10/
http://dmitrykhn.homedns.org/wp/2008/10/alfresco-first-step-setup/


Спасибо за статью. Весьма познавательно.
как быть с пунктом 4. при удалении тянет пакеты от tomcat5
Насколько я помню, какие то зависимости он тянул и удалял… но насчет пакетов от tomcat, такого вроде не было… В любом случаем, если все делаете по данному гайду, проблем быть не должно. Так как я одновременно делал все это и писал этот материал…
peacemaker, а какие именно пакеты от томката он пытается удалить?
…всегда хочется найти свои грабли
ставлю через инсталлятор на полностью обновленный centos 5.4. пакеты он предлагает убить следующие (rpm -e или yum remove)
tomcat5 tomcat5-common-lib ant и java.src (не знаю откуда взялся src). в инсталляторе оказывается есть свой tomcat, так что это полбеды.
еще нашел в их гайдах, что «Due to a bug in Alfresco 3.2r2, if you don’t have OpenOffice installed and running, Alfresco will fail to start and throw an OpenOfficeExcpetion.» OO надо запускать с параметрами soffice «-accept=socket,host=localhost,port=8100;urp;StarOffice.ServiceManager»
-nologo -headless
пока дошел до красивого окна с логином и паролем, ни одна связка alfresco*2 admin*2 не помогает.
зы. по пункту 8. насколько я понимаю при исполнении jdk6u6.bin он уже ставит пакеты, а java-compat.rpm мы выкачали до этого отдельно.
наступило заветное слово «разобрался»
дело было в пароле. для тех, кто ставит через инсталлятор – mysql базу добавить руками по этому гайду. java-compat…rpm тоже взята из гайда.
Эт хорошо что разобрался)… На самом деле довольно таки муторное это дело – ставить Alfresco…
Спасибо, мануал рабочий.
Стоит только заметить, что пункт №4 выполнить необходимо, но только после того как новая машина java будет установлена – иначе эти пакеты просто откажутся удаляться.
Для машины где это все устанавливается необходимо памяти около 1 Gb, например с 512 МБ просто напросто java будет материться на недостаток памяти.
To Tester
Спасибо, за важное дополнение по поводу памяти!
Насчет пункта 4, – я так понял что он должен идти после пункта 8 ?
По поводу пункта 4.
rpm -e –nodeps java-1.6.0-openjdk java-1.6.0-openjdk-devel
Читайте официальную доку
Great work man. Thanks…
Спасибо Riqwel, поправил
Суперский пост! Блог уже в ридере )