CentOS系统管理_用户和用户组的详解

2020-01-30 15:46:52王振洲

ls:/home/user2/: 没有那个文件或目录//加-r之后删除宿主目录

ls:/var/mail/user2: 没有那个文件或目录//加-r之后删除邮件文件

drwx------ 3 1002 1002 4096 02-1809:53 /home/user1/

-rw-rw---- 1 1002 mail    0 02-18 09:53 /var/mail/user1

[root@localhost~]#

2,groupdel:删除用户组

-格式:groupdel组名

-删除的目标组不能是用户的基本组。

-在删除用户组的时候,如果该组为某个成员的私有组,则无法删除,必须先删除组里面的成员,才能成功删除该组。

[root@localhost~]# id user1    //查看user1的基本组和附加组

uid=1002(user1) gid=1002(user1) groups=1002(user1),600(stu)

[root@localhost ~]# grep stu /etc/group

stu:x:600:user1,user2

上面的操作可以看到,user1的基本组为user1,附加组为stu,那么现在只能删除stu,而不能直接删除组user1,因为user1组是一个基本组,要想删除user1,必须先删除user1用户,再删除user1组,而stu组不是一个基本组,只是user1和user2的附加组,所以可以直接删除。

[root@localhost~]# groupdel user1  //尝试删除user1用户组,因为user1组为user1的基本组,所以需要先删除user1用户,才能删除user1组。

groupdel:不能删除用户的主组。

[root@localhost~]# groupdel stu

[root@localhost~]# grep stu /etc/group //删除stu组之后,不能看到/etc/group文件里面的stu组的信息了。

三:为用户和用户组添加密码

1,为用户添加密码:

Passwd命令:

选项有:

-d :清空用户的密码,使之无需密码即可登录

-l :锁定用户账号

-S :查看用户账号的状态(是否被锁定)

-u :解锁用户账号

- - stdin:标准输入(比如管道)取密码

注:删除密码用passwd –d 而不能用echo “” | passwd - -stdin 用户名

示例:

[root@localhosthome]# cat /etc/shadow| grep user3      //查看user3是否有密码

user3:$1$4vGPvNrT$xrFPE9XQhl.w1jchu10wo/:16119:0:99999:7:::

[root@localhosthome]# passwd -d user3  //使用-d选项删除密码

Removing passwordfor user user3.

passwd: Success

[root@localhosthome]# cat /etc/shadow| grep user3      //再次查看,密码取消

user3::16119:0:99999:7:::

[root@localhosthome]#

示例:

如果修改一个用户的密码,可以直接输入passwd 用户名,然后进入交互式的密码输入去人,使用- -stdin使用非交互式设置密码,直接将密码导入。