如何在 Ubuntu 中更改 shell?

Jon*_*nas 100 bash shell command-line chsh ubuntu

我有一个 Ubuntu Server VPS,我想/bin/bash/用作我的 shell。我怎样才能改变我的外壳?我有 root 访问权限,但我不以 root 身份工作。所以破折号现在是我的默认外壳。

我已阅读如何将 Bash 设为 Ubuntu 上的默认 shell?chsh接缝是首选的方式。但是当我输入时,chsh /bin/bash我收到此消息: chsh: unknown user /bin/bash

如果我只是输入/bin/bashBash shell 接缝就可以正常工作。如何改变它?

Den*_*asi 131

以 root 身份运行时,您可以chsh用来更改其他用户的 shell。你想用它的语法这个。您可以在没有 root 权限的情况下更改自己的 shell。

chsh -s /bin/bash username

  • -1 chsh 不需要以 root 身份运行来更改您的 *own* shell。换别人的壳需要root。 (11认同)
  • 这奏效了。我总是收到“您可能无法为...更改外壳”错误消息。 (3认同)
  • 退出并重新登录以观察更改 (2认同)
  • +1 在以用户身份登录并尝试使用 `chsh` 命令并收到“您可能无法为...更改外壳”之后,我发现此方法可行 (2认同)

Ted*_*ddy 93

要更改shell,请使用barechsh命令。这将提示您输入新的 shell。您不必以 root 身份运行任何东西。

  • 不能作为普通用户工作: $ chsh 您不能更改“用户”的外壳。 (29认同)
  • 不要忘记注销并重新登录以查看更改。 (9认同)
  • 为我工作。听起来您的系统已被故意锁定。 (2认同)

txw*_*ger 59

您可以使用 usermod 命令更改用户的默认 shell。

sudo usermod -s <shell> <username>
Run Code Online (Sandbox Code Playgroud)

替换为您要使用的 shell 的名称(即 /bin/bash)和您要更改的用户名。

这将为在 /etc/passwd 文件中选择的用户名设置默认 shell。

  • 如果您看到“chsh You may not change the shell for...”,请使用`usermod` (10认同)
  • 投票,因为 chsh 确实对我不起作用。谢谢! (2认同)
  • 重要的是要注意 `usermod` 需要 `sudo` (2认同)