求助,安装Zope后执行出现错误。

软件和网站开发以及相关技术探讨
回复
斌斌无理
帖子: 26
注册时间: 2005-08-11 11:23

求助,安装Zope后执行出现错误。

#1

帖子 斌斌无理 » 2005-10-22 23:53

编译安装都通过,

代码: 全选

[root@MagicLinux Zope-2.8.1-final]# /usr/local/zope/instance1/bin/runzope
Traceback (most recent call last):
  File "/usr/local/zope/lib/python/Zope2/Startup/run.py", line 56, in?
    run()
  File "/usr/local/zope/lib/python/Zope2/Startup/run.py", line 21, inrun
    starter.prepare()
  File "/usr/local/zope/lib/python/Zope2/Startup/__init__.py", line 94, in prepare
    self.dropPrivileges()
  File "/usr/local/zope/lib/python/Zope2/Startup/__init__.py", line 213, in dropPrivileges
    return dropPrivileges(self.cfg)
  File "/usr/local/zope/lib/python/Zope2/Startup/__init__.py", line 382, in dropPrivileges
    raise ZConfig.ConfigurationError(msg)
ZConfig.ConfigurationError: A user was not specified to setuid to; fix this to start as root (change the effective-user directive in zope.conf)
春不撩人人自困,无际风光似黄昏,有朝一日故人聚,又是江南落花魂。
Intel Celeron 1.7G + HY 256M DDR 266 + KST 512M DDR400 + ST 40G + WD 1600JD + CM8738 + NVIDIA GeForce 2 MX (generic)
OS:win2000 profession & MagicLinux 1.2 final
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

#2

帖子 eexpress » 2005-10-22 23:55

不是提示要你修改zope.conf。先用root权限
● 鸣学
头像
oneleaf
论坛管理员
帖子: 10441
注册时间: 2005-03-27 0:06
系统: Ubuntu 12.04

Re: 求助,安装Zope后执行出现错误。

#3

帖子 oneleaf » 2005-10-23 1:32

斌斌无理 写了:编译安装都通过,

代码: 全选

[root@MagicLinux Zope-2.8.1-final]# /usr/local/zope/instance1/bin/runzope
Traceback (most recent call last):
  File "/usr/local/zope/lib/python/Zope2/Startup/run.py", line 56, in?
    run()
  File "/usr/local/zope/lib/python/Zope2/Startup/run.py", line 21, inrun
    starter.prepare()
  File "/usr/local/zope/lib/python/Zope2/Startup/__init__.py", line 94, in prepare
    self.dropPrivileges()
  File "/usr/local/zope/lib/python/Zope2/Startup/__init__.py", line 213, in dropPrivileges
    return dropPrivileges(self.cfg)
  File "/usr/local/zope/lib/python/Zope2/Startup/__init__.py", line 382, in dropPrivileges
    raise ZConfig.ConfigurationError(msg)
ZConfig.ConfigurationError: A user was not specified to setuid to; fix this to start as root (change the effective-user directive in zope.conf)
直接使用apt安装 2.8不会有问题。
斌斌无理
帖子: 26
注册时间: 2005-08-11 11:23

#4

帖子 斌斌无理 » 2005-10-23 20:59

eexpress 写了:不是提示要你修改zope.conf。先用root权限

兄弟,我不知道需要修改什么,安装说明上说默认就可以启动的呀。
春不撩人人自困,无际风光似黄昏,有朝一日故人聚,又是江南落花魂。
Intel Celeron 1.7G + HY 256M DDR 266 + KST 512M DDR400 + ST 40G + WD 1600JD + CM8738 + NVIDIA GeForce 2 MX (generic)
OS:win2000 profession & MagicLinux 1.2 final
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

#5

帖子 eexpress » 2005-10-23 21:03

我没有使用这个。只是看提示。
ZConfig.ConfigurationError: A user was not specified to setuid to; fix this to start as root (change the effective-user directive in zope.conf)

说是没有指定用户,uid不对。
● 鸣学
tearshine
帖子: 7
注册时间: 2005-10-23 20:32

#6

帖子 tearshine » 2005-10-23 21:06

