我想使用 rsync 作为备份解决方案;我正在将机器的内容同步到外部硬盘。如果我的机器崩溃了,我想恢复另一台尽可能接近我当前机器的机器,因为我已经为我的研究下载并定制了一大堆软件。重新安装和定制将花费大量的时间和精力。
当我运行这个 dry-run 命令(替换为真实但很长的文件路径)时:
sudo rsync --dry-run -azv --delete --exclude-from '/exclude/list/file.txt' "/" "my/backup/location"
我得到了错误
rsync: readlink_stat("/run/user/1000/gvfs") failed: Permission denied (13)
rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1183) [sender=3.1.1]
当然,我可以通过排除 /run/user/1000/gvfs 来避免此错误。事实上,排除后,我不再收到任何错误。
但是,正如我所说的,我希望在我的计算机崩溃时能够使用此同步,并且我希望新机器能够像旧机器一样(或尽可能接近)工作。
我需要这个 /run/user/1000/gvfs 吗?如果需要,我该如何正确克隆它?
谢谢
答案1
我没有将其包含/run
在备份中,因为每次启动时其所有内容都会被清除。其内容仅用于当前正在运行的进程。
这同样适用于/tmp
和。和/var/run
是可选的,因为和中的数据在重启后仍会保留,但/var/cache
/var/tmp
/var/cache
/var/tmp
能在启动时删除不会有任何后果。所以我没有在备份中包含上述任何目录。
在这种情况下,/run/user/1000/gvfs
它不是一个普通目录,而是由 FUSE 系统放入目录树中,以包含普通用户设置的当前临时磁盘安装的安装点,例如,在图形桌面中插入 USB 驱动器时。与 的其余部分一样/run
,您不需要备份它。