linux平台下Zope/Plone的安装
[2007-06-14 00:00:00]

linux平台下Zope/Plone的安装




转自:http://beauty.run-to.com/TechDocs/Platform/document.2006-07-10.7900717854
Stable Zope/Plone ZEO平台搭建过程
一、所用平台版本
  操作系统:RedHat Liunx AS4
  Python版本: Python 2.4.1
  Zope版本:Zope 2.7.5-final
  Plone版本:Plone 2.0.5
  其他相关产品:详见后面附表
二、操作系统安装过程
1、装入RedHat Liunx AS4光盘之后重新启动计算机,则会进入界面“CD found”,选择<skip>跳过;
2、进入安装界面,根据提示<next>;
3、语言选择
  使用鼠标来选择你想在安装中使用的语言(简体中文)。选择恰当的语言会在稍后的安装中帮助你定位时区。安装程序将会试图根据你在这个屏幕上所指定的信息来选择恰当的时区。当你选定了恰当的语言后,点击「下一步」 来继续;
4、键盘配置(默认 U.S.English);
5、鼠标配置(默认);
6、磁盘分区设置
  本系统分区选择用Disk Druid手动分区,界面如图所示:
  供参考分区方式:
    主分区 / 35G
        /boot 100M
        swap 1G
    扩展分区
        /src 15G
        /Website 35G
        /Cache 15G
        /backup
7、引导装载程序配置
  无特殊情况不用设置,默认从磁盘安装即可,点击「下一步」 来继续;
  供参考引导装载程序配置:
    (1)选择高级控制
    (2)选择LBA32
    (3)选择安装在MBR主引导记录上
    (4)调整引导顺序
 
8、网络配置
  如果你的电脑是动态分配IP,这一步你就用默认的,直接点击<下一步>。如果你要手工配置IP地址就点击<编辑>按钮,弹出“编辑接口eth0”对话框后,把上面的“使用 DHCP 进行配置”的小勾去掉,然后就可以在“IP 地址”和“子网掩码”栏里输入你的IP地址和子网掩码,然后点击<确定>。如图所示:
  手工设置主机名和其它设置信息,如图所示:
  点击「下一步」 来继续;
9、防火墙配置
  无特殊情况选择无防火墙选项,点击「下一步。要在安装完毕后改变你的安全配置,使用安全级别配置工具。在root用户界面下键入:setup,选择防火墙设置即可;
10、语言支持选择
  语言支持这一步把3个Chinese选上就行了,他们分别是香港繁体,简体中文,台湾繁体。如果你不需要繁体,可以不选繁体,如果你要其他的语言支持,选上相应的选项就行了,点击<下一步>;
11、时区配置
  通过选择最接近你的计算机的物理位置的城市来设置时区。
  选择时区的方法有两种:
  (1)用鼠标在互动地图上点击指定城市(用黄点表示)。一个红色的 X 符号会出现来标明你的选择。
  (2)你还可以在屏幕底部的列表中选择时区(亚洲/哈尔滨 -- 黑龙江)。使用鼠标点击位置来突出显示你的选择。
12、设置根口令
  这一步是配置系统账户。根用户(就是root用户)口令必需填。如果你还要添加其他用户就点击<添加>按钮。点击<下一步>;
13、软件包组选择
  你已经完成了多数安装选择,现在就可以确认要为系统选择默认软件包还是定制软件包。
  「默认软件包组」屏幕会出现,详细列举你的红帽企业 Linux 安装的默认软件包集合。该屏幕会根据你要安装的红帽企业 Linux 版本的不同而有所不同。
  要进一步定制你的软件包,选择屏幕上的「定制要安装的软件包集合」选项。点击「下一步」会把你带到「选择软件包组」屏幕。你可以选择根据功能归类的软件包组(譬如,「X 窗口系统」、「编辑器」);单个软件包;或者两者的组合。
  在定制安装中选择「全部」(在组件列表的结尾处)会安装包括在红帽企业 Linux 中的所有软件包。
  选定了软件包组后,点击「细节」来查看哪些软件包会被默认安装,还可以在该组中添加或删除可选软件包。
  通常情况下,只要硬盘空间允许,推荐在定制安装中选择「全部」。
