不使用 sudo 更改 root shell

不使用 sudo 更改 root shell

我意外地将 root shell 更改为使用不存在的 shell,现在当我尝试登录时,root 用户崩溃了。由于我没有须藤安装后,我无法手动更改 etc/passwd 中的 shell。救援模式中是否有任何选项可以帮助我?

答案1

发布此作为答案以进一步帮助有需要的人。

在这种情况下使用 Live 光盘现场唱片将工作。

挂载驱动器并使用 chroot 如上所述@Christoper Simon

并修改任何导致发行版无法使用的设置。

答案2

首先编辑/etc/shells以包含与为 root 定义的 shell 匹配的行,例如

/bin/zsh

只要有这个礼物似乎就足以忽略它了。

su -s '/bin/bash' -c 'vi /etc/passwd'

这应该会挂起一会儿,同时寻找 zsh,然后继续运行 bash 并执行命令。

相关内容