在搭建服务器的过程中,分配组以后添加组成员,当通过用户组访问的时候,发现命令行提示符只有一个"$" 提示符,并且 Tab功能无法使用,无能返回去看输入过的命令,箭头键也无法使用,当按下箭头键后,会出现类似[ [^A [ [^B这样类似的乱码。
后来发现,是因为使用 useradd 添加用户时, 默认配给用户的是最原始的 sh 而不是常用的 bash, 所以很多命令都不能使用, 下面提供相关的修改方法:
方法: 如果你没有管理员权限, 那么你只能修改自己的 Shell, 输入 chsh 命令.
$ chsh
这时你会获得提醒, 要求输入新的 Shell 应用路径. 如果你要换成 bash, 请输入 /bin/bash 并回车确认.
Enter the new value, or press ENTER for the default
Login Shell [/bin/sh]:
如果拥有的管理员, 除了使用 chsh 命令, 你还可以通过修改配置文件批量修改.
# sudo gedit /etc/passwd
打开 /etc/passwd 文件, 你将看到所有用户及其使用的 Shell, 会有很多行类似这样的内容, 每行是一个用户.
xsy:x:1003:33::/home/xsy:/bin/sh
这里只需要件 /bin/sh 改成 /bin/bash 即可.
xsy:x:1003:33::/home/xsy:/bin/bash