linux用户和组的管理

12.用户和组的管理

groupadd groupdel groupmod useradd userdel usermod passwd gpasswd chage id

Linux的一大特性:

多用户、多任务。

所谓多用户多任务就是指可以在同一时间,有多个用户登录同一个系统执行不同的任务而互不影响。

假设现在有三个用户:root、lbb、mvv,三个用户同一时间登录了同一个系统,root去修改配置文件了,lbb去创建目录了,mvv去访问数据库了,每个用户互不干扰的独立执行自己的任务,并且每个用户不能够越线去访问其他用户正在操作的目录或执行其他用户下的任务,由此可见,不同的用户是拥有各自不同的权限的,Linux通过权限的划分和管理来实现多用户、多任务的运行机制。

Linux中的用户及其角色划分

按照角色来划分Linux中所有创建的用户,可以分为三种类型的角色:

超级用户(管理员):享有最高权限,具备系统中的所有权限(一般为root),UID为0

普通用户:有权限限制,只能对自己目录下的文件进行操作,可以登录系统,UID>=500

系统用户:别称“伪用户”,无法登录系统,一般系统默认持有如bin,nobody等,其主要作用是支撑系统运行,方便系统管理,UID为1-1000(闭区间)

用户管理

12.1查看用户

[root@qfedu.com ~]# id   查看的是当前登录账户的id信息,identify
uid=0(root)  gid=0(root)  组=0(root)                     
主属组             
附属组
uid 系统用来识别账户的user identify
gid 系统用来识别组的group identify
​
[root@qfedu.com ~]# id user1  查看user1这个用户的id信息
[root@qfedu.com ~]# whoami 查看我现在所使用的用户
​
[root@tianyun ~]# grep 'user01' /etc/passwd /etc/shadow /etc/group
​
/etc/passwd:user01:x:507:512::/home/user01:/bin/bash 
   用户名:用户密码占位符:uid:gid:用户描述:用户家目录:用户登录shell   【如果登录shell为/sbin/nologin则无法登录系统】         
​
/etc/shadow:user01:!!:16589:0:99999:7::: 
  用户名:加密后的免密:
  
  密码位如果是 !! 则该用户还未设置密码
  下列是加密的密码
  $6$itXxifN2F3ACZd.S$dR5XK.Ov.jhj9Lhjfv9oYTSvCTugizAvCCj2ljJsP4G7dbL5U2DqBCIdzBaO3MCvGvhfHCpZp9iytgedUdMO7/
  共分为三个部分, 1、算法 2、盐 3、加密后的内容  共同组成密码部分
​
/etc/group:user01:x:512:
​
​
[root@tianyun ~]# ls /var/spool/mail/user01 
/var/spool/mail/user01
​
​

12.2创建用户

[root@qfedu.com ~]#useradd [参数] ... 用户名称
-d  指定家目录
    [root@qfedu.com ~]# useradd -d /user3  user3
    [root@qfedu.com ~]# cat /etc/passwd | grep user3
    [root@qfedu.com ~]# user3:x:502:502::/user3:/bin/bash
​
-u  指定uid
    [root@qfedu.com ~]# useradd -u 1000  user4
    [root@qfedu.com ~]# id user4
    uid=1000(user4) gid=1000(user4) 组=1000(user4)
    
-o  当Uid不唯一的时候使用
​
-g  指定新账户主组的名称或 gid
    [root@qfedu.com ~]# useradd -g 1000  user5
    [root@qfedu.com ~]# id user5
    uid=1001(user5) gid=1000(user4) 组=1000(user4)
​
-c  指定描述字段
    [root@qfedu.com ~]# useradd -c qq-28282828 user6
    [root@qfedu.com ~]# cat /etc/passwd | grep user6
    user6:x:1002:1002:qq-28282828:/home/user6:/bin/bash
​
-s  指定登录shell
    查看系统现在所支持的shell
    [root@qfedu.com ~]# cat /etc/shells
    /bin/sh
    /bin/bash
    /sbin/nologin
    /bin/dash
    /bin/tcsh
    /bin/csh
    [root@qfedu.com ~]# useradd -s /sbin/nologin user7
    [root@qfedu.com ~]# cat /etc/passwd | grep user7
    user7:x:1003:1003::/home/user7:/sbin/nologin
    
手动创建用户
1. /etc/passwd
gz2103:x:1005:1005::/home/gz2103:/bin/bash
​
2. /etc/group
gz2103:x:1005:
​
3. /etc/shadow
gz2103:!!:18821:0:99999:7:::
​
4. cp /var/spool/mail/gz1 /var/spool/mail/gz2103
   chown gz2103.maill /var/spool/mail/gz2103
   
5. cp -r /home/gz4 /home/gz2103
   chown gz2103.gz2103   /home/gz2103

