在根目录上使用递归 chown

在根目录上使用递归 chown

我需要一些帮助来恢复我的 ssh 设置,因为我通过调用这个命令搞砸了一切:

chown -R user /

目前我无法通过 ssh/ftp 访问该网站,因为所有文件的所有权都已更改。我不想重置所有所有权,但如果我能让 ssh 正常工作,我就可以创建我的文件的备份,然后在我的服务器上全新安装 ubuntu。

这是我尝试重新启动 ssh 时收到的错误:

/var/run/sshd must be owned by root and not group or world-writable.

我正在运行 ubuntu 10.04 LTS。任何帮助我都非常感谢。

PS 我可以在我的托管公司(linode)提供的基于浏览器的 AJAX 控制台上运行 ssh 命令。

谢谢

答案1

首先要停止错误消息,将所有者改/var/run/sshd回为 root。

afterwoods 之后可能会出现更多错误,这可能意味着您还需要更改其他文件。

答案2

哇。您也许能够恢复您的权限。这是一个很小的尝试,但如果您对安装进行了大量自定义,则可能值得考虑。

这是我刚刚想出来的。应该(未经测试)将根组中的每个文件设置为由根拥有。

sudo find / -group root -exec chown root {} \;

答案3

嗯,最好/最简单的方法就是恢复您的备份。您有备份,对吧?

除此之外博客文章描述了一些通过 apt-get/dpkg 重置权限的方法。在尝试此操作之前,您应该执行类似 Oli 发布的操作(将所有内容或子集再次切换回根目录)。

如果您还没有备份,那么现在是时候开始备份了!;)

相关内容