sudo -i 问题 - sudo:/bin/bash/asd:未找到命令

sudo -i 问题 - sudo:/bin/bash/asd:未找到命令

sudo -i每当我在终端中使用该命令时,我都会得到:

$ sudo -i
[sudo] password for user: 
sudo: /bin/bash/asd: command not found

/bin/bash/asd只是我之前输入的一些错误目录。

即使重新启动并清除终端历史记录后,sudo仍然出现此错误。

有没有什么办法解决这一问题?

答案1

我现在在测试时遇到了这个问题,不知道问题的原因是什么,肯定是因为将不存在的 shell 设置为root默认 shell。

我无法运行任何命令sudo,我无法运行sudo -isudo -i /bin/bash甚至无法运行sudo su -,因为没有/bin/bash/asd

我唯一能做的并且有效的事情就是运行:

sudo -s /bin/dash

获取具有 root 访问权限的 shell,sudo -s /bin/bash也应该可行。

然后使用nano编辑passwd文件:

nano /etc/passwd

你应该看到如下一行:

root:x:0:0:root:/root:/bin/bash/asd

更改为:

root:x:0:0:root:/root:/bin/bash

使用Ctrl+O然后按下Enter保存文件。

现在使用exit命令退出dash具有访问权限的 shell root

您已完成,但我建议运行:

sudo chsh root -s /bin/bash

以确保权限正确。

相关内容