首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >bash错误中的sudo su“无法执行帮助:没有这样的文件或目录”

问bash错误中的sudo su“无法执行帮助:没有这样的文件或目录”
EN

Unix & Linux用户
提问于 2018-02-08 05:46:49
回答 1查看 25.8K关注 0票数 6

我安装了zsh并将根shell /bin/bash更改为/usr/bin/zsh。然后我重新启动并输入sudo。它说“无法执行帮助:没有这样的文件或目录”。所以我输入了sudo bash。然而,当我输入"echo $SHELL“时,它说根shell是'help‘。我怎么才能解决这个问题?

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2018-02-08 06:28:45

错误消息Cannot execute help: No such file or directory表示根的登录shell已设置为help,而不是有效的shell。

您可以通过发出正确的chsh命令来修复这个问题:

代码语言:javascript
复制
sudo chsh -s /bin/bash root

或者在/etc/passwd中编辑root的登录记录。这个文件必须用vipw编辑(从来不直接编辑):

代码语言:javascript
复制
sudo vipw

在大多数Linux系统中,当您使用vipw时在编辑器中打开的文件中的根条目应该如下所示

代码语言:javascript
复制
root:x:0:0:root:/root:/bin/bash

您应该确保最后一个:-delimited字段是系统上根用户登录shell的正确路径,如果不是,则在编辑器中更改它。然后保存文件并退出。

请注意,更改root的登录shell绝对没有好处,因为您不应该在任何时间内以root用户身份登录或使用交互式根shell。

您可能需要在系统上执行的任何管理任务都可以使用sudo执行,然后执行需要执行的命令。

另外,不需要将su与sudo结合使用。这将在有什么好的理由去经营苏藤吗?问题的答案中讨论。

票数 13
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/422712

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档