将 Linux 和 Windows 文件备份到一个外部 Fat32 硬盘

将 Linux 和 Windows 文件备份到一个外部 Fat32 硬盘

我想知道是否有一种简单的方法可以将文件从 Linux(Ubuntu,ext4)和 Windows(ntfs)分区备份到外部硬盘(FAT32)。我主要使用 Linux 分区,并尝试使用 rsnapshot,但我总是收到大量有关复制符号链接的错误。我想这是正常的,因为 FAT32 不支持符号链接。

是否有其他方法可以像 rsnapshot 那样逐步备份所有这些文件,同时保留权限、符号链接等?

答案1

在 fat 分区上创建大文件并将它们挂载为文件系统。然后它们可以被格式化为看起来像本机文件系统,并且所有符号链接/等都会被保留

答案2

由于FAT32不支持符号链接、权限、 s 和其他高级文件ACL功能ext4NTFS你不能只复制系统文件从 Linux 或 Windows 系统分区到一个FAT32分区。

无论如何,您可以创建存档包使用能够保留这些功能的应用程序,并将这些包保存到您的FAT32分割。

例如,在 Ubuntu Linux 上,您可以使用tar它来创建备份,方式类似于以下(我想在 Windows 上也可以做类似的事情):

# tar czvf /path/to/fat32/backup.tar.gz /

不过,你可能会遇到问题,因为FAT32文件系统无法保存大于 4 GB 的文件,并且经常发生系统备份需要比这更大的情况。

作为此问题的一种解决方法,您可以使用与此类似的命令来分裂档案可以分块保存在 FAT32 分区上(详情请参阅此处):

# tar czvf - / | split --bytes=4000MB - backup.tar.gz.

还有其他工具,例如dar,让您创建备份档案并原生支持在 4GB 上自动分割。

4GB 的限制确实很烦人,但如果你使用一个足够现代的系统exFAT可以避免格式化分区exFAT就好像FAT32但可以保存大于 4GB 的文件,任何比Windows Vista或Mac OS X 10.6更新的系统都可以在其上进行读写。

要在 Ubuntu 中使用它,您只需安装软件包exfat-utilsexfat-fuse它应该在 Universe 存储库中。

答案3

对于 Linux 备份,请参考 @gerlos 的回答。tar是备份 ext 文件系统的最佳实践。
对于 Windows,最好重新启动到另一个已安装的 Windows 或 Windows PE。目前,备份 NTFS 卷的最佳方法是使用 WIM。Windows 有一个内置工具,部署映像服务和管理工具 Dism.exe可以处理 wim。记住你永远无法备份正在运行的 Windows. 在备用 Windows 系统(或 Windows PE)中,运行此命令(不区分大小写)

Dism.exe /Capture-Image /CaptureDir:D:/名称:First/ImageFile:E:\capture.wim
Dism.exe /Split-Image /ImageFile:E:\capture.wim /SWMFile:F:\split.wim /FileSize:4000

请注意,D:是要备份的卷,E:是临时位置,必须支持超过 4GB 的文件,F: 是 FAT32 卷。
如果您要将其备份到 exFAT 或 NTFS 位置(推荐),则无需拆分映像。
要恢复备份,请再次转到备用系统并运行

Dism.exe /Apply-Image /ImageFile:F:split.swm /SWMFile:F:\split*.swm /ApplyDir:D:

相关内容