多年来,我注意到 rsync 和 .gvfs 存在一些问题。通常,我只需--exclude=.gvfs
输入 rsync 命令即可。
最近我决定从上到下从左到右阅读 rsync 手册页。毕竟,还有什么更好的学习方法呢?如果你问我,手册页比谷歌搜索更快。我注意到了标志-x
,它被引用为不跨越其他文件系统。我开始想知道这到底是什么意思,并想......作为一个虚拟文件系统,也会-x
忽略?.gvfs
话虽如此,但会:
rsync -a --exclude=.gvfs /home/jason /media/externalhdd
(有点类似)
rsync -ax /home/jason /media/externalhdd
????
答案1
是的,应该是一样的。
要进行确认:stat
在两个目录上运行:/home/jason
和/home/jason/.gvfs
。stat
输出将显示“设备”条目:
[jk@pecola ~]$ stat $HOME 文件:`/home/jk' 大小:4096 块:8 IO 块:4096 目录 设备:803h/2051d Inode:5242881 链接:65 访问:(0755/drwxr-xr-x)Uid:(1000/jk)Gid:(1000/jk) 访问时间:2012-03-19 11:53:31.209584100 +0800 修改:2012-03-19 11:50:42.941630852 +0800 更改:2012-03-19 11:50:42.941630852 +0800 出生日期:-
-- 它是第三行的第一项。该数字显示两次:十六进制(后缀“h”)和十进制(后缀“d”)。
如果这两个目录之间的数字不同,则它们被视为位于不同的设备上,因此该-x
选项将阻止 rsync 遍历到该目录。
答案2
我在 Ubuntu 18.04 上做了一个快速测试,-x
并不排除.gvfs
。