![如何解决 USB 驱动器上的 rsync 备份问题?](https://linux22.com/image/996119/%E5%A6%82%E4%BD%95%E8%A7%A3%E5%86%B3%20USB%20%E9%A9%B1%E5%8A%A8%E5%99%A8%E4%B8%8A%E7%9A%84%20rsync%20%E5%A4%87%E4%BB%BD%E9%97%AE%E9%A2%98%EF%BC%9F.png)
我正在使用 Ubuntu 14.04,并且我定期在 64 GB USB 驱动器上备份重要目录,rsync
对于每个目录使用以下方法:
rsync -ia --no-links --size-only /home/alexander/Directory1 /media/alexander/LINUXBACKUP/Backup/
rsync -ia --no-links --size-only /home/alexander/Directory2 /media/alexander/LINUXBACKUP/Backup/
....
USB 驱动器的文件系统如下:
>sudo fdisk -l
....
Device Boot Start End Blocks Id System
/dev/sdc1 8064 121995263 60993600 c W95 FAT32 (LBA)
在某些情况下,备份工作正常,没有任何问题。在其他情况下,备份似乎挂在某个随机文件上(当我重复备份/rsync 时,不是同一个文件)。
我还使用以下命令检查了 USB 驱动器:
sudo dosfsck -w -r -l -a -v /dev/sdc1
但是当再次尝试时,备份确实再次停止在某些不同的文件上。
附加信息:
- 有时还会发生这种情况:备份在开始时工作正常,但随后文件系统变为只读,导致备份失败。
- 当
rysnc
挂起时,我可能无法用将其杀死kill -9
。
我该如何解决这个问题?
- 也许使用 ext 文件系统格式而不是 FAT32 会有帮助?
- 也许命令的详细信息
rsync
向我显示了不正确的信息(备份不会停止,而只是在 shell 上显示的信息)? - 也许有更好的命令来检查 USB 驱动器?(我
sudo fsck -y /dev/sdc1
也尝试过,但这个命令似乎也挂了。但也许只是需要很长时间?) - 也许需要购买另一根内存条,因为
rsync
无法终止的进程是否暗示硬件有故障?
答案1
这可能是权限问题,当安装 FAT32 分区时,如果权限与预设值不同,则无法保留权限。FAT32 中的最大文件大小为 4 GiB。
因此我认为使用 ext 文件系统格式而不是 FAT32 会有所帮助,并且我建议您使用 ext4 文件系统。
如果您仅将此驱动器用于备份和偶尔的恢复,那么就可以了。
如果您打算经常运行它,例如从它启动,则应考虑磨损方面,并使用挂载选项 noatime 并删除日志记录。这有利于减少磨损,但会使从错误中恢复变得更加困难,因此我认为在进行这些调整之前应该三思而后行。
如果仍有问题,您可以考虑使用柏油(使用 sudo),如果 rsync 出现同步错误,这可能会更可靠。Tar 写入单个文件。