首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >切换到使用rdiff备份/而不是rsync备份?

切换到使用rdiff备份/而不是rsync备份?
EN

Ask Ubuntu用户
提问于 2011-10-08 17:10:57
回答 2查看 3.8K关注 0票数 7

我通常使用rsync进行备份,并使用如下命令:

代码语言:javascript
复制
rsync -avxz -e "ssh" --exclude ".gvfs" --numeric-ids / /media/Backup/slash/

如何将与rysnc一起使用的参数转换为rdiff备份?

更新:

好吧,我给自己列了个“购物清单”。

代码语言:javascript
复制
rsync flags: avxz = rlptgoDvxz
rdiff-backup flags (not complete): --preserve-numerical-ids  --exclude-other-filesystems --include-symbolic-links  --include-special-files


Shopping list:
   rsync flag                  rsync explanation                      rdiff flag?
-----------------------------------------------------------------------------------------------------------------------------
   -r, --recursive             recurse into directories
X  -l, --links                 copy symlinks as symlinks   # done by --include-symbolic-links (I hope)
   -p, --perms                 preserve permissions
   -t, --times                 preserve modification times
   -g, --group                 preserve group
   -o, --owner                 preserve owner (super-user only)
X      --devices               preserve device files (super-user only)   # Hopefully taken care of by --include-special-files
X      --specials              preserve special files   # Hopefully taken care of by --include-special-files
X  -x, --one-file-system       don't cross filesystem boundaries   # Done by --exclude-other-filesystems
X      --numeric-ids           don't map uid/gid values by user/group name   #Done by --preserve-numerical-ids

因此,剩下的是如何保留权限、所有权、组、修改时间和递归。我不确定rdiff备份是否已经这样做了,因为这是一个备份,我需要确保所有的事情都被处理了,而不仅仅是认为所有的事情都被处理了。

我试过几次了,但我还没有发现公式:我用了

代码语言:javascript
复制
rdiff-backup -v5 --preserve-numerical-ids  --include-symbolic-links  --include-special-files --exclude-other-filesystems  "root@2001:470:e89d:9ab6:21b:24ff:fe75:5822::/" /media/Backup/rdiff/bjorn-laptop/one_ext4/

去支援和

代码语言:javascript
复制
rdiff-backup -r now -v5 --preserve-numerical-ids --force /media/Backup/rdiff/bjorn-laptop/one_ext4/ "root@2001:470:e89d:9ab6:21b:24ff:fe75:5822::/media/2f52fa73-b3a6-46ef-8e1b-e82d983b0b7f_/"

恢复。之后,我尝试用新的UUID修改/etc/fstab,并更新grub (使用新的UUID),但是我发现了关于/dev、/sys和/proc不存在的错误。如何使用rdiff备份,以便只需要恢复备份、更改/etc/fstab (在还原上)和更新/安装grub?

EN

回答 2

Ask Ubuntu用户

回答已采纳

发布于 2011-11-02 15:39:06

我想你被这个虫子咬了:

http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=397413

假设您的目标磁盘是在/mnt/foo上挂载的,那么您可能只需要这样做

代码语言:javascript
复制
mkdir /mnt/foo/dev /mnt/foo/sys /mnt/foo/proc 

http://thread.gmane.org/gmane.comp.sysutils.backup.rdiff-backup.general/6452上也有这个bug的修补程序,但它将尝试列出远程文件系统。

票数 1
EN

Ask Ubuntu用户

发布于 2012-05-03 12:11:31

有一个很好的示例,说明如何使用rdiff备份根分区:http://manual.aptosid.com/en/sys-admin-rdiff-en.htm

就我个人而言,我使用以下语法进行备份:

代码语言:javascript
复制
rdiff-backup --exclude-sockets --exclude '/media/*/*' --exclude '/mnt/*' --exclude '/proc/*' --exclude '/sys/*' --exclude '/tmp/*' / {backup-dest-dir}

以及以下要还原的语法:rdiff-backup -r now {backup-dest-dir} {restore-dir}

您必须将rdiff备份作为root运行,以保持权限、所有权、组、修改时间等。我可以确保rdiff备份满足您的所有需求。

今天从Ubuntu8.04.4-> 10.04.4 -> 12.04 (dev)升级失败后,使用它来恢复根分区。

票数 3
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/64849

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档