在 ntfs 上 rsync 后恢复文件权限

在 ntfs 上 rsync 后恢复文件权限

当我在 Windows 下处理分区时,我尝试格式化硬盘的空白空间以将其放入 Windows 中,结果搞砸了,cfdi​​sk 告诉我所有分区都没有从正确的物理边界开始,我将面临性能下降的问题。此外,交换挂在错误的分区上,Windows 在启动时崩溃。

好吧,我无法修复它,但是因为我有一个主 arch linux 系统的 rsynced 备份(rsync -aAXv / /mnt/ext),所以我敢于删除所有分区,创建新的分区,然后将备份放回到重新创建的 linux 分区上。

我安装了备份外部磁盘,但它被安装了 777 权限。在我注意到它是如何安装的之前,我重新同步了所有内容,然后发现我的整个 Linux 系统都在 777 上,并且所有内容都归 root 所有。所有文件都在那里,安装甚至启动了,但我当然无法处理所有内容,甚至主目录也归 root 所有,具有 777 权限。

那么,有没有办法,要么使用旧权限挂载 NTFS 外部磁盘,要么以其他方式恢复默认权限?

谢谢

PS:忘记提了,但也许很有趣,我在 Windows 上进行了第一次分区尝试,这就是分区混乱的原因。Root 和 /home 显示为 SFS,而 Windows 分区“转移”到 sda3,之前 swap 位于该位置,因此 linux 将 Windows 分区挂载为 swap,这导致 Windows 在启动时崩溃并出现 BSOD。

答案1

NTFS 尤其不适合对 Linux 系统进行文件级备份,因为它使用 Windows 的 ACL 模型来管理权限,而不是 UNIX 模型。因此,这些卷上的权限由挂载选项决定。因此,当您进行备份时,您没有备份权限元数据(权限位或所有权)。

请参阅 dawud 的(自动)评论,了解为什么您无法恢复“默认”权限(简短的回答:没有这样的事情),以及关于您可以采取哪些措施来恢复的一些想法(这将是漫长而乏味的)。

如果您还将 Windows 内容备份到该 NTFS 磁盘,则权限元数据应该是完整的。

相关内容