主要内容:
1、用户管理(增、删、改;口令);
2、用户组管理(增、删、改);
3、用户/组相关配置文件;
4、其它;
二、用户组管理
1、增加用户组
1.1、命令格式及选项
groupadd [-g gid [-o]] [-r] [-f] [-K KEY=VALUE] group
增加一个用户组,用户组名为:group
常用选项意义:
-g gid:指定gid号;
-r:添加系统用户组(RedHat Added);
-f:如果已经存在,则成功退出。如果有-g,且指定的gid存在,则自动选择其他的gid。这样,在建立用户组时候不必判断用户组是否已经存在;
-K KEY=VALUE:重写/etc/login.defs中关键字段(如GID_MIN\GID_MAX);
1.2、举例
1.2.1、
- [root@localhost ~]# groupadd -f gpcharge
- [root@localhost ~]# useradd -g gpcharge -m moo
- [root@localhost ~]# passwd moo
- Changing password for user moo.
- New UNIX password:
- Retype new UNIX password:
- passwd: all authentication tokens updated successfully.
- [root@localhost ~]# su moo
- [moo@localhost root]$ cd
- [moo@localhost ~]$ mkdir ex
- [moo@localhost ~]$ ll
- total 4
- drwxr-xr-x 2 moo gpcharge 4096 2012-01-31 23:00 ex
- [moo@localhost ~]$ id moo
- uid=502(moo) gid=507(gpcharge) groups=507(gpcharge)
- [moo@localhost ~]$ groups moo
- gpcharge
- [moo@localhost ~]$ ll /home | grep moo
- drwx------ 3 moo gpcharge 4096 2012-01-31 23:00 moo
- [moo@localhost ~]$ pwd
- /home/moo
- [moo@localhost ~]$ ll
- total 4
- drwxr-xr-x 2 moo gpcharge 4096 2012-01-31 23:00 ex
- [moo@localhost ~]$
-----常见用户组gpcharge,并添加用户moo,将该用户添加到gpcharge用户组中,并在其主目录(/home/moo)中新建文件夹ex,查看文件的用户与用户组属性。
2、修改用户组 2.1、命令格式及选项 groupmod [options] GROUP 增加一个用户组,用户组名为:group 常用选项意义: -g gid:修改用户组gid;
-n:修改用户组名;
2.2、举例
2.2.1
- [root@localhost ~]# groupmod -n newgpcharge gpcharge
- [root@localhost ~]# ll /home/moo
- total 4
- drwxr-xr-x 2 moo newgpcharge 4096 2012-01-31 23:00 ex
- [root@localhost ~]# ll /home
- total 32
- drwx------ 25 admin admin 4096 2012-01-30 23:46 admin
- drwx------ 23 hello root 4096 2012-01-30 09:11 hello
- drwx------ 2 root root 16384 2011-09-18 19:22 lost+found
- drwx------ 3 moo newgpcharge 4096 2012-01-31 23:07 moo
- [root@localhost ~]#
------修改gpcharge用户组名为newgpcharge,此时查看moo用户主要目录以及上节中建立的文件ex,其用户组属性同步修改。
3、删除用户组 3.1、命令格式及选项 groupdel group 删除一个用户组,用户组名为:group
注意:执行该命令前确保group不是某些用户的主用户组,否则删除失败;
3.2、举例 3.2.1
- [root@localhost ~]# groupdel newgpcharge
- groupdel: cannot remove user's primary group.
- [root@localhost ~]# userdel -r -f moo
- [root@localhost ~]# ll /home/ | grep moo
- [root@localhost ~]# groupdel newgpcharge
- [root@localhost ~]#
gpasswd group -------删除用户组newgpcharge,删除之前需要将其用户moo删除(则,以newgpcharge为gid的文件或目录将没有gid)
4、用户组管理员
通常用户以及用户组的管理需要超级用户,但有时希望某一个用户组能够具备管理用户组的权限,例如:将某个用户添加到某一个用户组。此时可以通过设定某一个用户组的用户组管理员的方式实现,通过该方式,用户组管理员可以完成将某一用户添加到用户组或者从用户族中删除
4.1、gpasswd
gpasswd group:为用户组group设置密码;
gpasswd -a user group:为group组添加用户;
gpasswd -d user group:从group组中删除用户user
gpasswd -R group:
gpasswd -r group
gpasswd [-A user,...] [-M user,...] group:
为group组添加用户组管理员user,-M为group组添加普通用户;
4.2、举例
4.2.1、
- [root@localhost ~]# useradd -m gpadminuser
- [root@localhost ~]# useradd -m normaluserA
- [root@localhost ~]# useradd -m normaluserB
- [root@localhost ~]# ll /home/ | grep user
- drwx------ 2 normaluserA normaluserA 4096 2012-01-31 23:45 normaluserA
- drwx------ 2 normaluserB normaluserB 4096 2012-01-31 23:45 normaluserB
- [root@localhost ~]# groupadd gptest
- [root@localhost ~]#
- [root@localhost ~]# gpasswd -A gpadminuser -M normaluserA,normaluserB gptest
- [root@localhost ~]#
-------------已经建立普通的用户组gptest,建立用户normalgroupA,normalgroupB,以及用户gpadminuser,并将gpadminuser作为gptest用户的管理员,令两个用户A,B该组普通用户;
4.2.2、
- [root@localhost ~]# gpasswd gpadminuser
- Changing the password for group gpadminuser
- New Password:
- Re-enter new password:
-------------更改组管理员的密码
4.2.3、
- [root@localhost ~]# su hello
- [hello@localhost root]$ cd
- [hello@localhost ~]$ newgrp gpadminuser
- Password:
- [hello@localhost ~]$ id hello
- uid=501(hello) gid=500(admin) groups=500(admin),506(moo)
- [hello@localhost ~]$ gpasswd -a admin gptest
- gpasswd: Permission denied. ------进入普通用户,为用户组gptest添加用户失败
- [hello@localhost ~]$ su - gpadminuser
- Password:
- su: incorrect password
- [hello@localhost ~]$ su - root
- Password:
- -bash: Export: command not found
- [root@localhost ~]# passwd gpadminuser
- Changing password for user gpadminuser.
- New UNIX password:
- BAD PASSWORD: it is too simplistic/systematic
- Retype new UNIX password:
- passwd: all authentication tokens updated successfully.---新建用户需要事先设定密码才能登陆
- [root@localhost ~]# su - gpadminuser
- -bash: Export: command not found
- [gpadminuser@localhost ~]$ cd
- [gpadminuser@localhost ~]$ su gpadminuser
- Password:
- [gpadminuser@localhost ~]$ gpasswd -a admin gptest ------增加用户
- Adding user admin to group gptest
- [gpadminuser@localhost ~]$
- [gpadminuser@localhost ~]$ gpasswd -d normaluserA gptest -----删除用户
- Removing user normaluserA from group gptest
- [gpadminuser@localhost ~]$
-------------进入gpadminuser,即可gptest中进行用户删除(normaluserA)与增加(normaluserB),而普通用户(hello)则没有权限进行同样的操作;
4.2.4、
-
- [admin@localhost ~]$
- [admin@localhost ~]$ id gpadminuser
- uid=502(gpadminuser) gid=502(gpadminuser) groups=502(gpadminuser)
- [admin@localhost ~]$
- [admin@localhost ~]$ groups gpadminuser
- gpadminuser
- [admin@localhost ~]$
-------------可以看到虽然用户gpadminuser是用户组gptest的用户组管理员,但该用户并不是该用户组用户。
-------------注意:用户组的管理员是指定的用户(默认情况下,创建一个用户是会创建一个同名的用户组的),不是用户组;因而,只要su切换到了指定用户组的用户组管理员,就可以直接为该用户组进行删减用户组成员操作,不需要提供密码。需要澄清的是:用户组的密码,并非针对用户组管理员设定的,而是为其他非本组用户通过newgrp进行用户组切换时需要提供的。
阅读(2876) | 评论(0) | 转发(0) |