LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
楼主: ifree

可以做系统增量备份吗?

[复制链接]
发表于 2006-3-29 13:59:23 | 显示全部楼层
楼主的想法rsnapshot应该可以做到。
# emerge -av rsnaptshot
# cp /etc/rsnapshot.conf.default /etc/rsnapshot.conf
# nano /etc/rsnapshot.conf
改完了可测试一下
# rsnapshot configtest
可以用cron定时备份,这样在你的备份分区会有多个全备份,还原的时候可任选一个来cp -a,但实际磁碟空间只是一个全备份+更新。
详见:http://www.rsnapshot.org/howto/1.2/rsnapshot-HOWTO.en.html#configuration
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-3-29 15:09:13 | 显示全部楼层
Post by Fleta
楼主的想法rsnapshot应该可以做到。
# emerge -av rsnaptshot
# cp /etc/rsnapshot.conf.default /etc/rsnapshot.conf
# nano /etc/rsnapshot.conf
改完了可测试一下
# rsnapshot configtest
可以用cron定时备份,这样在你的备份分区会有多个全备份,还原的时候可任选一个来cp -a,但实际磁碟空间只是一个全备份+更新。
详见:http://www.rsnapshot.org/howto/1.2/rsnapshot-HOWTO.en.html#configuration


谢谢Fleta提供的方案,emerge --sync经常用,是不是sync就是利用的rsync来做的呀?这个rsync为何物却不是很清楚。有没有愿意讲一下这个。
回复 支持 反对

使用道具 举报

发表于 2006-3-29 15:15:24 | 显示全部楼层
portage里还真有这样的apps呀?
app-backup里一堆......
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-3-29 15:17:47 | 显示全部楼层
转贴一篇讲rsync备份的文章,因为讲到了网络、服务器,由于没有机会接触这些东西,看得不太懂,不过和我的目标应该比较接近了。

http://linuxfocus.org/ChineseGB/March2004/article326.shtml
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-3-29 15:24:26 | 显示全部楼层
再转贴一篇:
http://nic-nac-project.de/~murj/ ... with-rsync-and-cron


25/05: simple backup with rsync and cron
Posted by: murj

rsync 是一款简单易用而又功能强大的备份、镜像工具,rsync 包含了服务器和客户端两个套件。如果你需要使用 rsync 进行主机到主机的备份,则需要在服务器一端开启 rsyncd 服务。比如 Debian 的镜像服务器一般都开启 rsyncd 服务,使用一个脚本文件就可以从一台镜像服务器镜像 Debian 的软件仓库。如果你只需要在本机,比如说在不同的硬盘或分区之间,作简单的备份,只需要使用 rsync 客户端就行了。今天,本人就把 rsync 配合 cron 使用,进行个人数据的备份。

使用 rsync 在本机备份非常简单,比如
rsync -a /src/foo /dst/bar/ 把文件夹 foo 的内容备份到 bar/ 下,最终结果是 /dst/bar/foo
rsync -a /src/foo /dst/foo 把文件夹 /src/foo 下的内容备份到 /dst/foo

为了让备份工作自动进行,最行之有效的办法是配合 cron/crontab 使用。如果你只具有普通权限而没有 root 口令,那就使用 "crontab -e" 编辑你自己的 crontab 文件。本人是拥有 root 口令的,因此我写了两个备份脚本,分别仍到 /etc/cron.daily 和 /etc/cron.weekly 下,让它们没天或每周自动执行一次备份。

这是放在 cron.daily 下的脚本,对于经常修改的文件,有必要天天备份。