14、准备安装
  如果由于某种原因,你宁愿不继续安装进程,这是你可以安全取消并重新引导系统的最后机会。一旦你按下了「下一步」按钮,分区将会被写入,软件包将会被安装。如果你想中止安装,你现在就应该在任何信息被重新写入任何硬盘驱动器之前重新引导;
15、安装软件包
  到了这一步,在所有软件包被安装之前你将不必进行任何操作。安装的快慢要依据你所选择的软件包数量和你的计算机的速度而定;
16、其余配置
  剩下的图形化界面(X)配置、显示器配置均选择默认配置。定制图形化配置选择“文本”。
17、安装结束,重新启动服务器,进入Linux。
18、设置启动的时候关闭xwindows服务。
  当系统所需软件均以安装完毕,不再需要xwindows界面帮助提供调试信息的时候,需要手工设置启动的时候关闭xwindows服务,以提高系统的性能和安全性。设置过程如下:
# cd /etc/# vi inittab   键入"i"进入插入状态,将原文中的如下语句
id:5:initdefault:修改为
id:3:initdefault:即可。
19、修改登陆界面语言设置
  由于在安装系统时设定系统语言为中文,则会造成部分较低版本ssh软件在远程登陆服务器时会出现乱码,特别是在使用vi编辑文件时,会造成较大的困扰。
  如果碰到了此类问题,需要手工将登陆界面语言设置为英文。设定步骤如下:
# cd /etc/sysconfig# vi i18n   键入"i"进入插入状态,在原文末端添加如下语句:
LC_ALL=POSIX即可。
三、开发平台安装准备工作
1、安装usb存储设备
  插入usb存储设备。对于高版本的Liunx,可能会对usb存储设备进行自动映射。此映射目录一般为/media/usbdisk,可先查看该目录,如不存在,则需进行的手工映射操作。
  手工映射操作步骤如下:
  (1)键入如下命令:
# fdisk -l此命令执行结果将会列出当前所有可用磁盘分区,在列表中找出相应的usb存储设备(假设为/dev/sdb1)。
  (2)然后键入如下命令:
# mkdir /mnt/usb# mount /dev/sdb1 /mnt/usb即完成了usb存储设备的虚拟目录映射,对/mnt/usb目录进行操作即可实现对usb存储设备的操作。
2、拷贝文件
  将Python-2.4.1.tgz、Zope-2.7.5-final.tgz、Plone-2.0.5.tar.gz以及其他所需产品文件包拷贝到Linux服务器的/src目录下。
3、注意事项
  如果插入usb存储设备之后系统识别报错,很可能是因为usb存储设备的根目录下有中文文件名/文件夹名造成的。请在使用之前保证usb存储设备能访问到的相应目录中均无中文文件名/文件夹名。
