错误描述
在一台云服务器上新建用户后,用xshell远程登录出现部分按键显示乱码。
一开始,我以为是xshell的问题,把xshell中部分设置调整了。 如下图:
删除键及回退键的乱码解决了,但是方向键的乱码还是存在问题。
而且还有一个问题,就是命令提示符并没有显示登录用户名和主机名,没有当前路径名,什么都没有。
$
经过查阅资料 ,发现这可能不是xshell的问题,而是服务器的设置问题,设置之后问题成功解决!
解决方案
通过/etc/passwd文件可以看出来,原因是新建的用户demo使用了不同的shell
root:x:0:0:root:/root:/bin/bashdemo:x:1000:1000:/home/demo:
之前root用户指定的是bash解释器,而新建的用户demo没有指定,所以默认使用sh解释器。 在命令行键入命令
$ echo $SHELL/bin/sh
看到这里,解决方案已经出来了。 那就是用root用户修改/etc/passwd文件,为新建的用户demo指定shell解释器
root:x:0:0:root:/root:/bin/bashdemo:x:1000:1000:/home/demo:/bin/bash
然后再重新用Xshell登录,发现按键不会乱码了,而且命令提示符也恢复正常了。大功告成!
demo@Ubuntu-cloud:~ $