系统:Debian-60-squeeze-64-LAMP 2.6.32-5-amd64
以 root 身份在 ssh 控制台中创建一个用户:
useradd -m -G users myuser
passwd myuser
xxxxxx
xxxxxx
su myuser 或通过 ssh 登录后我得到:
\[\033[01;31m\]\u\[\033[01;33m\]@\[\033[01;36m\]\h \[\033[01;33m\]\w \[\033[01;35m\]$ \[\033[00m\] plus the cursor
使用 Tab 键时光标只会向前跳转,因此这里没有完成。
而且箭头键不起作用,如果我使用右箭头键,我会得到:^[[C
什么可能导致这种现象?
答案1
useradd 使用 /etc/default/useradd 来选择为新用户提供哪个 shell。adduser 使用 /etc/adduser.conf,通常是您想要的交互式用户,而不是系统帐户等。
至少在我的安装中,useradd 选择 /bin/sh (链接到 /bin/dash)作为 shell,而 adduser 选择 bash。
chsh /bin/bash myuser
将修复外壳我的用户,切换到添加用户代替用户添加将会避免将来再发生此类问题。
答案2
或者,如果您确实坚持使用 useradd 而不是 adduser,请将“-s /bin/bash”附加到您的 useradd 命令之后。
答案3
来自useradd
手册页:
useradd 是一个用于添加用户的低级实用程序。在 Debian 上,管理员通常应使用 adduser(8)。
尝试重新创建用户,但使用adduser
。我见过它在不同场合效果更好。