我安装了zsh并将根shell /bin/bash更改为/usr/bin/zsh。然后我重新启动并输入sudo。它说“无法执行帮助:没有这样的文件或目录”。所以我输入了sudo bash。然而,当我输入"echo $SHELL“时,它说根shell是'help‘。我怎么才能解决这个问题?
发布于 2018-02-08 06:28:45
错误消息Cannot execute help: No such file or directory表示根的登录shell已设置为help,而不是有效的shell。
您可以通过发出正确的chsh命令来修复这个问题:
sudo chsh -s /bin/bash root或者在/etc/passwd中编辑root的登录记录。这个文件必须用vipw编辑(从来不直接编辑):
sudo vipw在大多数Linux系统中,当您使用vipw时在编辑器中打开的文件中的根条目应该如下所示
root:x:0:0:root:/root:/bin/bash您应该确保最后一个:-delimited字段是系统上根用户登录shell的正确路径,如果不是,则在编辑器中更改它。然后保存文件并退出。
请注意,更改root的登录shell绝对没有好处,因为您不应该在任何时间内以root用户身份登录或使用交互式根shell。
您可能需要在系统上执行的任何管理任务都可以使用sudo执行,然后执行需要执行的命令。
另外,不需要将su与sudo结合使用。这将在有什么好的理由去经营苏藤吗?问题的答案中讨论。
https://unix.stackexchange.com/questions/422712
复制相似问题