前言
我们都会使用命令直接执行得到我们要的结果,但是为了更好的了解命令背后发生的过程,我们可以尝试手动新建一个用户
练习:手动新建用户,不能使用useradd命令去新建,具体信息如下:
用户名为caocao,家目录是/anhui/bozhou,uid是8898,组名是hanchao,gid为8899,shell为/bin/bash,注释为“han chao chancellor” ,密码为空。
1.添加组
[root@localhost ~]# vim /etc/group
[root@localhost ~]# tail -1 /etc/group
hanchao: x:8899:
2.添加用户
[root@localhost ~]# vim /etc/passwd
[root@localhost ~]# tail -1 /etc/passwd
caocao: x:8898:8899:han chao chancellor:/anhui/bozhou:/bin/bash
3.密码设置
[root@localhost ~]# vim /etc/shadow
[root@localhost ~]# tail -1 /etc/shadow
caocao::19140:0:99999:7:::
4.创建家目录,复制文件
[root@localhost ~]# mkdir -p /anhui/bozhou
[root@localhost ~]# cp /etc/skel/.bash* /anhui/bozhou
权限
[root@localhost ~]# chown caocao:hanchao /anhui/bozhou
[root@localhost bozhou]# ll -d
drwxr-xr-x. 2 caocao hanchao 62 5月 29 23:14 .
[root@localhost bozhou]# chmod 700 /anhui/bozhou
[root@localhost bozhou]# ll -d
drwx------. 2 caocao hanchao 62 5月 29 23:14 .
5.新建邮箱
[root@localhost bozhou]# cd /var/spool/mail
[root@localhost mail]# touch caocao
权限
[root@localhost mail]# ll caocao
-rw-r--r--. 1 root root 0 5月 29 23:45 caocao
[root@localhost mail]# chown caocao:mail caocao
[root@localhost mail]# ll caocao
-rw-r--r--. 1 caocao mail 0 5月 29 23:45 caocao
[root@localhost mail]# chmod 660 caocao
[root@localhost mail]# ll caocao
-rw-rw----. 1 caocao mail 0 5月 29 23:45 caocao
6.登录验证
[root@localhost mail]# su - caocao
[caocao@localhost ~]$ pwd
/anhui/bozhou
[caocao@localhost ~]$ mkdir cao
[caocao@localhost ~]$ ll
总用量 0
drwxr-xr-x. 2 caocao hanchao 6 5月 29 23:54 cao
总结
这就是手动新建用户的具体步骤,一条useradd命令背后会发生的事情,可以看出,一个用户不仅仅是用户名和密码,还有属于这个用户的家目录以及启动文件,还要这个用户的邮箱文件。