-
没有Time Machine, 咱造一个土的
MacOSX 上面的 Time Machine 是相当直观的备份工具, Ubuntu下也有类似的工具, 可是其可定制度都不高. 于是干脆直接去掉各种美丽的外壳, 直接用rsync吧. rsync 网页版的文档 利用rsync和cron, 实现Time Machine是没有问题的, 这位兄弟就已经实现了. 基本原理是一样的, 用时间做文件夹名称, 第一次备份做完整的copy, 之后每次仅备份新增或者变动的文件, 没变化的文件则使用hard link. 不过我不是做开发, 也不是写剧本, 简单备份一下三个文件夹就行了. 我的script: #!/bin/bash rsync -av /home/raymond/Documents/ /media/a2765586-7225-4431-a674-10ef197c39ec/raymond/Documents/ rsync -av /home/raymond/_Soft/ /media/a2765586-7225-4431-a674-10ef197c39ec/raymond/_Soft/ rsync -av /home/raymond/_Work/ /media/a2765586-7225-4431-a674-10ef197c39ec/raymond/_Work/ 🙂
-
LAMP服务器的简单备份方法
我用CentOS作为网站服务器的OS,我是这样备份我的网站的。 以下简称网站服务器为C,我的电脑是A。首先,在C上用一段shell script备份网站: backup.sh #! /bin/bash # This script is to backup the website files and db mysqldump mydb -pmypass >/var/www/mysite/mydump.sql datestamp=`date +%Y%m%d` filewww=”/home/myuser/backup/mysite_””$datestamp””.zip” zip -r $filewww /var/www/mysite 然后可以先运行一下这个script,看看结果是否符合预期。如果没问题,就可以将其加入到crontab了,每天自动运行。 59 3 * * * /bin/bash /home/myuser/backup.sh 这样C这边每天凌晨会备份一次并生成一个zip压缩包。但是把C的备份留在C就没意义了,我还要定期的把zip从C传到A。由于A不像C那样不间断运行的,所以如果从C向A传输就需要测试A是否在线,麻烦。不如让A取C上的zip。这就涉及到另一个问题,身份验证。 为一段自动运行的script提供password,我觉得不如使用public key验证来得专业,而且简单,两步就搞定: ssh-keygen -t rsa ssh-copy-id -i .ssh/id_rsa.pub myuser@C 这期间问到private key password时直接回车就行了;myuser@C的password还是需要输入的(否则……)。 下一步就是在A上写script,获取C上的备份,成功获取后删除C上的备份,并将A本机上超过一个月的备份删除。 backup-mysite.sh #!/bin/bash #by Raymond, Jun,…