今天上课用Ubuntu,碰到了一个问题,之前就遇到过,但一直放着没管:
用useradd建立一个新的用户并用passwd设置了密码后,在图形化界面下仍然无法登录该新用户(输入密码是正确的情况下)
今天实在没办法,必须得进入到这个新用户的图形化界面内,于是上网查阅了相关资料后,整理了一下问题所在
- Ubuntu系统下的adduser和useradd是不一样的
- Centos系统(我用的是Centos7)下的adduser和useradd貌似是没有区别(也可能有,但我还不知道)
下面详细说一下Ubuntu系统下这两个命令的区别所在
- 是否自动创建主目录
可以看到,用useradd创建新用户时,系统是不会帮你在home目录下新建主目录的
而用adduser创建新用户时,系统会自动帮你创建主目录(当然帮你做的事不止这一个……)
- 是否指定shell版本
可以看到用useradd创建的cx2用户是没有指定shell版本的,默认是/bin/sh
再看看用adduser创建的cx3,指定了shell版本为/bin/bash
如果用的是前者,是无法登录的,只有修改shell版本为后者,才能登录。
**
怎样使用useradd添加用户才可以登录呢?
**
sudo useradd 用户名 -m -s /bin/bash
-m 系统为你自动在/home目录底下创建一个跟你用户名同名的主目录
(这个目录里面有几个隐藏的bash文件)
-s 指定用户登录后所使用的shell
最后不要忘了用 passwd 用户名 给你新建的用户设置密码!(当然也可以在useradd的时候就用 -p 密码 设置一下)
下面测试一下新建的这个cx2用户能不能够登录