四、Python的安装
1、解压安装文件
# tar -xzvf Python-2.4.1.tgz2、安装Python
# cd Python-2.4.1# ./configure# make# make install  Python安装完成。
五、Zope的安装
1、解压安装文件
# tar -xzvf Zope-2.7.5-final.tgz2、安装Zope
# cd /src/Zope-2.7.5-final# ./configure --with-python=/usr/local/bin/python2.4  --prefix=/opt/Zope-2.7# make#make install  Zope安装完成。
六、Zope实例的安装
1、安装Zope实例
# cd /opt/Zope-2.7/bin# ./mkzopeinstance.py这里会让我们选择实例的安装路径:
Please choose a directory in which you’d like to installZope "instance home" files such as database files, configurationfiles, etc.Directory: /website/zopeinst按照提示输入用户名和密码:
Please choose a username and password for the initial user.These will be the credentials you use to initially manageyour new Zope instance.Username: adminPassword: ********Verify password: ********2、编辑配置文件
# cd /website/zopeinst/etc/# vi zope.conf (1)键入"/"进入查找状态,输入"debug-mode"之后回车,一直按"n"(查找下一个)直至查找到如下位置
# Example:##    debug-mode on   键入"i"进入插入状态,在如上所示语句之后输入语句如下:
debug-mode off(2)键入"/"进入查找状态,输入"effective-user"之后回车,一直按"n"(查找下一个)直至查找到如下位置
# Example:##    effective-user chrism   键入"i"进入插入状态,在如上所示语句之后输入语句如下:effective-user zope(3)键入"/"进入查找状态,输入"http-server"之后回车,一直按"n"(查找下一个)直至查找到如下位置
<http-server>  # valid keys are "address" and "force-connection-close"  address 80  # force-connection-close on</http-server><http-server>  # valid keys are "address" and "force-connection-close"  address 8080  # force-connection-close on</http-server><ftp-server>  # valid key is "address"  address 8021</ftp-server>  根据具体情况,设置需要的http端口,关闭不需要的http端口,关闭ftp端口。范例如下:
#<http-server>#  # valid keys are "address" and "force-connection-close"#  address 80#  # force-connection-close on#</http-server><http-server>  # valid keys are "address" and "force-connection-close"  address 8080  # force-connection-close on</http-server>#<ftp-server>#  # valid key is "address"#  address 8021#</ftp-server>(4)键入":"进入命令行状态,输入"wq"(存盘退出命令),即完成了Zope实例的配置。
3、为用户Zope赋权限
(1)创建用户zope:
#useradd zope(2)赋予zope用户对于整个Zope实例的所有管理权限:
#chown –R zope:zope /website/zopeinst4、测试实例是否正确安装
# cd /website/zopeinst/bin/# ./zopectl -d start# ./zopectl status  如果返回结果显示“program running; pid=****”,则说明实例程序已经正常运行。
# netstat -ln --tcp  如果返回结果列表中,列出了配置文件中设定的http端口,则说明端口已经正确开启。
  进入xwindows界面,打开浏览器,访问本机的指定端口,例如“http://127.0.0.1:8080”,如果显示“Zope Quick Start ”页面,则说明Zope实例已经正确安装。
4、在个别情况下,通过浏览器访问Zope实例时会出现缺少用户的提示,通过安装zope实例zopeinst时创建的用户名及密码来访问ZMI时,无法访问。解决方式如下:
# cd /website/zopeinst/bin# ./zopectl adduser admin ********# ./zopectl -d restart然后用新创建的用户名及密码访问ZMI界面,即可成功登录。
5、设置服务器自启动Zope实例
  如果该Zope实例有跟随服务器启动自行启动的需求,则需要进行进一步的设定。
# cd /etc/rc.d/# vi rc.local  添加如下所示语句:
/usr/rjxh/bin/zopectl -d start即完成了Zope实例跟随服务器启动自行启动的设定。
七、Plone及其他所需产品的安装
  迄今为止,Stable Zope/Plone ZEO平台除了Plone2.0.5之外,涵盖的其他产品如下:
序号
 产品名称
 版本
 备注
 
1
 SimplePortlet
 1.0beta1
 便捷制作Portlet的产品
 
2
 LocalFS
 LocalFS-1-3-andreas
 本地目录映射产品
 
3
 ZopeChinaPak
 0.3
 中文支持补丁产品
 
4
 CJKSplitter
 0.6
 中文断字产品
 
5
 CMFBoard
 2.2.1
 论坛产品
 
6
 ZMySQLDA
 2.0.9b3
 MySQL数据库连接产品
 
7
 ZGDChart
 0.6.5
 绘图产品
 
8
 QuickImporter
 0.2
 便捷导入模块产品
 
  而在Plone2.0.5的产品包中,还需要对以下产品进行修改:
序号
 产品名称
 修改前版本
 修改后版本
 备注
 
1
 CMFPlone
 2.0.5
 2.0.5.rt
 修改了导航树相关文件
(StatelessTree.py,
StatelessTreeNav.py,
PloneTool.py)
 
2
 Epoz
 0.8.5
 0.8.5.rt_060310
 定制了工具栏;
新增了上传图片、文件功能;
修正了大字体显示不全bug;
定制了样式、字体、字号菜单。
 
