今天,我很沮丧地发现,我备份在外部硬盘上的一个软件项目几乎完全毁掉了,因为外部硬盘使用 NTFS 文件系统,所以执行(和其他权限)被“重置”。
有没有办法将数据备份到 NTFS 或 FAT32 文件系统,同时保留在 Linux 中设置的权限?
答案1
是的,您可以使用 tar 在 ntfs 文件系统上创建存档。tar 存档保留了 linux 所有者和权限信息。
如果您使用 linux acls 和扩展属性,请在 tar 手册页中查找选项。
您还可以通过 getfacl -r folder > permissions.txt 递归保存您的所有权和权限信息。
您也可以保存该文件并使用 setfacl 恢复。
无关:
顺便一提:
如果目录路径很长,切勿使用 Windows 资源管理器将文件夹复制到另一个磁盘作为备份,它会默默地删除路径长度超过 255 个字符的所有内容(我希望我记得正确)
Ntfs 可以很好地存储更长的路径,并且 robocopy 可以复制它们,但 Widows Explorer 不能。
我曾经因为这个原因丢失过一个 Java 项目......