摘要:使用CVS备份/归档您的wiki。
版本:1.0
目标
当我在研究生院时,我计划使用PmWiki来帮助我保持组织和做笔记。然而,我需要在多个系统上保持这些注释同步,并防止出现致命的服务器错误。该怎么办?
解决方案
我的解决方案是使用CVS。基本上,我将整个PmWiki目录(对我来说是wiki/)输入到CVS中,其中很好地包含了wiki.d。然后,我使用cron对项目进行定期自动备份。这个解决方案假设您已经安装了CVS,并且对如何使用它有基本的了解。
使用的脚本:我为自动更新提供了一个cron脚本的模板。维基cvs.txtΔ
- 在项目服务器和CVS存储库服务器之间共享SSH公钥。这是假设两者不是同一个服务器。由于我将把项目保存在几个不同的计算机上,所以我就是这样。有关共享密钥的详细信息,请参阅下面的页面。
- 创建密钥:不要使用密码。此外,文件名应为默认值。
ssh-keygen-t dsa
- 验证是否生成了密钥。
ls-l~/.ssh/id_dsa.pub
- 使用SCP将密钥复制到远程服务器:
scp~/.ssh/id_dsa.pub远程:~/.sssh/public-key.tmp
- 在远程服务器上,将密钥添加到authorized-hosts列表
cat~/.ssh/public-key.tmp>>授权密钥
- 为wiki/创建CVS项目。
cvs import-m“新项目”wiki/username开始
阅读CVS文件了解更多信息。 - 使用附加的脚本建立cron。我的cronline是这样写的:
0 0,4,8,12,16,20***~/wikicvs.sh>>/dev/null 2>&1
您需要在脚本中配置一个变量WIKIHOME,告诉脚本在哪里执行伏都教。
讨论
我使用SSH连接到CVS存储库,即使我在同一台服务器上。这是因为我使用CVS来保持各种计算机的同步,并希望统一。无论如何,要将CVS与cron一起使用,我需要能够在不使用密码的情况下使用SSH。如上所述,共享公钥可以实现这一点。
然后,我只是创建了一个CVS项目。这可能会导致文件的权限出错,从而在您尝试使用PmWiki时造成痛苦体验之后因此,在附带的脚本中,更新存储库后,权限是固定的。
另请参见
历史
2004-07-09:初始修订。
评论和错误
保留此字段以备脚本将来出现错误或注释
只是一个简短的注意,Subversion在这方面也很好--ShaneSimons公司?
贡献者
版权
2004年本杰明·威尔逊。通用公共许可证
本·威尔逊保持
用户注释?:如果您使用、使用或查看此配方,您可以添加您的姓名这些统计数据显示在Cookbook列表中,将帮助新手浏览wiki。