1、Plone 2.0.5的安装
(1)在安装产品之前,需要关闭Zope实例注册的服务。
# cd /website/zopeinst/bin/# ./zopectl stop(2)Plone2.0.5采用直接解压缩到实例的产品目录($INSTANCE/Products)下的方式进行安装。解压缩之后,确认下实例的产品目录($INSTANCE/Products)下已存在Plone-2.0.5目录。
(3)进一步修改Zope实例配置文件。
# cd /website/zopeinst/etc/# vi zope.conf   键入"/"进入查找状态,输入"products"之后回车,一直按"n"(查找下一个)直至查找到如下位置
# Example:##    products /home/chrism/projects/myproducts  键入"i"进入插入状态,在如上所示语句之后输入语句如下:
products  $INSTANCE/Products/Plone-2.0.5  键入":"进入命令行状态,输入"wq"(存盘退出命令),即完成了Zope实例的配置。
(4)赋予zope用户对于新安装产品目录的所有管理权限:
#chown –R zope:zope /website/zopeinst/Plone-2.0.5(5)启动Zope服务载入新安装的产品,具体命令如下所示:
# cd /website/zopeinst/bin/# ./zopectl -d restart(6)确认Zope服务正常开启、实例端口正常开启、实例ZMI界面可以正常进入,并能够在ZMI界面下新建Plone站点。
2、其他Zope产品的安装
  其他Zope产品的安装方式基本同上,对于单独的一个产品不再需要新建产品集目录。推荐在每个产品安装完毕之后,都重新启动Zope服务并测试确认Zope服务器工作正常。
  其中部分产品如果想要在具体网站中使用,还需要在网站中通过Portal-quickinstaller所提供的接口将所需文件拷贝到具体网站中。
 
如果没有安装ZEO服务器的需要,则Stable Zope/Plone平台的搭建至此已经完成。
 
如果有安装ZEO服务器的需要,可以继续阅读本文。
 
八、ZEO服务器的安装
1、安装ZEO服务器实例
# cd /opt/Zope2.7/bin# ./mkzeoinstance.py /website/zeosvr2、核对配置文件
# cd /website/zeosvr/etc# vi zeo.conf(1)键入"/"进入查找状态,输入"zeo"之后回车,一直按"n"(查找下一个)直至查找到如下位置
<zeo>  address 9999  read-only false  invalidation-queue-size 100  # monitor-address PORT  # transaction-timeout SECONDS</zeo>   根据实际情况,修改address后的ZEO服务端口。
(2)键入"/"进入查找状态,输入"Zope"之后回车,一直按"n"(查找下一个)直至查找到如下位置
  python /usr/local/bin/python  zdrun /opt/Zope2.7/lib/python/zdaemon/zdrun.py   确认此处设定的Python目录和Zope目录均正确无误。
(3)如对配置文件有所修改,键入":"进入命令行状态,输入"wq"(存盘退出命令),即完成了ZEO服务器实例的配置。
九、ZEO客户端的安装
1、如《六》中所述安装Zope实例。
2、对配置文件进行进一步的修改。
# cd /website/zopeinst/etc/# vi zope.conf (1)键入"/"进入查找状态,输入"zodb_db"之后回车,一直按"n"(查找下一个)直至查找到如下位置
<zodb_db main>    # Main FileStorage database    <filestorage>      path $INSTANCE/var/Data.fs    </filestorage>    mount-point /</zodb_db>   将该程序段尽数屏蔽。
(2)将如上所示程序段落之后的
#<zodb_db main>
#   mount-point /
#   # ZODB cache, in number of objects
#   cache-size 5000
#   <zeoclient>
#     server localhost:9999
#     storage 1
#     name zeostorage
#     var $INSTANCE/var
#     # ZEO client cache, in bytes
#     cache-size 20MB
#     # Uncomment to have a persistent disk cache
#     #client zeo1
#   </zeoclient>
# </zodb_db>
取消屏蔽。并根据实际情况,修改server后的ZEO服务器地址及端口设定。
(3)键入":"进入命令行状态,输入"wq"(存盘退出命令),即完成了ZEO客户端实例的配置。