0

我在 debian 5 上安装了 plone 4.1.4 “UnifiedInstaller” zeo,我想将多个 Data.fs 与collective.recipe.filestorage 一起使用。

启动 zeo 服务器时出现此错误:
IOError: [Errno 13] Permission denied: '/home/intranetcfa/intranetcfa/var/filestorage/vanilla/Data.fs.lock'

我的扩建:

parts =
    filestorage
    ...

[filestorage]
recipe=collective.recipe.filestorage
blob-storage = var/blobstorage-%(fs_part_name)s
location = var/filestorage/%(fs_part_name)s/Data.fs
parts =
    vanilla

这导致 zeo.conf :

<filestorage vanilla>
    path /home/intranetcfa/intranetcfa/var/filestorage/vanilla/Data.fs
    blob-dir /home/intranetcfa/intranetcfa/var/blobstorage-vanilla
</filestorage>

和 zope.conf :

<zodb_db vanilla>
    cache-size 5000
    <zeoclient>
      blob-dir /home/intranetcfa/intranetcfa/var/blobstorage-vanilla
      shared-blob-dir on
      server 127.0.0.1:8102
      storage vanilla
      name vanilla_zeostorage
      var /home/intranetcfa/intranetcfa/parts/client1/var
      cache-size 30MB

    </zeoclient>
    mount-point /vanilla
</zodb_db>

回溯(最近一次通话最后):

  File "/home/intranetcfa/buildout-cache/eggs/ZODB3-3.10.5-py2.6-linux-x86_64.egg/ZEO/runzeo.py", line 405, in <module>
main()
  File "/home/intranetcfa/buildout-cache/eggs/ZODB3-3.10.5-py2.6-linux-x86_64.egg/ZEO/runzeo.py", line 402, in main
s.main()
  File "/home/intranetcfa/buildout-cache/eggs/ZODB3-3.10.5-py2.6-linux-x86_64.egg/ZEO/runzeo.py", line 158, in main
self.open_storages()
  File "/home/intranetcfa/buildout-cache/eggs/ZODB3-3.10.5-py2.6-linux-x86_64.egg/ZEO/runzeo.py", line 207, in open_storages
self.storages[opener.name] = opener.open()
  File "/home/intranetcfa/buildout-cache/eggs/ZODB3-3.10.5-py2.6-linux-x86_64.egg/ZODB/config.py", line 177, in open
return FileStorage(config.path, **options)
  File "/home/intranetcfa/buildout-cache/eggs/ZODB3-3.10.5-py2.6-linux-x86_64.egg/ZODB/FileStorage/FileStorage.py", line 125, in __init__
self._lock_file = LockFile(file_name + '.lock')
  File "/home/intranetcfa/buildout-cache/eggs/zc.lockfile-1.0.0-py2.6.egg/zc/lockfile/__init__.py", line 73, in __init__
fp = open(path, 'w+')
IOError: [Errno 13] Permission denied: '/home/intranetcfa/intranetcfa/var/filestorage/vanilla/Data.fs.lock'
4

1 回答 1

2

你的var/filestorage/vanilla目录不能被你的 ZEO 服务器运行的用户写入,或者你之前以不同的用户运行 ZEO,并且Data.fs.lock它创建的文件不能被当前用户写入。

通过调整该目录的权限来解决此问题,或者如果.lock文件存在,则锁定文件本身。

于 2012-05-25T10:57:49.907 回答