12.3修改用户

方式1.修改passwd文件

此文件里面除了密码字段能删除不能直接修改之外,其他字段全部都能直接修改

[root@qfedu.com ~]# cat /etc/passwd 

账户的基本信息都在这个文件内

用户名:代表密码:uid:gid:账户的描述信息:家目录:登录shell

方式2.使用命令usermod

修改用户名称  -l
    [root@qfedu.com ~]# usermod -l user9 user8
    [root@qfedu.com ~]# id user8
    id: user8:无此用户
​
修改uid  -u
    -o 当指定的Uid不唯一的时候使用
​
修改gid  -g
​
修改描述  -c
​
修改家目录  -d
​
修改登录shell  -s
​
锁定帐号  -l
           [root@qfedu.com ~]# passwd -l 账户名称
           [root@qfedu.com ~]# passwd -l user10
           锁定用户 user10 的密码 。
           passwd: 操作成功
​
解锁帐号  -u
           root@qfedu.com ~]#passwd -u 账户名称
           [root@qfedu.com ~]# passwd -u user10
           解锁用户 user10 的密码 。
           passwd: 操作成功
​
修改用户附属组  -G
    [root@qfedu.com ~]# usermod -G grp2,grp3 user11  
​
追加用户附属组(-aG一起用)  -a
    [root@qfedu.com ~]# id wing
    uid=1001(wing) gid=1001(wing) groups=1001(wing),1006(jim)
    [root@qfedu.com ~]# usermod -aG tom wing   
    [root@qfedu.com ~]# id wing
    uid=1001(wing) gid=1001(wing) groups=1001(wing),1005(tom),1006
    (jim)
​
给用户设置密码
[root@qfedu.com ~]#passwd
​
只适用于root账户  
[root@qfedu.com ~]#passwd 用户名称  
​
查看密码状态
[root@qfedu.com ~]#passwd -S 账户名称
[root@qfedu.com ~]# passwd -S user10
user10 PS 2013-11-21 0 99999 7 -1 (密码已设置,使用 SHA512 加密。)
[root@qfedu.com ~]# passwd -S user10
user10 LK 2013-11-21 0 99999 7 -1 (密码已被锁定。)
​
密码信息    /etc/shadow  又称他为影子文件 
​
用户名
加密密码
最后一次修改密码的时间(用天数来表示,从1970.1.1到最后一次修改密码的天数)
密码生存周期(两次密码修改之间的最小间隔)
密码的有效期(用天数来表示,从1970.1.1开始计算到密码过期有多少天)
警告时间(密码过期之前的警告时间)
密码有效期
帐号的有效期
预留字段
​

12.4删除用户

[root@qfedu.com ~]#userdel -r 用户名称
-r 连带个人信息(家目录,个人邮箱)一起删除 

12.5切换用户

[root@qfedu.com ~]#su -  账户
[root@qfedu.com ~]#su -l 账户

组管理

创建组
    [root@qfedu.com ~]#groupadd 组名
    [root@qfedu.com ~]#groupadd -g gid 组名
    [root@qfedu.com ~]#groupadd -g gid -o 组名
    
查看组
    [root@qfedu.com ~]#cat /etc/group
    组名:代表组密码:gid:组员
​
    查看一个用户的所属组
    [root@qfedu.com ~]#groups 用户名称
​
修改组
    [root@qfedu.com ~]#groupmod 参数 组名
    -g
    -n
    -o 
    [root@qfedu.com ~]#groupmod -g 2000 grp1
    [root@qfedu.com ~]#groupmod -n grp3 grp1
    
​
给组设置密码(了解)
    [root@qfedu.com ~]#gpasswd 参数 组名
    [root@qfedu.com ~]#gpasswd grp2
    
    组密码作用:临时切换当前登陆账户组身份,让这个账户暂时拥有所切换组的权限
    
给组添加账户
    [root@qfedu.com ~]# gpasswd -a user10 grp2
    Adding user user10 to group grp2
    
同时添加多个用户到组:(添加并且覆盖)
    [root@qfedu.com ~]# gpasswd -M jim,tom,wing 组名
​
从组删除账户
    [root@qfedu.com ~]# gpasswd -d user10 grp2
​
指定组管理员(组管理员一个组只有一个,撤销组管理员可以到/etc/gshadow下,也可以# gpasswd -A "" grp2)
    [root@qfedu.com ~]# gpasswd -A user12 grp2
    
组密码文件
    [root@qfedu.com ~]# cat /etc/gshadow
    组名:密码:组管理员:组员
​
删除组
    [root@qfedu.com ~]# groupdel 组名
    用户的主属组不能删除
​
[root@tianyun ~]# usermod -s /sbin/nologin niuniu2
​
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值