用户和组管理

用户管理

查看账户

#id+账户名称 
[root@localhost ~]# id zk 
uid=1000(zk) gid=1000(zk) 组=1000(zk) 
	uid:用户标示,系统用来识别账户的user identify 
	gid:组标识,系统用来识别组的group identify 
任何一个账户在创建的时候,都同时创建一个同名的主属组(gid)

切换账户–su

#su - 账户名 
#su -l  账户名 

查看当前登陆的账户–whoami

[root@kunyun-166 /]# whoami
root

查看所用用户:[root@localhost ~]# cat /etc/passwd 
root:x:0:0:root:/root:/bin/bash    
用户:密码:uid:gid:账户描述信息:家目录:登陆shell 

系统账户uid小于1000(root是0) 
普通账户uid是大于1000,登陆到/bin/bash 
gid从0到1000以内的是系统组,1000以上是普通组,最大到60000 

使用finger命令查看用户基本信息(扩展)

[root@kunyun-166 /]# finger root
Login: root           			Name: root
Directory: /root                    	Shell: /bin/bash
On since 二 7月 30 11:20 (CST) on tty1    4 hours 36 minutes idle
On since 二 7月 30 11:25 (CST) on pts/0 from 192.168.65.1
   7 seconds idle
On since 二 7月 30 11:32 (CST) on pts/1 from 192.168.65.1
   4 hours 17 minutes idle
No mail.
No Plan.

创建账户–useradd

useradd【参数】   账户名称 
在新建账户的同时会产生一个同名的组,会在home下创建一个跟用户同名的家目录
useradd  -u     指定uid 
useradd -d 指定家目录 
useradd -d "/hongyang"  hongyang   指定目录
useradd -g 指定主属组 
# useradd -g 1000 user5
# id user5
uid=1001(user5) gid=1000(user4) 组=1000(user4)
useradd -M 不创建家目录 
useradd -c 指定描述字段 
useradd -s 指定登录shell 

修改账户–usermod

可以直接进入vim /etc/passwd修改 
usermod -l                //修改用户名称 
# usermod -l user9 user8  //把user8改成user9 
# id user8 
id: user8:无此用户 
同时添加多个用户到组: 
[root@wing /]# gpasswd -M jim,tom,wing 组名 
修改uid:usermod  -u
当指定的Uid不唯一的时候使用:usermod  -o 

修改主属组:usermod -g (可以跟组名称或者gid) 
修改描述:usermod -c 
修改家目录:usermod -d 
修改登录shell:usermod -s 
锁定帐号:usermod -L 
解锁帐号:usermod -U 
passwd -S 账户  查看账户是否锁定 
修改用户附属组:usermod -G 
# usermod -G grp3 user11 
追加用户附属组(-aG一起用):usermod -a 

账户密码–passwd

给当前账户设置密码(所有人可以用,但是普通账户不能给自己设置初始密码) 
#passwd 用户名称 只使用于root账户 
锁定密码:passwd -l 
解锁密码 :passwd -u 账户名称 
查看密码状态:passwd -S 账户名称 
密码信息:
    /etc/shadow 又称他为影子文件 

#man 5 shadow
用户名 
加密密码
最后一次修改密码的时间(用天数来表示,从1970.1.1到最后一次修改密码的天数)
密码生存周期(两次密码修改之间的最小间隔)
密码的有效期(用天数来表示,从1970.1.1开始计算到密码过期有多少天)
警告时间(密码过期之前的警告时间)
密码有效期
帐号的有效期
预留字段
修改密码信息: 
1)shadow所有字段都可以手动修改。 
2)#chage 
   普通账户不能查看shadow文件 

删除账户–userdel

#userdel -r 用户名称 
-r 连带个人信息(家目录,个人邮箱)一起删除 
邮箱位置:/var/spool/mail/ 

切换账户–su

#su - 账户 
#su -l 账户 
su - jim -c "touch aaaaa"  给jim账户创建一个文件,不用进入这个账户 

组管理

创建组–groupadd

groupadd 组 
#groupadd -g gid 组名 
#groupadd -g gid -o 组名 

查看组–/etc/group

#cat /etc/group 
root:x:0: 
组名:代表组密码:gid:组员 
查看一个用户的所属组:groups 用户名称 
#id 组名

修改组–groupmod

#groupmod 参数 组名 
-g   修改组的gid
-n   修改组名
-o 
#groupmod -g 2000 grp1 
#groupmod -n grp3 grp1 
修改组名:groupmod -n 
递归修改:groupmod -R 

给组设置密码–gpasswd

#gpasswd 参数 组名 
#gpasswd grp2 
给组添加账户 
# gpasswd -a user10 grp2 
Adding user user10 to group grp2 

同时添加多个用户到组

[root@wing /]# gpasswd -M jim,tom,wing 组名 
从组删除账户:gpasswd -d 账户  组 
# gpasswd -d user10 grp2 
同时添加多个用户到组: 
[root@wing /]# gpasswd -M jim,tom,wing 组名

指定组管理员

# gpasswd -A user12 grp2 

组密码文件

# cat /etc/gshadow 
组名:密码:组管理员:组员 

删除组–groupdel

# groupdel 组名 
用户的主属组不能删除 
上一篇:实验八 进程间的通信


下一篇:linux内核接口文档查询