我在一台之前运行过 Linux 的机器上从头安装了 Linux。在我附加的“数据”驱动器(只有数据,没有系统文件)上,使用 ext4 文件系统,文件所有者/组不再正确。我认为这是因为 UID 号随着新安装而发生了变化。但是,在新安装中,所有在上一次安装中存在的用户和组都存在。
有没有什么好的方法可以“备份”旧系统上的所有文件所有者,并在不接触实际数据的情况下在新系统上“恢复”它们?
我知道我可以使用 sudo chown 挖掘数据并手动为每个文件夹设置正确的用户 - 但是如果有一种自动的方法来做到这一点会很好,因为这些文件由多个用户拥有。
我仍然有两个安装(但是,我想在一切运行后转储旧安装,因此不需要双启动解决方案)。命令行很好并且我更喜欢。
答案1
使用
sudo getfacl -R /data > facl.txt
将旧系统上的文件所有者保存到文件中facl.txt
(替换/data
为实际路径)。
facl.txt
使用以下命令恢复文件中存储的文件所有者
sudo setfacl --restore=facl.txt