zoukankan      html  css  js  c++  java
  • Day 9 用户管理

    1.什么是用户?

    能正常登陆系统的都算用户
    windows系统和linux系统的用户有什么区别?
    本质上没有区别, linux支持多个用户同一时刻登陆系统, 互相之间不影 响
    而windows只允许同一时刻不允许多个用户登录. (windowsServer2008 )
    root 超级管理员用户
    普通用户 多个普通用户能逻辑上分为一个组 当然一个用户也能隶属 于多个组
    [root@baozexu ~]# head -1 /etc/passwd
    root:x:0:0:root:/root:/bin/bash
    

    [root@baozexu ~]# head -1 /etc/shadow
    root:$6$pdMEnxZOv2e6yicE$qdxO.XY4YwXY5pAEa2gtaV5PdUChr0A5y0bZqez
    MoX1Q26emEPINkKZoifQLiyDoyAFRgu.s4QJsGXYhewrrh1::0:99999:7:::
    

    4.最后我们需要了解下系统对用户的一个约定?(约定娶你,就真的会娶吗?)

    用户UID	系统中约定的含义
    0	    超级管理员,最高权限,有着极强的破坏能力
    1~200	系统用户,用来运行系统自带的进程,默认已创建
    201~999	系统用户,用来运行用户安装的程序,所以此类用户无需登录系统
    1000+	普通用户,正常可以登陆系统的用户,权限比较小,能执行的任务有限
    

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

    2.为什么要创建用户?

    1.系统上的每一个进程(运行的程序),都需要一个特定的用户运行
    2.通常在公司是使用普通用户管理服务器,因为root权限过大,容易 造成故障。
    3.如何查看系统中所存在的用户
    4.创建用户会在系统的哪个配置中保存信息
    [root@oldboyedu ~]# id uid=0(root) gid=0(root) groups=0(root) 
    [root@oldboyedu ~]# id jack uid=1000(jack) gid=1000(jack) groups=1000(jack)
    
    当创建一个用户时,系统会操作/etc/passwd /etc/shadow 这两个文件,变更文件中的内容
    下面我们就围绕着用户的创建、变更、删除等来讲讲涉及到的命令: useradd、usermod、userdel

    useradd添加用户

    选项
     -u 指定要创建用户的UID,不允许冲突
     -g 指定要创建用户默认组
     -G 指定要创建用户附加组,逗号隔开可添加多个附加组
     -d 指定要创建用户家目录
     -s 指定要创建用户的bash shell
     -c 指定要创建用户注释信息
     -M 给创建的用户不创建家目录
    

    -r 创建系统账户,默认无家目录

    1.创建bgx用户,UID5001,基本组students,附加组sa 注释信 息:2019 new student,登陆shell:/bin/bash
     [root@oldboyedu ~]# groupadd students [root@oldboyedu ~]# groupadd sa
     [root@oldboyedu ~]# useradd oldxu -u5001 -g students G sa -c "2020 new" -s /bin/bash
    
    检查用户
    [root@oldboyedu ~]# id oldxu 
    uid=5001(oldxu) gid=1003(students) groups=1003(students),1004(sa)
    
    检查用户
     [root@oldboyedu ~]# grep "oldxu" /etc/passwd   
      oldxu:x:5001:1003:2020 new:/home/oldxu:/bin/bash
    
    2.创建mysql系统用户,-M不建立用户家目录 -s指定nologin使其用户 无法登陆系统
     [root@oldboyedu ~]# useradd -r  -M -s /sbin/nologin   mysql
    
    检查用户
     [root@oldboyedu ~]# id mysql 
    uid=997(mysql) gid=995(mysql) groups=995(mysql)
    
    检查用户
     [root@oldboyedu ~]# grep "mysql" /etc/passwd 
      mysql:x:997:995::/home/mysql:/sbin/nologin
    
    模拟登陆.登陆失败
     [root@oldboyedu ~]# su - mysql
     This account is currently not available.
    
    3.创建一个xlw用户,uid为6666,附加组为sa,用户的家目录 为/tmp/xlw 登陆的shell为/sbin/nologin
    [root@oldboyedu ~]# useradd od -u 777 -G sa -d /tmp/od -s /sbin/nologin
    
    PS: UID GID 在整个系统是唯一的. #选项 # -u 指定要创建用户的UID,不允许冲突 # -g 指定要创建用户默认组(基本组 主要的组) # -G 指定要创建用户附加组,逗号隔开可添加多个附加组 # -d 指定要创建用户家目录

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

    选项

    -u 指定要修改用户的UID
    -g 指定要修改用户基本组
    -G 指定要修改用户附加组,使用逗号隔开多个附加组, 覆盖原有的附加组
    -d 指定要修改用户家目录
    -s 指定要修改用户的bash shell
    -c 指定要修改用户注释信息
    -l 指定要修改用户的登陆名
    -L 指定要锁定的用户
    -U 指定要解锁的用户
    
    -s 指定要创建用户的bash shell   /bin/bash   /sbin/nologin # -c 指定要创建用户注释信息 # -M 给创建的用户不创建家目录 # -r 创建系统账户,默认无家目录   [999-200]
    1.检查之前创建的od用户
     [root@oldboyedu ~]# id od uid=777(od) gid=6667(od) groups=6667(od),1004(sa)
    
    2.修改od用户uid 9999、gid (devops),附加组 dba,sa,dsb [root@oldboyedu ~]# groupadd devops
     [root@oldboyedu ~]# groupadd dba 
     [root@oldboyedu ~]# groupadd sa
     [root@oldboyedu ~]# groupadd dsb 
     [root@oldboyedu ~]# usermod od -u9999 -g devops -aG dba,sa,dsb
    
    3.修改od用户的注释信息, 用户家目录, 登录shell, 登录名 [root@oldboyedu ~]# usermod od -c "oldboyedu.com" -md /home/oldboy -s /bin/bash -l oldboy
    [root@oldboyedu ~]# grep "oldboy" /etc/passwd
     oldboy:x:9999:6668:oldboyedu.com:/home/oldboy:/bin/bas h
    
    选项 # -u 指定要修改用户的UID # -g 指定要修改用户基本组 # -G 指定要修改用户附加组,使用逗号隔开多个附加组, 覆盖原有的附 加组 -aG 追加 # -d 指定要修改用户家目录 -md 旧家搬新家 # -s 指定要修改用户的bash shell

    userdel删除用户

    PS: 与用户相关的还有很多命令,以下简单列举一些,但都不是常用 命令,所以了解即可
    (1) 使用finger命名查询用户信息以及登录信息, 示例: finger UserName ######(2) 使用chfn命令修改用户信息,示例: chfn UserName
    ( 3) 使用chsh命令修改用户登录Bash Shell,示例: chsh UserName
    (4) 使用who、whoami、w检查用户登陆情况
    ######选项 -r 删除用户同时删除它的家目录
    
    1.删除user1用户,但不删除用户家目录和 mail spool
     [root@bgx ~]# userdel user1
    
    2.-r参数可以连同用户家目录一起删除(慎用)
    [root@bgx ~]# userdel -r user1
    [root@oldboyedu ~]# who root     pts/0        2019-08-05 08:59 (10.0.0.1) root     pts/1        2019-08-05 10:14 (10.0.0.1) root     pts/2        2019-08-05 12:26 (10.0.0.1)
    
    当前登录系统的用户是 [root@oldboyedu ~]# whoami root

    2 今日总结

    1.什么是用户? 2.我们为什么要创建用户? 3.用户相关配置文件? /etc/passwd(重要) /etc/shadow (一般般) 4.useradd usermod userdel 5.明天: 为用户设定密码 用户创建的流程 组的管理 普通用户提 权
  • 相关阅读:
    json schema相关
    好看的记录片和电影
    java函数局部变量的坑(非常隐藏)
    maven操作
    Js数组的常用的方法概述
    深入理解JS各种this指向问题
    浅谈ES5和ES6继承和区别
    vue
    使用 vue-i18n 切换中英文
    js_数组对象的浅克隆
  • 原文地址:https://www.cnblogs.com/baozexu/p/11372823.html
Copyright © 2011-2022 走看看