运行Plone buildout时覆盖健全性检查?

时间:2014-02-13 17:33:59

标签: plone

我正在为我的Jira / Confluence应用程序运行带有apache服务器的Ubuntu 12.04 LTS。 现在我需要另外安装Plone(生产)的实例。 但是Jira已经使用了端口8080,直到现在我找不到工作指令来改变它。

我按照这些说明安装了plone: http://developer.plone.org/getstarted/ubuntu_production.html 在这些说明中我是否必须照顾好港口?

我找到了这个网站(2.5。创建新实例):http://plone.org/documentation/manual/installing-plone/referencemanual-all-pages它说你必须更改buildout.cfg中的一些设置。但即使是sudoer我也无法运行这些指令。我明白了:

buildout.sanitycheck: 
***********************************************************
Buildout should not be run while superuser. Doing so allows
untrusted code to be run as root.
Instead, you probably wish to do something like:
    sudu -u plone_buildout bin/buildout

If you have a good reason to bypass this restriction,
remove the buildout.sanitycheck extension from your buildout.
***********************************************************

While:
Installing.
Loading extensions.
Error: User attempt to give system ownership to Internet

*************** PICKED VERSIONS ****************

[versions]

*************** /PICKED VERSIONS ***************

但我怎样才能删除理智检查?我在这个文件中找不到它。

2 个答案:

答案 0 :(得分:4)

我们在这里遇到了多个问题。

更改端口

要更改Plone附加的端口,请编辑buildout.cfg并查找以下行:

[instance]
<= instance_base
recipe = plone.recipe.zope2instance
http-address = 8080

将'8080'更改为所需的端口。如果这是ZEO配置,请查找“client#”部分并更改其端口号。选择端口&gt; 1024.编辑完成后,运行buildout。

运行Buildout

如果您使用sudo运行统一安装程序,则会导致它创建plone_buildout和plone_daemon系统用户。 “plone_buildout”用户意味着用于运行buildout,并拥有代码文件。 “plone_daemon”用户用于运行连接到Internet的长期进程,并拥有数据。

这个方案经过精心设计,因此您不必以root身份运行buildout,因此长期守护进程将具有(接近)最小权限。在此方案下,您将buildout作为plone_buildout用户运行,通常使用以下命令:

  

sudo -u plone_buildout bin / buildout

命令“sudo -u username”导致命令行的其余部分在指定用户的有效所有权下执行。

以root身份运行buildout通常是一个非常非常糟糕的主意。这就是理智检查存在的原因。以root身份运行buildout意味着您将系统的控制权交给buildout下载的每个模块中每个setup.py文件的作者。 不要这样做。

关于常见误解的说明:统一安装程序,当通过sudo以root身份运行时,以root身份运行buildout(至少在最近的版本中没有) )。它使用root权限创建plone_buildout用户,然后以该用户身份运行buildout。

答案 1 :(得分:3)

只需删除buildout.sanitycheck的{​​{1}}。

由于文档在root安装后也会指示sudo,因此警告仅在非root用户安装中有意义。