我在使用 chown 命令时犯了一个错误

我在使用 chown 命令时犯了一个错误

我试图sudo chown -R $USER:$USER .在特定文件夹中运行命令,但我按下了按钮/,而不是.

我在命令结束之前取消了它,但它确实改变了我的 Linux 中一些文件夹的所有者。

之后,系统开始出现一些奇怪的事情,我可以恢复系统中所有主文件夹的所有者吗?

答案1

你已经毁掉了你的系统。抱歉。

除非您有完整的备份可供恢复,否则无法“恢复”。

如果您没有完整的备份,请使用 LiveUSB 将数据保存到其他媒体,然后重新安装 Ubuntu。

答案2

你可以尝试这个。通常重新安装会更快、更安全。

启动 LiveUSB 并将文件所有权从 LiveUSB 转移到您的系统。

在“/target”中挂载你的系统并以 root 身份运行此命令(如果找不到文件将会产生错误):

find /etc /dev /sbin /bin /usr /var | xargs -i -n 1 chown --reference="{}" "/target{}"

根据您的系统,您可能必须熟练掌握该命令。

该命令只会更新 LiveUSB 上的文件和目录。所有其他文件和目录都必须手动处理。

所有权最多样化的目录是“/dev”和“/var”,您必须手动查看并适应设置。

其他目录,例如“/root”、“/opt”、“/srv”通常属于用户“root.root”。
目录“/home”的内容应该清楚文件属于谁。

好消息:由于您已经破坏了系统,因此此过程不会使情况变得更糟。

相关内容