通过修改用户(User)和用户组(Group)配置文件的办法来添加用户(User)和用户组(Group);
由于我们已经在前面说过,可以通过修改配置文件的办法来管理用户,所以此主题应该包括此内容;当然通过用户及用户组管理工具(比如 adduser、userdel、usermod 、userinfo、groupadd 、groupdel 、groupmod等)也是可以的,通过管理工具对用户的管理我们将要在专门一篇文章中介绍;
通过修改用户(User)和用户组(Group)配置文件的方法管理用户之用户的添加流程;
我们先以添加用户为例,对用户的删除和修改都比较简单;
1)修改 /etc/passwd ,添加用户记录;
我们按/etc/passwd的格式的约定来添加新的用户记录;当然您要让一个用户失效,可以删除您想要删除的用户记录;值得注意的是,不能让UID 重复;
比如我想添加lanhaitun 这个用户,我发现UID 508没有用户用,并且我想把其用户组也设置为lanhaitun ,用户组的GID 也设置为508,如果GID 没有占用的话;
我们要打开 /etc/passwd ,在最下面加一行;
lanhaitun:x:508:508::/home/lanhaitun:/bin/bash
然后执行pwconv ,让/etc/passwd 和/etc/shadow同步,您可以查看 /etc/shadow的内容是否同步;
[root@localhost beinan]# pwconv
2)修改/etc/group
首先,我们得查看是否有lanhaitun用户组,以及GID 508 是否被其它用户组占用;
[root@localhost ~]# more /etc/group |grep lanhaitun
[root@localhost ~]# more /etc/group |grep 508
通过查看,我们发现没有被占用;所以我们要添加lanhaitun 的记录到 /etc/group
lanhaitun:x:508:
其次,是运行 grpconv 来同步/etc/group 和/etc/gshadow内容,您可以通过查看/etc/gshadow的内容变化确认是不是添加组成功了;
[root@localhost beinan]# grpconv
3)创建用户的家目录,并把用户启动文件也复制过去;
创建用户的家目录,我们要以/etc/passwd 中添加的新用户的记录为准,我们在/etc/passwd 中添加新用户lanhaitun ,她的家目录是处于/home/lanhaitun ;另外我们还需要把/etc/skel 目录下的.*隐藏文件复制过去;
[root@localhost ~]# cp -R /etc/skel/ /home/lanhaitun
[root@localhost ~]# ls -la /home/lanhaitun/
总用量 48
drwxr-xr-x 3 root root 4096 10月 18 14:53 .
drwxr-xr-x 10 root root 4096 10月 18 14:53 ..
-rw-r--r-- 1 root root 24 10月 18 14:53 .bash_logout
-rw-r--r-- 1 root root 191 10月 18 14:53 .bash_profile
-rw-r--r-- 1 root root 124 10月 18 14:53 .bashrc
-rw-r--r-- 1 root root 5619 10月 18 14:53 .canna
-rw-r--r-- 1 root root 438 10月 18 14:53 .emacs
-rw-r--r-- 1 root root 120 10月 18 14:53 .gtkrc
drwxr-xr-x 3 root root 4096 10月 18 14:53 .kde
-rw-r--r-- 1 root root 658 10月 18 14:53 .zshrc
4)改变新增用户家目录的属主和权限;
我们发现新增用户的家目录的属主目前是root ,并且家目录下的隐藏文件也是root权限;
[root@localhost ~]# ls -ld /home/lanhaitun/
drwxr-xr-x 3 root root 4096 10月 18 14:53 /home/lanhaitun/
所以我们要通过chown 命令来改变/home/lanhaitun目录归属为lanhaitun用户;
[root@localhost ~]# chown -R lanhaitun:lanhaitun /home/lanhaitun
查看是否已经更换了属主为lanhaitun用户所有;
[root@localhost ~]# ls -ld /home/lanhaitun/
drwxr-xr-x 3 lanhaitun lanhaitun 4096 10月 18 14:53 /home/lanhaitun/
[root@localhost ~]# ls -la /home/lanhaitun/
总用量 48
drwxr-xr-x 3 lanhaitun lanhaitun 4096 10月 18 14:53 .
drwxr-xr-x 10 root root 4096 10月 18 14:53 ..
-rw-r--r-- 1 lanhaitun lanhaitun 24 10月 18 14:53 .bash_logout
-rw-r--r-- 1 lanhaitun lanhaitun 191 10月 18 14:53 .bash_profile
-rw-r--r-- 1 lanhaitun lanhaitun 124 10月 18 14:53 .bashrc
-rw-r--r-- 1 lanhaitun lanhaitun 5619 10月 18 14:53 .canna
-rw-r--r-- 1 lanhaitun lanhaitun 438 10月 18 14:53 .emacs
-rw-r--r-- 1 lanhaitun lanhaitun 120 10月 18 14:53 .gtkrc
drwxr-xr-x 3 lanhaitun lanhaitun 4096 10月 18 14:53 .kde
-rw-r--r-- 1 lanhaitun lanhaitun 658 10月 18 14:53 .zshrc
看来已经实现了;
但这样还是不够的,因为/home/lanhaitun/的目录权限可能会过于公开;
drwxr-xr-x 3 lanhaitun lanhaitun 4096 10月 18 14:53 /home/lanhaitun/
我们看到 /home/lanhaitun/ 目录的权限为 drwxr-xr-x ,也就是同组用户和其它用户组所能查看,为了保密,我们有理由把新增用户家目录的权限设置为只有其自己可读可写可执行;于是... ...
[root@localhost ~]# chmod 700 /home/lanhaitun/
[root@localhost ~]# ls -ld /home/lanhaitun/
drwx------ 3 lanhaitun lanhaitun 4096 10月 18 14:53 /home/lanhaitun/
我们用其它用户,当然得把具有超级权限的root用户除外;比如我以beinan用户来查看lanhaitun的家目录会得到如下信息;
[beinan@localhost ~]$ ls -la /home/lanhaitun/
ls: /home/lanhaitun/: 权限不够
如此看来,lanhaitun用户的家目录是安全的 ;)
5)设置新增用户的密码;
以上各步骤都就序了,我们得为新增用户设置密码了;要通过passwd 命令来生成;这个没有办法通过修改文件解决;
passwd 的用法:
passwd 用户
[root@localhost ~]# passwd lanhaitun
Changing password for user lanhaitun.
New UNIX password: 注:输入您的密码
Retype new UNIX password: 再输入一次
passwd: all authentication tokens updated successfully. 注:设置密码成功
6)测试添增用户是否成功;
您可以用新增用户登录测试,也可以通过su 来切换用户测试;
[beinan@localhost ~]$ su lanhaitun
Password:
[lanhaitun@localhost beinan]$ cd ~
[lanhaitun@localhost ~]$ pwd
/home/lanhaitun
[lanhaitun@localhost ~]$ ls -la
总用量 52
drwx------ 3 lanhaitun lanhaitun 4096 10月 18 15:15 .
drwxr-xr-x 10 root root 4096 10月 18 14:53 ..
-rw-r--r-- 1 lanhaitun lanhaitun 24 10月 18 14:53 .bash_logout
-rw-r--r-- 1 lanhaitun lanhaitun 191 10月 18 14:53 .bash_profile
-rw-r--r-- 1 lanhaitun lanhaitun 124 10月 18 14:53 .bashrc
-rw-r--r-- 1 lanhaitun lanhaitun 5619 10月 18 14:53 .canna
-rw-r--r-- 1 lanhaitun lanhaitun 438 10月 18 14:53 .emacs
-rw-r--r-- 1 lanhaitun lanhaitun 120 10月 18 14:53 .gtkrc
drwxr-xr-x 3 lanhaitun lanhaitun 4096 10月 18 14:53 .kde
-rw------- 1 lanhaitun lanhaitun 66 10月 18 15:15 .xauthOhEoTk
-rw-r--r-- 1 lanhaitun lanhaitun 658 10月 18 14:53 .zshrc
[lanhaitun@localhost ~]$ mkdir testdir
[lanhaitun@localhost ~]$ ls -lh
总用量 4.0K
drwxrwxr-x 2 lanhaitun lanhaitun 4.0K 10月 18 15:16 testdir
通过上面一系列动作,我们会发现所创建的lanhaitun用户已经成功;