day8用户管理

用户管理

用户

  • 用户指的是能够正常登录Linux或Windows系统
    区别
  • 本质都是登录系统,只不过Linux支持多个用户同时登录
    Linux为什么要创建用户
  • 1.系统上的每一个进程(运行的程序)都需要一个特定的用户运行
  • 2.通常在公司是使用普通用户管理服务器,因为root权限过大,容易造成故障。
    查看系统中所存在的用户
[root@oldboy ~]# id
uid=0(root) gid=0(root) groups=0(root)
[root@oldboy ~]# id long
uid=1000(long) gid=1000(long) groups=1000(long)

创建用户会在系统的那个配置中保存信息

  • 当创建一个用户时,系统会操作/etc/passwd /etc/shadow 这两个文件,变 更文件中的内容


    day8用户管理_第1张图片
    2.png

系统对用户的约定

day8用户管理_第2张图片
3.png

PS:在CentOS7系统之前,UID1-499用于系统用户,而UID 500+则用于普通用户

添加用户

1.创建whl用户,UID5001,基本组student,附加组sa 注释信 息:2019 new student,登陆shell:/bin/bash 
[root@oldboy ~]# groupadd student
[root@oldboy ~]# groupadd sa
[root@oldboy ~]# useradd whl -u5001 -g student -G sa -c "2020 new" -s /bin/bash
#检查用户
[root@oldboy ~]# id whl
uid=5001(whl) gid=6670(student) groups=6670(student),1002(sa)
[root@oldboy ~]# grep "whl" /etc/passwd
whl:x:5001:6670:2020 new:/home/whl:/bin/bash
2.创建mysql系统用户,-M不建立用户家目录 -s指定nologin使其用户 无法登陆系统 
[root@oldboy ~]# useradd mysql -r -M -s /sbin/nologin 
#检查用户
[root@oldboy ~]# id mysql
uid=997(mysql) gid=995(mysql) groups=995(mysql)
#检查用户
[root@oldboy ~]# grep "mysql" /etc/passwd
mysql:x:997:995::/home/mysql:/sbin/nologin
#模拟登陆.登陆失败
[root@oldboy ~]# su mysql
This account is currently not available.
3.创建一个od用户,uid为6666,附加组为sa,用户的家目录 为/tmp/od 登陆的shell为/sbin/nologin 
[root@oldboy ~]# useradd od -u6666 -Gsa -d /tmp/od -s /sbin/nologin
PS: UID GID 在整个系统是唯一的

选项

  • -u 指定要创建用户的UID,不允许冲突
  • -g 指定要创建用户默认组(基本组 主要的组)
  • -G 指定要创建用户附加组,逗号隔开可添加多个附加组
  • -d 指定要创建用户家目录 usermod修改用户[重要程度一般]
  • -s 指定要创建用户的bash shell /bin/bash
  • -c 指定要创建用户注释信息
  • -M 给创建的用户不创建家目录
  • -r 创建系统账户,默认无家目录 [999-200]

usermod修改用户[重要程度一般]

1.检查之前创建的od用户
[root@oldboy ~]# id od
uid=6666(od) gid=6671(od) groups=6671(od),1002(sa)
2.修改od用户uid 9999、gid (devops),附加组 dba,sa,dsb 
[root@oldboy ~]# groupadd devops
[root@oldboy ~]# groupadd dba
[root@oldboy ~]# groupadd sa
[root@oldboy ~]# groupadd dsb
[root@oldboy ~]# usermod od -u 9999 -g devops -aG dba,sa,dsb
[root@oldboy ~]# id od
uid=9999(od) gid=6667(devops) groups=6667(devops),1002(sa),6668(dsb),6672(dba)
3.修改od用户的注释信息, 用户家目录, 登录shell, 登录名
[root@oldboy ~]# usermod od -c "oldboyedu.com" -md /home/oldboy -s /bin/bash -l oldboy
[root@oldboy ~]# grep "oldboy" /etc/passwd
oldboy:x:9999:6667:oldboyedu.com:/home/oldboy:/bin/bash

选项

  • -u 指定要修改用户的UID
  • -g 指定要修改用户基本组
  • -G 指定要修改用户附加组,使用逗号隔开多个附加组, 覆盖原有的附 加组 -aG 追加
  • -d 指定要修改用户家目录 -md 旧家搬新家
  • -s 指定要修改用户的bash shell
    userdel删除用户
  • -c 指定要修改用户注释信息
  • -l 指定要修改用户的登陆名
  • -L 指定要锁定的用户
  • -U 指定要解锁的用户

删除用户

选项

  • -r 删除用户同时删除它的家目录
1.删除user1用户,但不删除用户家目录和 mail spool [root@oldboy ~]# userdel user1
2.-r参数可以连同用户家目录一起删除(慎用) 
[root@oldboy ~]# userdel -r user1
PS: 与用户相关的还有很多命令,以下简单列举一些,但都不是常用 命令,所以了解即可 1) 使用finger命名查询用户信息以及登录信息

[root@oldboy ~]# who
root pts/0 2019-08-05 14:55 (10.0.0.1)
当前登录系统的用户是
[root@oldboy ~]# whoami root

你可能感兴趣的:(day8用户管理)