如何将所有USERS的默认shell更改为bash?
我希望从现在开始,每个新用户都默认使用bash作为shell。
我知道要将自己的shell更改为bash,你会使用命令“chsh -s / bin / bash”,但是如何在默认情况下自动将所有未来用户的shell设置为bash?
添加用户
adduser
默认文件是/etc/adduser.conf
。 默认情况下, DSHELL
变量定义的默认shell是/bin/bash
。
useradd的
很可能你不需要这个,因为useradd是一个非常低级的实用程序,它几乎不会直接使用。
如果使用useradd,请编辑/etc/default/useradd
框架文件(不要忘记进行备份)。
将SHELL
变量设置为/bin/bash
而不是/bin/sh
。
现在每次使用useradd
添加新用户bash
都会自动成为他们的默认shell。
已有用户
如果要更改现有用户的shell,则必须编辑/etc/passwd
文件(请确保备份它的备份)。
这是列的描述
- 登录名
- 可选加密密码
- 数字用户ID
- 数字组ID
- 用户名或注释字段
- 用户主目录
- 可选的用户命令解释器
按此顺序用冒号(:)分隔。
root:x:0:0:root:/root:/bin/bash
有关该文件的更多信息,请参阅man 5 passwd
手册页。
正如Octavian指出的那样,更改默认值的方式取决于您创建用户的方式。 我刚刚尝试通过我的Gnome设置创建一个新用户,它似乎遵循/etc/default/useradd
,所以这可能是你最好的选择。 对于现有用户,更改别人登录shell的最安全方法是使用usermod :
usermod -s /bin/bash $USERNAME
如果你不是root用户,你需要sudo 。 另一种方法是sudo进入你想要修改的用户并运行chsh ,如下所示:
sudo -u $USERNAME chsh -s /bin/bash
最好避免手动编辑/etc/passwd
,因为那里的错误可能会破坏各种各样的事情。