1.use 'sudo -s -H' to become root
2.'chmod ' permit someone to use it!
斌斌无理
帖子: 26
注册时间: 2005-08-11 11:23

#7

帖子 斌斌无理 » 2005-10-23 21:50

tearshine 写了:1.use 'sudo -s -H' to become root
2.'chmod ' permit someone to use it!

兄弟,您也看到了,我可是一直在用root在操作也。
春不撩人人自困,无际风光似黄昏,有朝一日故人聚,又是江南落花魂。
Intel Celeron 1.7G + HY 256M DDR 266 + KST 512M DDR400 + ST 40G + WD 1600JD + CM8738 + NVIDIA GeForce 2 MX (generic)
OS:win2000 profession & MagicLinux 1.2 final
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

#8

帖子 eexpress » 2005-10-23 21:56

你先看下那个配置文件里面有没有uid设置。要不就要等用过的人。
● 鸣学
头像
jaguar00
帖子: 227
注册时间: 2005-10-19 23:48
来自: 大山丛林

#9

帖子 jaguar00 » 2005-10-23 22:12

核心 zope 安装:

假定安装过程中使用的是 root 用户。

获取软件包的当前可用的稳定版本:
python 2.1.3: http://www.python.org/ftp/python/2.1.3/Python-2.1.3.tgz
zope 2.6.2: http://zope.org/Products/Zope/2.6.2/Zope-2.6.2-src.tgz

Zope 的当前版本需要与 python 2.1 一起工作,不能与系统自带的更高的版本系列一起工作,并且需要启用多线程配置。

tar -zxvf Python-2.1*.tgz
cd Python-2.1*
./configure --with-threads
make
make install

python 2.1 被安装到 /usr/local/bin 下面,在安装与 Zope 有关的所有软件包的时候,凡是执行 python setup_script.py 的命令行都需要改为 python2.1 setup_script.py,确保相应的模块被安装到 /usr/local/lib/python2.1 下面。

假定把 Zope 安装到 /usr/local/Zope 目录下。

tar -zxvf Zope-2.6.2.tgz
mv Zope-2.6.2 /usr/local/Zope
cd /usr/local/Zope
make

记住屏幕上显示的初始用户的名字 admin 和随机生成的口令,可以在用这个口令登录到 Zope 的 web 管理界面时更改口令,或现在就执行下面的命令行来更改 admin 用户的口令:

python2.1 zpasswd.py inituser

Zope 的安装完成,下面做的是进一步的定制。

