如果尚未打包删除该文件夹的事务,则可以恢复该文件夹.
首先,使用ZMI中父文件夹的"撤消"选项卡.它可能不起作用,系统上的许多其他东西已经改变(通常是目录),因为所有的更改都可以有效地回滚.
下一步有点麻烦和参与.您当时要做的是打开对象数据库(ZODB),其中包装器将显示历史记录中给定点的数据库状态.这样做需要手动编辑Zope服务器配置.我已经在博客文章中写了这些步骤,但这些步骤有点过时了.
在现代Plone构建中,您需要将zc.beforestorageegg 添加到buildout中,并且需要将enable-product-installationZope 的设置切换为False; 使用beforestorage包装器使您的数据库成为只读,产品安装代码将尝试提交到数据库,导致无法启动:
[instance]
eggs +=
zc.beforestorage
zope-conf-additional +=
enable-product-installation False
Run Code Online (Sandbox Code Playgroud)
重建buildout后,您需要打开zope.conf与您的实例关联的文件.如果您通常使用启动服务器bin/instance,则该文件位于parts/instance/etc/zope.conf; 使用的脚本bin/与部件名称匹配(instance在此示例中).
找到定义ZODB主数据库的部分:
<zodb_db main>
# Main database
cache-size 10000
# Blob-enabled FileStorage database
<blobstorage>
blob-dir /path/to/var/blobstorage
<filestorage>
path /path/to/var/filestorage/Data.fs
</filestorage>
</blobstorage>
mount-point /
</zodb_db>
Run Code Online (Sandbox Code Playgroud)
您需要将beforestorage包装器添加到该声明中:
<zodb_db main>
# Main database
cache-size 10000
%import zc.beforestorage
<before>
before 2012-12-01T12:00:00
# Blob-enabled FileStorage database
<blobstorage>
blob-dir /path/to/var/blobstorage
<filestorage>
path /path/to/var/filestorage/Data.fs
</filestorage>
</blobstorage>
</before>
mount-point /
</zodb_db>
Run Code Online (Sandbox Code Playgroud)
注意before <iso timestamp>那里的线; 当您启动实例时,该网站将显示为该时间戳.在删除文件夹时选择一个.现在您可以将它(再次使用ZMI)导出到.zexp文件.撤消对zope.conf文件的更改,重新启动并导入已恢复的文件夹.
| 归档时间: |
|
| 查看次数: |
891 次 |
| 最近记录: |