通过rsync将文件从一个位置复制到另一个位置的zc.buildout方法
collective.recipe.rsync的Python项目详细描述
collective.recipe.rsync是通过rsync程序在两个位置之间复制文件的zc.buildout配方。
注意
collective.recipe.rsync假设您有一个基于unix的操作系统,并且在运行buildout或rsync脚本时,rsync二进制文件在您的路径中。
安装
在buildout.cfg文件中添加一个新节以使用collective.recipe.rsync配方,例如:
[buildout] extends = https://raw.github.com/plock/pins/master/plone-4-3 parts += backup [backup] recipe = collective.recipe.rsync source = ${buildout:directory}/var/filestorage/Data.fs target = /var/backup
这会将plone data.fs文件从源复制到目标。
创建脚本
通常collective.recipe.rsync将在配方安装期间运行rsync。也可以通过配置script = true选项(例如:
[backup] recipe = collective.recipe.rsync source = ${buildout:directory}/var/filestorage/Data.fs target = /var/backup script = true
这在希望使用cron自动执行rsync脚本的情况下非常有用,例如通过z3c.recipe.usercrontab。
配置选项
默认选项是-av--partial--progress。使用options参数更改它们,例如:
[backup] recipe = collective.recipe.rsync source = ${buildout:directory}/var/filestorage/Data.fs target = /var/backup # Omit "-v" option options = -a --partial --progress
排除文件
可以使用exclude选项排除文件,例如:
[backup] recipe = collective.recipe.rsync source = ${buildout:directory}/var/filestorage/Data.fs target = /var/backup exclude = Data.fs.index Data.fs.old
指定备用ssh端口
可选地,您可以为rsync指定备用ssh端口以使用,例如:
[backup] recipe = collective.recipe.rsync source = ${buildout:directory}/var/filestorage/Data.fs target = /var/backup port = 2222
更改日志
2.3.0(2019-03-21)
- python 3修复[petschki]
2.2.2(2014-02-23)
- 错误修复:提供脚本选项的所有参数,除非没有
2.2.1(2014-02-23)
- 错误修复:提供脚本选项的所有参数
2.2.0(2014-02-23)
- 添加exclude支持
- 当脚本选项被使用而端口未被使用时,没有一个有引号。修复3 [b按钮]
2.1.0(2012-04-09)
- 清理包
2.0.0(2011-05-24)
- 不要在脚本前面加上“rsync-”
1.9(2011-04-12)
- 更新时调用install
- 用户界面调整
1.8(2011-03-29)
- 切换到使用子进程调用rsync(向stdout显示进度) [马蒂斯]
- 用记录器替换打印语句
- 更新文档
1.7(2011-01-21)
- 文档修复
- 根据节名生成脚本名
- Support more than one script in the same buildout
1.6(2011-01-20)
- 添加script选项
- Generates bin/rsync script
- Disables rsync during buildout execution
- Facilitates creation of scheduled rsyncs via cron
1.5(2011-01-10)
- 添加有关Unix Compat的说明
1.4(2011-01-10)
- 在配方部分支持备用ssh port参数。这允许collective.recipe.rsync使用-e'ssh<;port>;'执行rsync,这有助于通过非标准ssh端口进行复制。
1.3(2010-12-19)
- 修复文档
1.2(2010-12-19)
- 修复文档
- 添加新的测试线束
- 清理包
1.1(2010-11-05)
- 修改输出以包括正在执行的rsync命令行
1.0(2010-02-28)
- 将包从collective.recipe.rsync_datafs重命名为collective.recipe.rsync
0.1(2009-08-26)
- 用Zopeskel制作的配方