安装Alfresco 3.4.d在Fedora 15(+ Tomcat + PostgreSQL)
本文介绍如何通过“Alfresco Software inc。”安装和设置Alfresco Content Server社区版。 在基于Fedora 15的Web服务器上,将Tomcat Web服务器上的WAR包与postgreSQL数据库作为后端。 对于其他发行版,可能会对软件先决条件的安装过程进行细微更改。 我花了我的时间写这个教程,因为我无法在互联网上找到任何完整的安装程序,主要是因为有一个.bin可执行文件,它可以安装在一个简单的步骤中。 因此,本指南旨在让像我一样想要尽可能多地掌握和理解的人以及那些谁想要将此服务器安装到已经存在的基础设施,并且不希望挖掘维基页面的人。 此外,默认情况下,来自.bin安装的服务器以root身份运行,这是对安全性的潜在威胁。 本指南不仅可以帮助安装产品,而且还可以了解为什么要按照完成方式完成某些工作(对于很少或根本没有知识的用户来说,最有用的是,像我之前一样,只有开始使用Linux)。
什么是Alfresco?
我应该以简单的方式说,这是Sharepoint开源竞争对手,完全符合sharepoint协议,但功能足够强大,以至于需要一本书来详细介绍一切。
它有两个版本,非免费企业版,其中包括开发商的经典商业支持和免费的社区版本,而您获得的唯一支持是互联网上的其他勇敢的灵魂的帖子。
链接到开发人员的几个部分:
- 产品主页: http : //www.alfresco.com/
- 论坛: http : //forums.alfresco.com/en/
- 文档: http : //docs.alfresco.com/3.4/index.jsp
- 支持: http : //support.alfresco.com/
我不保证它会为您工作,因为后来可能会有软件变更,先决条件和主要,这样做将会破坏或无论如何禁止本教程中提到的程序成功完成。
初步说明
在本教程中,我们使用:
Fedora 15 DVD安装媒体
主机名: alfresco.example.com
IP地址: 192.168.1.100
路由器地址: 192.168.1.1
网络掩码: 255.255.255.0
第一个系统用户(不是root): alfadmin
假设(想像)服务器连接到公共Internet。
我们使用我们的计算机通过ssh(Windows上的putty)远程管理服务器,即使您的服务器位于您的身边,也可以将其作为虚拟机在主操作系统下运行
GNU nano
作为我们的主要文本编辑器。 但是请随意使用您的其他任何方式
要求
我们需要一个工作干净的安装Fedora 15(x86或x86_64是无关紧要的),我个人使用x86_64版本,我强烈建议你做同样的事情。
如果还没有安装,或者不知道如何安装Fedora linux,请使用Falko的本教程的前两页,直到初次安装后系统重新启动,如第2页所示。 相应地改变网络设置,将软件选择设置为“最小”而不是“Web服务器”,并且在数据包定制屏幕中仅选择基本系统 - >基础。 我们将从终端安装所有我们需要的。
第一件事
如果您在安装过程中未设置静态IP地址,那么说您有启用DHCP的路由器,则需要立即执行,否则请继续执行下一步。
以root身份登录到服务器控制台。 你将在[root @ alfresco〜]#
提示符下。 执行:
system-config-network
对控制器和dns进行所有必要的更改,保存并退出。 然后重新启动网络:
/etc/init.d/network restart
通过执行以下步骤检查网络是否重新配置:
ifconfig
现在你应该能够以root身份在192.168.1.100
上ssh到ssh。 但不要这样做,首先完成下一步。
保护服务器
在我们继续进行之前,由于我们假设服务器实际上是连接到互联网的,所以我们需要保护它。 我们会做三件事情。
- 重新配置ssh-server,因此它不会允许根登录,并将默认端口22更改为别的东西,较不常见,即60606,
- 设置iptables以允许新端口上的传入连接,
- 添加我们的系统用户,以便通过ssh与他登录。
保护远程登录
如果您尚未从控制台登录到服务器(我的意思是本地控制台,而不是ssh),请以root身份登录,然后执行:
nano /etc/ssh/sshd_config
在第12行未更改的默认文件中有端口22
指令。 复制它,将端口号更改为60606
并取消注释。
然后再次找到PermitRootLogin yes
指令,将其更改为no
,并取消注释,然后保存该文件。 之后重新启动sshd:
service sshd restart
设置iptables
首先检查已经存在的iptables:
iptables -L -v --line-numbers
在默认安装位置'4'将指令接受新的tcp连接在默认ssh端口,我们需要摆脱它,从而执行:
iptables -D INPUT 4
现在我们需要允许连接到端口60606。 执行:
iptables -I INPUT 4 -p tcp --dport 60606 -j ACCEPT
最后保存当前的iptables状态执行:
service iptables save
service iptables restart
添加第一个用户
一切都很好,除了一件事,我们已经禁止自己从ssh,因为root是不允许的,没有其他的系统用户。 时间纠正:
useradd -c "Alfresco system user" -m -n alfadmin
为此用户设置密码:
passwd alfadmin
完成 您可以在第一个命令中为用户设置密码,但是在终端窗口中输入密码的值也将被保存在root用户的.bash_history中,这是不可取的。
现在您可以通过ssh在本地计算机上的终端窗口中执行以下命令登录:
ssh alfadmin@192.168.1.100 -p60606
Alfresco服务器设置
在大多数情况下,软件安装是非常简单的,我们可以在初始安装时对其进行“检查”,但正如我之前提到的,我喜欢最大限度地控制系统。
我有意将安装分为几个部分。
软件先决条件
以超级用户身份登录
在这个时候你应该在alfadmin
用户的控制台提示符下。 获取root权限执行:
su
现在我们将在根目录中创建“ 下载”
文件夹,然后到达:
mkdir /root/Downloads && cd /root/Downloads
Java运行时环境
Open-jdk默认情况下在Fedora上可用,但是对于alfresco,我更喜欢SUN Java。 执行:
wget -O - http://download.oracle.com/otn-pub/java/jdk/6u27-b07/jre-6u27-linux-x64-rpm.bin > sunjava.bin
chmod +x sunjava.bin
./sunjava.bin
/usr/sbin/alternatives --install /usr/bin/java java /usr/java/default/bin/java 20000
ImageMagick
执行:
yum install ImageMagick
Yum将安装软件包本身的所有软件先决条件,因此您不应该忘记忘记某些内容。
开发办公室
我再次喜欢自由。 它是Fedora 15中的默认选择,因此执行:
yum install libreoffice-calc libreoffice-draw libreoffice-graphicfilter libreoffice-impress libreoffice-math libreoffice-writer libreoffice-xsltfilter
Flash插件
由于它不是包系统的一部分,我们将自己下载并安装。 而且,x64软件包处于开发状态,所以我们必须在32位版本中封装64位。
wget http://linuxdownload.adobe.com/adobe-release/adobe-release-i386-1.0-1.noarch.rpm
rpm -vhi adobe-release-i386-1.0-1.noarch.rpm
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-adobe-linux
yum install flash-plugin nspluginwrapper.x86_64 nspluginwrapper.i686 alsa-plugins-pulseaudio.i686 libcurl.i686
SWFTools
这些是开源闪存操纵实用程序。 我们主要安装它们用于PDF2SWF功能。 这些必须编译,所以我们先安装devel包,下载swftools源然后再编译。
yum install zlib-devel libjpeg-devel giflib-devel freetype-devel gcc gcc-c++ make
wget http://www.swftools.org/swftools-0.9.1.tar.gz
tar xvzf swftools-0.9.1.tar.gz
cd swftools-0.9.1
./configure
make && make install
cd ../
后端和网络服务器
PostgreSQL
默认alfresco附带MySQL,但支持postgres一样好。 要安装,初始化并设置为在启动时启动,请执行:
yum install postgresql postgresql-libs postgresql-server
service postgresql initdb
service postgresql start
chkconfig postgresql on
登录postgres作为postgres系统用户,创建数据库用户,数据库和授予权限:
su - -c "psql" postgres
CREATE USER alfrescouser WITH PASSWORD 'alfrescopass';
CREATE DATABASE alfrescodb OWNER alfrescouser ENCODING 'UTF8';
GRANT ALL PRIVILEGES ON DATABASE alfrescodb TO alfrescouser;
\q
更改postgresql配置文件以允许密码登录:
nano /var/lib/pgsql/data/pg_hba.conf
搜索
# IPv4 local connections:
host all all 127.0.0.1/32 ident
并改变它
# IPv4 local connections:
host all all 127.0.0.1/32 password
现在重新启动数据库:
service postgresql restart
Tomcat网络服务器
安装,设置为开机启动然后停止它:
yum install tomcat6 tomcat-native
service tomcat6 start
chkconfig tomcat6 on
service tomcat6 stop
准备alfresco的目录结构:
mkdir -p /var/lib/tomcat6/shared/classes
mkdir -p /var/lib/tomcat6/shared/lib
mkdir -p /srv/www/alfresco/alf_data
获取并复制postgresql jdbc驱动程序:
wget http://jdbc.postgresql.org/download/postgresql-9.0-801.jdbc4.jar
cp ~/Downloads/postgresql-9.0-801.jdbc4.jar /var/lib/tomcat6/shared/lib/
改变tomcat配置。 文件一:
nano /etc/tomcat6/tomcat6.conf
搜索这两个条目(不应该彼此远离):
JAVA_HOME=
JAVA_OPTS=
尽管有任何书写,改变了它们
JAVA_HOME="/usr/bin/java"
JAVA_OPTS="${JAVA_OPTS} -XX:MaxPermSize=512m -Xms128m -Xmx768m -Dalfresco.home=/srv/www/alfresco -Dcom.sun.management.jmxremote"
文件二:
nano /etc/tomcat6/catalina.properties
搜索
shared.loader=
并改变它
shared.loader=${catalina.home}/shared/classes,${catalina.home}/shared/lib/*.jar,/var/lib/tomcat6/shared/classes,/var/lib/tomcat6/shared/lib/
文件三:
nano /etc/tomcat6/server.xml
搜索
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443">
并改变它
<Connector port="8080" protocol="HTTP/1.1" URIEncoding="UTF-8"
connectionTimeout="20000"
redirectPort="8443">
Alfresco WAR包
下载并提取露天社区档案:
wget http://dl.alfresco.com/release/community/build-3370/alfresco-community-3.4.d.zip
unzip -d alfresco alfresco-community-3.4.d.zip
将提取的文件复制到各自的目录中:
cp -r ~/Downloads/alfresco/web-server/shared /var/lib/tomcat6
cp -r ~/Downloads/alfresco/web-server/webapps /var/lib/tomcat6
cp -r ~/Downloads/alfresco/bin /var/lib/tomcat6/bin
cp -r ~/Downloads/alfresco/licenses /var/lib/tomcat6/licenses
cp -r ~/Downloads/alfresco/README.txt /var/lib/tomcat6/README.txt
cp /var/lib/tomcat6/shared/classes/alfresco/web-extension/share-config-custom.xml.sample /var/lib/tomcat6/shared/classes/alfresco/web-extension/share-config-custom.xml
创建和填充alfresco全局属性文件:
nano /var/lib/tomcat6/shared/classes/alfresco-global.properties
贴入:
############################### ## Common Alfresco Properties # ############################### dir.root=/srv/www/alfresco/alf_data web.application.context.url=http://127.0.0.1:8080/alfresco ### database connection properties ### db.driver=org.postgresql.Driver db.url=jdbc:postgresql://localhost:5432/alfrescodb db.username=alfrescouser db.password=alfrescopass ### External executable locations ### ooo.exe=/usr/lib64/libreoffice/program/ ooo.enabled=true img.exe=/usr/bin/convert swf.exe=/usr/local/bin/pdf2swf jodconverter.enabled=true jodconverter.officeHome=/usr/lib64/libreoffice/ jodconverter.portNumbers=8101 ### FTP Server Configuration ### ftp.enabled=true ftp.port=2221 ftp.ipv6.enabled=false ### RMI service ports ### alfresco.rmi.services.port=50500 avm.rmi.service.port=0 avmsync.rmi.service.port=0 attribute.rmi.service.port=0 authentication.rmi.service.port=0 repo.rmi.service.port=0 action.rmi.service.port=0 deployment.rmi.service.port=0
修改share-config-custom文件:
nano /var/lib/tomcat6/shared/classes/alfresco/web-extension/share-config-custom.xml
查找部分:
<config evaluator="string-compare" condition="Remote"> ... </config>
注意它包含在<! - comment - >
标签中。 删除那些删除部分。
修复tomcat文件和文件夹的权限:
chown -R tomcat:tomcat /var/lib/tomcat6 /srv/www/alfresco
最后打开防火墙的访问端口,以便您可以连接到服务器
iptables -I INPUT 4 -p tcp --dport 8080 -j ACCEPT
iptables -I INPUT 4 -p tcp --dport 2221 -j ACCEPT
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 21 -j REDIRECT --to-port 2221
service iptables save
service iptables restart
测试运行
由于所有这些必须完成,最后一件事是首次运行服务器并观察日志文件输出。
在我的设置上,服务器花了差不多20分钟才能启动,所以不要过早放弃。 执行:
service tomcat6 start
在您的网络浏览器中打开http://192.168.1.100:8080/alfresco
或http://192.168.1.100:8080/share
,然后去喝杯咖啡/茶/任何饮料。
故障排除
日志文件的位置如下:
/var/log/tomcat6/catalina.out
/usr/share/tomcat6/alfresco.log
您可能也有兴趣安装“终端任务管理器”并观看现场发生的事情:
yum install htop
htop