我们有一台已启用的服务器ssh
,并且我们有:PermitRootLogin: no
,以及一个不在sudoers
文件中的用户。另一个管理员为设置了无效的 Shell,root
所以我无法再root
访问。当我运行su
命令并输入root
密码时,它显示:su: failed to execute /bin/vash
。我认为admin
想要设置bash
为默认 Shell,但这里有一个拼写错误。我该如何root
再次访问?
答案1
从man su
:
-s, --shell=shell
Run the specified shell instead of the default.
因此尝试一下:
su root -s /bin/sh
然后运行chsh
将 shell 重置为有效的默认值
答案2
哦,伙计们,我已经解决了这个问题)))这是我的解决方案:
cp /bin/bash ~/vash
export PATH = "$PATH:~"
alias "/bin/vash"="/home/USER/vash"
su