rsync -a /home/murj/public_html/pmwiki /backup/murj/www/
rsync -aC /home/murj/.[a-z]* /backup/murj/config
rsync -aC /home/cvs/*   /backup/cvs_bak/
rsync -a /var/lib/mysql/nucleus /backup/mysql_bak/

另外一些不是经常变动的文件,一周备份一次。

rsync -a /home/murj/public_html/nucleus /backup/murj/www/
rsync -aC /etc/* /backup/etc_bak/
rsync -a /var/lib/mysql/*   /backup/mysql_bak/

最后一点,不要忘了给你的脚本"chmod +x",而且最好手动执行一次看看有没有错误。更进一步,可以加上 rsync 的 verbose 选项 '-v',把输出重定向到某个日志文件,像这样:

rsync -aCv /etc/* /backup/etc_bak/ >> /home/murj/log/rsync.log 2 > &1
回复 支持 反对

使用道具 举报

发表于 2006-3-29 16:50:34 | 显示全部楼层
Post by Fleta
楼主的想法rsnapshot应该可以做到。
# emerge -av rsnaptshot
# cp /etc/rsnapshot.conf.default /etc/rsnapshot.conf
# nano /etc/rsnapshot.conf
改完了可测试一下
# rsnapshot configtest
可以用cron定时备份,这样在你的备份分区会有多个全备份,还原的时候可任选一个来cp -a,但实际磁碟空间只是一个全备份+更新。
详见:http://www.rsnapshot.org/howto/1.2/rsnapshot-HOWTO.en.html#configuration


very good solution. thanks for sharing.


Post by ifree
转贴一篇讲rsync备份的文章,因为讲到了网络、服务器,由于没有机会接触这些东西,看得不太懂,不过和我的目标应该比较接近了。

http://linuxfocus.org/ChineseGB/March2004/article326.shtml


http://linuxfocus.org/English/March2004/article326.shtml
英文版。

good article too. cheers.
回复 支持 反对

使用道具 举报

发表于 2006-3-29 19:21:55 | 显示全部楼层
Post by ifree
再转贴一篇:
http://nic-nac-project.de/~murj/ ... with-rsync-and-cron


25/05: simple backup with rsync and cron
Posted by: murj

rsync 是一款简单易用而又功能强大的备份、镜像工具,rsync 包含了服务器和客户端两个套件。如果你需要使用 rsync 进行主机到主机的备份,则需要在服务器一端开启 rsyncd 服务。。。

rsnapshot是从这些方法改进而来的。/etc/rsnapshot.conf里可以修改rsync的选项,不过一般-abv就可以了。如果手工运行rsnapshot(即不设cron)敲
# rsnapshot daily

# rsnapshot weekly
就行了。
如果用缺省的设置,第一次运行
/.snapshots/
里会出现daily.0
如果系统有改动,再运行rsnapshot daily,
/.snapshots/
里会出现daily.1,这是之前的daily.0,刚做的备份则是daily.0(最新的永远是daily.0)。
建议楼主动手试下备份几个小目录,逐次做些改动,再看看这程序的效果是怎样的。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-3-29 22:12:37 | 显示全部楼层
我安装了rsnapshot,看了看配置文件,不知道到底那一个是设置备份的目录。

是  
include_file  /path/to/include/file
还是
backup /home          localhost/
设置我想备份的目录?

如何从备份的daily.0 还原呢?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-3-29 22:47:13 | 显示全部楼层
又发现一篇讲rsync备份的文章,但是说的仍然是备份服务器。
http://bbs.chinaunix.net/viewthr ... amp;highlight=rsync

Fleta还是写一个使用rsnapshot的简单教程吧。中文方面的rsnapshot太少了,英文帮助看得似懂非懂的,还是不会用。
回复 支持 反对

使用道具 举报

发表于 2006-3-30 03:27:12 | 显示全部楼层
Post by ifree
我安装了rsnapshot,看了看配置文件,不知道到底那一个是设置备份的目录。

是  
include_file  /path/to/include/file
还是
backup /home          localhost/
设置我想备份的目录?

如何从备份的daily.0 还原呢?

include_file是想要备份的文件或目录的清单或字串,既然已经可以在rsnapshot.conf里边设这种东西,没必要再另写个文件了,所以可以注释掉。

backup /home          localhost/ 便是用来设置备份目录的。
指得是将/home备份至目标机器或分区localhost目录下。
不想备份的目录可在exclude那部分设,如
exclude /var/tmp/portage
exclude /var/tmp/ccache
注意这个文件得用tab,不能用空格。

还原可用cp,比如缺省的目的目录是snapshot_root   /.snapshots/(如果是分区当然要挂过去啦):
# cd /.snapshots/localhost/daily.0/
# cp -a * /
当然最好是先将旧的删掉(如果是整个系统还原,格式化一下分区),要不然会有些"残渣"的。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表