useradd zope
chown -R root /usr/local/Zope
chmod o+t var
mkdir var/gadfly
mkdir var/gadfly/demo
mkdir var/mnt
chown -R zope var/*

Zope 的控制脚本有两个 start,stop。编辑一个可以放置到 /etc/init.d 中的 zope 控制脚本:

if [ $# -ne 1 ]; then
echo need one argrument: start, stop or restart
exit 1
fi
ZOPE_HOME=/usr/local/Zope
case $@ in
start)${ZOPE_HOME}/start -u zope & ;;
stop)${ZOPE_HOME}/stop ;;
restart)${ZOPE_HOME}/stop ; ${ZOPE_HOME}/start -u zope & ;;
esac

启动 Zope:

./zope start

用浏览器访问 http://localhost:8080/。可以见到一个 Zope Quick Start 页面,其中有指向 The Zope Book 和例子的连接,其中 Zope Management Interface 连接指向 Zope 管理界面,也可以直接用 http://localhost:8080/manage 访问。从其他机器上访问,把这里的 localhost 替换为实际的域名或 IP。

到此就可以读教程,熟悉一下 Zope 的使用然后继续安装。

本地化和内容管理构件的安装

下面继续安装 CMF 和 plone, 为了显示中文还需要安装本地化包和翻译包,获取软件包的当前可用的稳定版本:
zope CMF 1.3.3: http://cmf.zope.org/download/CMF-1.3.3/CMF-1.3.3.tar.gz
plone 1.0.5: http://prdownloads.sourceforge.net/plon ... z?download
Localizer 1.0.1: http://prdownloads.sourceforge.net/lleu ... z?download
TranslationService 0.4: http://zope.org/Members/efge/Translatio ... ce-0.4.tgz

plone 需要与 zope CMF 1.3 一起工作。安装 CMF:

tar -zxvf CMF-1.3.3.tar.gz
mv CMF-1.3.3 /usr/local/Zope/CMF
cd /usr/local/Zope/CMF

编辑一个 run 文件:

INSTANCE_HOME=/usr/local/Zope
SOFTWARE_HOME=/usr/local/Zope/lib/python

ln -s ${INSTANCE_HOME}/CMF/CMFCore ${SOFTWARE_HOME}/Products/CMFCore
ln -s ${INSTANCE_HOME}/CMF/CMFDefault ${SOFTWARE_HOME}/Products/CMFDefault
ln -s ${INSTANCE_HOME}/CMF/CMFTopic ${SOFTWARE_HOME}/Products/CMFTopic
ln -s ${INSTANCE_HOME}/CMF/CMFCalendar ${SOFTWARE_HOME}/Products/CMFCalendar

运行这个 run 脚本完成 CMF 的安装。

安装 plone:

tar -zxvf CMFPlone1.0.5.tar.gz
mv CMFPlone-1.0.5 /usr/local/Zope/CMFPlone
cd /usr/local/Zope/CMFPlone

编辑一个 run 文件:

INSTANCE_HOME=/usr/local/Zope
SOFTWARE_HOME=/usr/local/Zope/lib/python

ln -s ${INSTANCE_HOME}/CMFPlone/CMFPlone ${SOFTWARE_HOME}/Products/CMFPlone
ln -s ${INSTANCE_HOME}/CMFPlone/i18n ${SOFTWARE_HOME}/Products/i18n
ln -s ${INSTANCE_HOME}/CMFPlone/Formulator ${SOFTWARE_HOME}/Products/Formulator
ln -s ${INSTANCE_HOME}/CMFPlone/DCWorkflow ${SOFTWARE_HOME}/Products/DCWorkflow

运行这个 run 脚本完成 plone 的安装。

安装完产品(构件)之后,需要重新启动 Zope 使之生效。

登入 Zope 的 web 管理界面,增加一个 Plone Site,就有了一个现成的内容管理系统了。

安装 Localizer 和 TranslationService 包:

tar -zxvf Localizer-1.0.1.tgz
mv Localizer /usr/local/Zope/lib/python/Products
tar -zxvf TranslationService-0.4.tgz
mv TranslationService /usr/local/Zope/lib/python/Products

后续配置参见 http://www.plone.org/development/i18n/howto 即可。

与 apache 的连接

假定 Apache 2.0.* 安装在 /usr/local/apache 目录下。

获取 mod_fastcgi 模块:
mod_fastcgi 2.4.0 :http://www.fastcgi.com/dist/mod_fastcgi-2.4.0.tar.gz

开始安装:

tar -zxvf mod_fastcgi-*.tar.gz
cd mod_fastcgi-*
cp Makefile.AP2 Makefile
make top_dir=/usr/local/apache
make install

编辑 Apache 配置文件 /usr/local/apache/conf/httpd.conf,增加如下内容:

LoadModule fastcgi_module modules/mod_fastcgi.so

FastCgiExternalServer /usr/local/apache/htdocs/zope \
-socket zope.soc \
-pass-header Authorization

<Location /zope>
SetHandler fastcgi-script
</Location>

编辑 Zope 的启动文件 /usr/local/Zope/start, 更改启动 ZServer 的选项。

exec /usr/local/bin/python2.1 $cwd/z2.py -f - -w - -F /usr/local/apache/logs/fastcgi/zope.soc -D "$@"

停止对 8080 和 8021 端口的监听,启用 fastcgi 连接。

重新启动 Apache 和 Zope。对 Zope 的访问变为 http://localhost/zope
与 PostgreSQL 的连接

假定 PostgreSQL 安装在 /usr/local/pgsql 目录下PostgresSQL 的源文件在 /usr/local/src/postgres-7.* 目录下。

获取下列软件包:
mxDateTime 2.0.5 : http://www.egenix.com/files/python/egen ... 0.5.tar.gz
psycopg 1.1.10 : http://initd.org/pub/software/psycopg/p ... .10.tar.gz

mxDateTime 为 python 提供对数据库的日期时间类型的处理。

tar -zxvf egenix-mx-base-*.gz
cd egenix-mx-base-*
python2.1 setup.py install

psycopg 是 python 访问 PostgreSQL 数据库的适配器,软件包中还带有 ZPsycopgDA,它是 Zope 访问 PostgreSQL 数据库的适配器。

确保安装了 PostgreSQL 的全部头文件:

cd /usr/local/src/postgresql-*
make install-all-headers

确保可以找到动态库文件 libpq.so,如果它不在 /lib /usr/lib 下,则需要编辑 /etc/ld.so.conf。增加一行

/usr/local/pgsql/lib

执行命令使之生效。

ldconfig

开始安装 psycopg:

tar -zxvf psycopg-*.gz
cd psycopg-*

编辑一个 run 文件。

./configure --with-python=/usr/local/bin/python2.1 \
--with-zope=/usr/local/Zope \
--with-mxdatetime-includes=/usr/local/lib/python2.1/site-packages/mx/DateTime/mxDateTime \
--with-postgres-includes=/usr/local/pgsql/include \
--with-postgres-libraries=/usr/local/pgsql/lib
make
make install
make install-zope

执行这个 run 文件完成 psycopg 的安装。
ZODB 到关系数据库的映射

获取下列软件包:
DBTab 1.2.1 : http://hathaway.freezope.org/Software/D ... 2.1.tar.gz
Ape 0.7.1 : http://hathaway.freezope.org/Software/A ... 7.1.tar.gz

DBTab 使用配置文件来设置数据库连接。使用它可以挂装多个数据库。

tar -zxvf DBTab-*.gz
mv DBTab /usr/local/Zope/lib/python/Products
cd /usr/local/Zope/lib/python/Products/DBTab

编辑一个 run 文件

SOFTWARE_HOME=/usr/local/Zope/lib/python
INSTANCE_HOME=/usr/local/Zope

ln -s ${SOFTWARE_HOME}/DBTab/custom_zodb.py ${INSTANCE_HOME}/custom_zodb.py
cp ${SOFTWARE_HOME}/DBTab/dbtab.conf.in ${INSTANCE_HOME}/dbtab.conf

运行这个文件完成 DBTab 的安装。

Ape 把 Zope 对象存储到文件系统或关系数据数据库中。

tar -zxvf Ape-0.7*.gz
mv Ape /usr/local/Zope/lib/python/Products

建立存储 ZODB 对象的关系数据库和操纵它的用户,授权这个用户能建立数据库、不能建立用户:

su postgres
createuser -A -d -P zope
createdb -U zope zodb
exit

按 Ape 的 README.txt 文件的说明编辑 /usr/local/Zope/dbtab.conf:

[Storage: Main]
type=FileStorage
file_name=%(CLIENT_HOME)s/Data.fs

[Database: Main]
mount_paths=/


[Storage: FS]
type=apelib.zodb3.storage.ApeStorage
factory=apelib.zope2.mapper.createFSMapper
basepath=%(CLIENT_HOME)s/mnt

[Database: FS]
class=apelib.zodb3.db.ApeDB
cache_size=0
mount_paths=/fs
container_class=OFS.Folder.Folder

[Storage: PostgreSQL]
type=apelib.zodb3.storage.ApeStorage
factory=apelib.zope2.mapper.createSQLMapper
module_name=psycopg
params= dbname=zodb user=zope password=XXXXXX

[Database: PostgreSQL]
class=apelib.zodb3.db.ApeDB
mount_paths=/pg

重启 Zope,进入 Zope 的 web 管理界面,增加“DBTab Mount Point”, 把 PostgreSQL 数据库挂装到 /pg 上。

到此在 http://localhost/zope/pg 下的所有对象都会保存到 PostgreSQL 数据库中。
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

#10

帖子 eexpress » 2005-10-23 22:15

呀呀的高手来了。 :lol:
● 鸣学
回复