chmod 750'ing /usr 之后如何恢复对 sudo 的访问?

chmod 750'ing /usr 之后如何恢复对 sudo 的访问?

一时兴起,我刚刚在我的 VPS 上chmod 750删除了我的/usrand/etc目录。现在,每当我运行 sudo 时,我都会得到-bash: sudo: command not found。有没有任何您能想到什么方法来帮助我恢复访问权限?

我尝试使用scpsudo 切换到计算机,但得到了

bash: /etc/bash.bashrc: Permission denied
bash: scp: command not found
lost connection

如果你能解决这个问题,那么你就是天才。

答案1

你能给机器安装一个控制台吗?如果可以,请重新启动进入恢复模式或类似操作(添加 kernel opts init=/bin/sh 将删除 root shell)。然后你将成为 root,并且可以根据需要进行 chmod 操作。

其他选项包括进行裸机恢复(您有备份,对吗?)(如果没有,您可能能够从 /bin 中拼凑一些东西)

答案2

代替su root……sudo

由于su经常出现/bin,你不应该受到你的错误的影响

当然这需要你知道root密码...

答案3

一些 VPS 公司启用了 Web 控制台访问。也请检查一下。

答案4

也许可以使用 netcat 来传输 sudo?至少在我的 Ubuntu(karmic)机器上,netcat 位于 /bin 中。

不幸的是,拥有该文件并没有太大的帮助,因为您需要将其设置为 setuid root 才能工作,而您没有权限这样做。

相关内容