如何解决 USB 驱动器上的 rsync 备份问题?

如何解决 USB 驱动器上的 rsync 备份问题?

我正在使用 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 写入单个文件。

相关内容