我计划使用r快照备份整个Linux系统,但我对-x选项( one_fs in rsnapshot.conf中的相同)感到困惑。手册页上写着:
-x一个文件系统,不要在每个备份点内交叉分区
我知道它不是一个特定的r快照选项,因为rsync、cp、tar和其他命令也提供了这个特性。
文件系统边界是指不同的分区吗?不同的坐骑点?不“交叉”他们是什么意思?
回到我的例子,我读到很多人建议使用-x和r快照,但我想知道这样做是否会损害我的备份的完整性。我想备份/下的所有内容,包括驻留在同一磁盘专用分区上的/boot和/home,同时我不想备份不严格属于我的系统的文件和目录,如/mnt、/media等。
在我的系统上执行mount命令将提供以下输出。实际上,使用rsnapshot -x时,哪些内容将包括在内,哪些内容将被遗漏?
/dev/sda7 on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /tmp type tmpfs (rw,noexec,nosuid)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
/dev/sda6 on /boot type ext3 (rw)
/dev/sda8 on /home type ext4 (rw)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,noexec,nosuid,nodev)
gvfs-fuse-daemon on /home/myuser/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev,user=myuser)发布于 2013-12-30 10:46:36
为了简化事情,让我们只考虑两个分区。假设运行mount实际上产生了以下输出:
/dev/sda1 on / type ext4 (rw,errors=remount-ro)
/dev/sda2 on /home type ext4 (rw)当然,这是完全不现实的(/dev不会被填充,大量的东西依赖于sysfs和procfs等等)。我们就忽略这点吧。
跨越文件系统边界意味着更改为一个目录,其中底层文件系统(通常对应于底层分区)是不同的。通常,当有人谈到跨越文件系统边界时,他们是在遍历目录树的上下文中讨论这个问题的,不管是向下遍历还是向上遍历。
作为我意思的一个例子,以git为例。要确定某个目录是否是Git存储库,git首先检查当前工作目录中是否有一个名为".git“的文件夹。如果有,它就是一个Git存储库。如果没有,git将对当前目录的父目录执行相同的检查,依此类推。默认情况下,Git将一直这样检查,直到文件系统边界(或一旦到达/),此时它将放弃,并假设当前的工作目录实际上不是Git存储库。
假设您在git status中运行~/Desktop。Git检查是否有~/Desktop/.git目录.不是的。Git现在将检查父目录:有~/.git吗?不是的。文件系统边界起作用的关键是:由于/home是一个单独的分区,而不是检查/home/.git,git会放弃,将警告打印到控制台,并假设当前工作目录不是Git存储库。它拒绝跨越文件系统边界。
https://unix.stackexchange.com/questions/107113
复制相似问题