下面我们来看一个例子:
由上面可知,/etc/passwd的用户账号的格式,那么我们就可以手动建立用户账号:
①用id命令查看是否有koma用户账号。
②直接用echo命令将符合/etc/passwd格式的koma账号数据附加在/etc/passwd文件后面。
③再用id命令查看,已经有koma用户账号。
RHEL的/etc/skel/就是用户主目录模板。直接将/etc/skel复制成为该用户的主目录。不过,用户的主目录必须符合下例的规定。
⑴主目录的拥有者必须是用户本人。
⑵主目录的拥有组必须是用户的主要组。
⑶主目录的权限最好为0700,也就是rwx------。
建立用户的主(家)目录,具体如下:
①用id查询koma的主要组是users组。
②用ls查询没有koma的主目录。
③RHEL的用户主目录模板是/etc/skel,所以只需将它复制为koma的主目录即可。
④设置~koma/目录的拥有者信息。
⑤设置~koma/的权限。
⑥验证~koma/的权限。
到此为止,我们已经可以手动建立用户账号,那么,我们如何手动删除用户账号呢?请继续往下……
手动删除koma这个账号,步骤如下:
①用id查询koma账号是存在的。
②且koma的主目录也是存在的。
①删除koma的主目录。
②验证koma的主目录是否真的被删除。
Koma的主目录也被删除了,现在只需直接删除/etc/passwd中的koma账号数据。
用vi /etc/passwd编辑,如下所示:
再在vi /etc/passwd中输入如下命令:
回车后出现:
再次输入dd就删除了koma,然后,输入 :wq 回车(保存且退出)。
下面我们查询是否还有koma的账号的资料。
由上可知,“无此用户”!说明已经成功删除了koma账号。
注:手动建立、删除用户账号比较麻烦!是否有简单的呢?
1.1.2 添加用户账号
为了简化管理者的工作,UNIX领域中有人开发了数种工具,协助更方便管理RHEL系统上的账号数据。
下面我们来学习Shadow提供的useradd这个工具。
useradd命令参数比较多,边学边讲解常用的吧。
当使用useradd建立用户账号时,若没有指定参数,useradd则根据/etc/login.defs与/etc/defaults/useradd中的定义作为新建账号的默认值。目前RHEL默认的这两个文件的定义如下:
⑴用户的邮件邮箱目录为/var/spool/mail/目录
⑵新建用户的UID范围是500~60000,默认使用最后一个可用的UID。
⑶会自动建立用户的主目录。
我们来欣赏使用useradd命令建立koma账号:
①用id命令查看是否有koma用户账号。
②使用useradd命令建立koma用户账号,全部采用默认值。
③用id命令查看,已经有koma账户信息。
④由于全部采用默认值,所以会自动产生koma的主目录。
⑤查询一下/etc/passwd与/etc/group文件中koma相关的数据。
1.1.3 修改用户账号
要修改账号的数据的命令是:usermod
下面我们来使用 usermod修改koma账号:
①查询koma的账号信息,koma的UID是500。
②检查koma的主目录,目前的拥有者也是koma。
③使用usermod把koma的UID修改为1001。
④验证koma的UID确实变成了1001。
⑤且koma的主目录也会自动修改拥有者的UID。
用户经常使用usermod的时候,主要是修改用户的次要组。
当且仅当使用usermod -G 才能修改用户的次要组,具体如下:
①koma目前只有一个次要组koma。
②查询users是否存在于/etc/group中,结果存在。
③经查询/etc/group中有一个floppy组。
④经确认后,使用useromd -G 为koma增加users与floppy两个次要组。
⑤查询可知,现在koma已经增加了users和floppy这2个次要组。
⑥由于useromd不提供直接删除次要组的方法,故必须指定“设置后的次要组内容”。注意:此处是单引号!
⑦再次查询可知,koma只剩下koma这个次要组了。
1.1.4 删除用户账号
要删除用户账号,使用userdel命令。用法如下:
userdel [-r] username
userdel命令只有一个参数 -r ,此参数用来删除用户的下列数据。
⑴用户的主目录。
⑵用户的邮箱。
在RHEL中,必须使用-r参数才能删除用户的个人资料!
注:由于用户的个人资料中存有重要的信息,尚未确认已经完成备份前,请勿任意删除!
下面我们来使用userdel命令删除koma这个账号:
①用id查询可知,koma账号已经存在。
②使用userdel -r 将koma账号给删除。
③再次查询可知,“无此用户”说明koma账号已经不存在了。
1.2 组账号的管理
了解了用户账号的管理方法后,我们再来研究如何管理RHEL中组的账号数据。
1.2.1 添加组账号
要添加组的账号,可以使用groupadd命令,语法如下:
groupadd [-g GID] [-r] [-f] groupname
-g GID : 指定组账号的标识符。
-r : 指定添加的组成员为系统组。
-f : 强制执行。一般情况下,不允许建立同一个GID相同的组账号,但使
用 -f 将会建立相同的GID的组账号。
开始使用groupadd命令添加账号:
①查询/etc/group文件中是否有beyond这个组的资料,结果无此资料。
②再使用groupadd添加beyond组。
③然后,查询可知beyond组的账号出现了。
要修改组账号的资料,则使用groupmod命令,语法如下:
groupmod [-g GID] [-n newname] groupname
-g GID : 修改组账号的标识符。GID是新的标识符
-n newname : 用来修改组的名称。newname是新的组名
我们使用groupmod命令修改账号:
①查询是否有beyond组。显然有beyond组的资料且GID为500。
②使用groupmod命令修改beyond组的GID为1001。
③再次查询可知,beyond组的GID已经修改为1001了。
1.2.3 删除组账号
使用groupdel命令来删除组的账号资料。语法如下:
groupdel groupname
下面我们来使用groupdel命令删除beyond组:
①查询是否有beyond组。显然有beyond组的资料。
②使用groupdel命令删除beyond组。
③再次查询可知,beyond组已经不复存在了。
1.3 密码的管理