Crazy ITer

 
Motto
It is strange that all great men should have some little grain of madness mingled with whatever genius they possess。
---------Moliere

When looking up, one has no occasion for shame before heaven, and below, one has no occasion to blush before men。
---------Mencius

The mechanic, who wishes to do his work well, must first sharpen his tools
---------Confucius

Python
SQL
UML
Zope&Plone
Ajax & Script
Jabber
Linux
Zope的安装
2007年1月21日星期日
先弄明白Zope支持什么样的Python版本,如果版本不对的话,极有可能安装不成功。在安装前,应该养成首先查看安装目录下的readme.txt文件的习惯。

一:安装Python

要点:

1:安装过程

支持多线程:

$./configure --with-threads
$make
$make install

2:可能问题

a:Can't locate Tcl/Tk libs and/or headers

这是因为没有安装tck和tk的库和头,在package里搜索tck和tk关键字,找到后安装就行。
如果要禁止这项安装,可以试试:
export PYTHON_DISABLE_MODULES="_tkinter"后再编译。

b:execvp ":/bin:/usr/bin"对某个文件的访问遭到拒绝.
这可能是因为解压缩的原因,可能tar的版本过老,不支持长路径名。也许是用了老的zip或rar解压缩软件造成长路径名丢失。

二:安装Zope

1:安装过程
a:测试Python版本是否正确;
$./configure

b:设置Zope安装路径
$./configure --prefix /usr/local/zope-3.3.0b1

c:设置Python路径
$./configure --with-python /usr/local/bin/python

make
make install

d:安装后的配置
如果是zope-3.3.0b1,基本上不用配置,直接在浏览器里访问http://localhost:8080,将可以进入Zope3首页。
但是,如果在/instance/bin下运行runzope时,不能启动的话,首先还得先进行一些配置。

:查看runzope或者zopectl中的默认zope用户名,一般为zope
:在linux中设置用户组和用户名
$groupadd zope
$useradd -g zope zope
:为instance实例下的var目录,添加others用户存储文件的属性
$chmod o+t var

2:可能问题

a:Zope starting all instances....'*' is an old/purged instance, not started

b:linux系统启动时,zope没有启动

:首先查看/etc/init.d/下是否有zope的文件,没有则生成一个zope文件,内容如下:

c:在调用zopectl stop终止zope服务时,出现daemon manager not running.
三:安装Plone

四:自启动
或者定义一个自启动文件放在/etc/init.d下,用chkconfig配置自启动:
如文件名为xiaohui,内容如下:
#!/bin/sh
# Startup script for Zope
#
# chkconfig: 2345 80 20
# description: Zope, an powerful and flexible web application server
#
# config: /var/www/xiaohui/etc/zope.conf

# Source function library.
. /etc/init.d/functions

RETVAL=0
zopectl="/var/www/xiaohui/bin/zopectl"
prog="zope"

start() {
# action $"Starting $prog: " $zopectl start
echo -n $"Starting $prog: "
daemon $zopectl start >/dev/null 2>&1 || :
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/$prog
return $RETVAL
}

stop() {
action $"Stopping $prog: " $zopectl stop
RETVAL=$?
[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$prog
return $RETVAL
}

restart() {
stop
start
}

case "$1" in
start)
start
;;
stop)
stop
;;
status)
$zopectl status
;;
restart)
restart
;;
condrestart)
[ -e /var/lock/subsys/$prog ] && restart
;;
*)
echo $"Usage: $0 {start|stop|status|restart|condrestart}"
RETVAL=1
esac

exit $REVAL

#chmod +755 xiaohui
#chkconfig --add xiaohui
#chkconfig xiaohui on
#reboot

标签: , ,

posted by William @ 01:10  
0 Comments:
发表评论
<< Home
 
About Me

Name: William
Home: Pudong, Shanghai, China
About Me: Here is a collection of my program notes.I'd like to put all my notes and learning together.Welcome anybody to help me to perfect it.
See my complete profile
Previous Post
Archives
Links
© 2005 Crazy ITer Template by Isnaini Dot Com