Ubuntu系统普通用户环境解释器修改
一、问题简述
1.1 描述
我们在ubuntu系统上创建普通用户后发现发现以下问题:
a:无法使用tab命令;
b:无法通过上下键来切换命令;
c:无法通过左右键来移动光标或删除字符;
如下图分别是tab、上下左右键的结果:
1.2 原因
因为创建的用户默认使用的是sh解释器
1.3思路
将解释器修改未bash,已经创建的用户可以通过命令来修改默认解释器
二、实际解决
2.1添加用户
直接使用useradd user会发现未创建家目录
~# useradd test01
~# su - test01
su: warning: cannot change directory to /home/test01: No such file or directory
$ pwd
/root
$ exit
~# userdel test01
创建一个带家目录的用户
~# useradd -m test02
~# su - test02
$ pwd
/home/test02
此时就会出现上文的情况,无法使用上下左右和tab键
2.2查看用户的默认解释器
查看当前环境
$ echo $0
-sh
从passwd中查看
$ cat /etc/passwd|grep test02
test02:x:1007:1007::/home/test02:/bin/sh
都可以确认当前环境是/bin/sh。
2.3解决办法
方法一:在创建账号的时候指定解释器
~# useradd -m test03 -s /bin/bash
~# su - test03
~$ echo $0
-bash
~$ cat /etc/passwd|grep test03
test03:x:1008:1008::/home/test03:/bin/bash
方法二:修改/etcpasswd文件
~# vim /etc/passwd
test02:x:1007:1007::/home/test02:/bin/bash
#保存退出
~# su - test02
~$ echo $0
-bash
方法三:修改已创建用户的解释器
~# useradd -m test04
~# usermod -s /bin/bash test04
~# su - test04
~$ echo $0
-bash
删除测试的用户及其家目录
~# useradd -r test02 test03 test04