默认为鱼壳

San*_*oss 2 fish

我试图使用命令成为终端上的 root sudo -i,但系统显示sudo: /usr/local/bin/fish: command not found. 我尝试将鱼壳设置为默认值,但遇到了问题。谁能告诉我我能做些什么来解决这个问题?

我尝试将fish shell 设置为默认值firstsudo echo /usr/local/bin/fish >> /etc/shells和after chsh -s /usr/local/bin/fish。然而,看起来我usr/local/bin/fish/usr/shells. (事实上​​我就是从 那里开始的)

提前致谢!

PS我现在知道该文件不是usr/local/bin/fish,但是usr/local/bin. 我已经成功将 Fish shell 设置为默认值,但仍然遇到问题sudo -i

Cha*_*Rex 6

要将错误的默认 shell 替换rootfish

  1. 安装fishsudo apt install fish如果你想要 Ubuntu 的软件包的话)
  2. 跑步sudo nano /etc/pam.d/chsh
  3. #在该行前面插入一个auth required pam_shells.so
  4. Ctrl+ OEnterCtrl+保存并退出X
  5. 运行sudo chsh -s $(which fish)$如果您在 内执行所有这些操作,请删除fish
  6. 跑步sudo nano /etc/pam.d/chsh
  7. 删除#您插入的
  8. Ctrl+ OEnterCtrl+保存并退出X

现在,您可以使用 测试 shell 是否设置正确sudo -i