• Linux用户的基本操作1 用户相关信息 及useradd /usermod 部分


    linux 用户管理 - 用户的基本操作

    用户管理

    1.什么是用户?
    用户指的是能够正常登录Linux或windows系统
    
    2.那Linux与windows系统的用户有什么区别?
    本质都是登录系统的,只不过Linux支持多用户同时登录,windows默认不支持,但是修改`组策略`的情况下也是可以多用户登录的。
    

    3.用户的作用

    1)系统中的进程(运行的程序),都是需要特定的用户来运行的
    2)管理文件的权限,每一个文件都有特定的用户拥有,所以访问一个文件或者目录受到用户的限制
    3)进程能够以何种方式访问某一个文件或目录,和进程所关联的用户有关
    

    4.如何查看系统中所存在的用户?

    1)查看当前系统用户信息
    [root@db04 ~]# id
    uid=0(root) gid=0(root) 组=0(root)
    [root@db04 ~]# id zls
    uid=602(zls) gid=602(zls) 组=602(zls)
    
    2)每一个文件都有所有者
    [root@db04 tmp]# ll
    总用量 12
    drwxr-xr-x 2 zls     zls     4096 6月   2 20:44 zls
    drwxr-xr-x 2 oldboy  oldboy  4096 6月   2 20:44 oldboy
    drwxr-xr-x 2 student student 4096 6月   2 20:44 student
    
    3)每一个进程都有用户运行
    [root@db04 ~]# ps -ef|less
    

    5.用户相关配置文件

    用户的信息存放在/etc/passwd用户的密码都保存在/etc/shadow这两个文件是linux系统中最重要的文件之一。
    如果没有这两个文件或者这两个文件出问题,会导致无法正常登录linux系统。

    1)/etc/passwd账户文件

    [root@zls ~]# head -1 /etc/passwd
    root:x:0:0:root:/root:/bin/bash
      1  2 3 4  5    6     7
    
    注释: /etc/passwd由 ':' 为分割符, 分为7个字段,每个字段的具体含义如下:
    字段名称               注释说明
    1.用户名称         #用户的账号名称
    2.密码占位符       #存放账户的口令,暂用x表示,密码保存在/etc/shadow
    3.用户的UID       #用户标识号
    4.用户基本组GID     #组标识号
    5.用户注释         #用户详细信息
    6.用户家目录       #root家目录是/root普通用户家目录存在/home/username(可自定义)
    7.用户登录Shell    #用户登录Linux使用的shell  #cat /etc/shells
    
    2)/etc/shadow 用户密码文件

    [root@zls ~]# tail -1 /etc/shadow
    zls1:!!:16312:0:99999:7:::
    
    注释: /etc/shadow由 ':' 为分割符, 分为9个字段,每个字段的具体含义如下:
    字段名称                       注释说明
    1.用户登陆名             #用户的账号名称
    2.加密后的密码            #用户密码,这是加密过的口令(未设密码时为!!)
    3.最近一次密码更改时间     #从1970年到最近一次更改密码时间之间过了多少天
    4.密码最少使用几天        #密码最少使用几天才可以更改密码(0表示无限制)
    5.密码最长使用几天      #密码使用多少天需要修改密码(默认99999永不过期)
    6.密码到期前警告期限     #密码过期前多少天提醒用户更改密码(默认过期提前7天警告)
    7.密码到期后保持活动的天数 #在此期限内, 用户依然可以登陆系统并更改密码, 指定天数过后, 账户被锁定
    8.账户到期时间        #从1970年起,账户在这个日期前可使用,到期后失效。
    9.标志                        #保留
    

    6.用户分类(约定,规范)

    用户UID 系统中约定的含义
    0 超级管理员(拥有最高权限)
    1-200 系统用户,系统自建,由系统分配给系统进程使用
    201-999 系统用户,咱们创建,用来运行服务账户,不需要登陆系统(动态分配)
    1000+ 常规普通用户
    • 注意: 在CentOS7系统之前, UID1-499用于系统用户, 而UID 500+则用于普通用户

    用户的相关命令

    #### 1.`useradd`
    

    使用useraddadduser这两个命令,来创建用户

    添加用户前需要确定:
    
    确定用户的默认组是否有特殊要求
    确定用户是否允许登陆
    确定用户的密码策略
    确定用户的有效期
    确定用户的uid是否有特殊要求
    
    1)使用useradd命令新增用户, 注意: adduser命令软链接指向useradd命令
    -u 指定用户的UID,不能和现有ID冲突
    -g 指定用户用户默认基本组
    -G 指定用户附加组,用逗号隔开添加多个附加组
    -d 指定用户家目录
    -c 指定用户注释信息
    -M 不建立家目录
    -s 指定用户默认shell
    -r 创建系统账户, 没有家目录
    -a 附加组,都留下,配合-G,追加
    #创建zls用户,指定UID5001,基本组students 附加组sa,dba 注释信息:one newB user, 登陆的shell:/bin/bash
    [root@zls ~]# groupadd sa
    [root@zls ~]# groupadd dba
    [root@zls ~]# groupadd students
    [root@zls ~]# useradd -u 5001 -g students -G sa,dba -c "one newB user" -d /home/zls -s /bin/bash zls
    [root@zls ~]# tail -1 /etc/passwd
    zls:x:5001:505:one newB user:/home/zls:/bin/bash
    
    //创建系统用户,不建立用户家目录 指定nologin使其用户无法登陆系统
    [root@zls ~]# useradd mysql -M -s /sbin/nologin
    [root@zls ~]# useradd -r dba -s /sbin/nologin
    

    2)使用usermod命令修改用户组

    -u 修改用户的UID
    -g 修改用户所属的基本组GID
    -G 修改用户附加组, 使用逗号隔开多个附加组, 覆盖原有的附加组
    -a 追加更多的附加组, 必须和-G使用: -aG 追加附加组
    -m 家目录迁移, 必须和-d一起使用, 移动用户的家目录到新的位置
    -d 指定用户的家目录新位置
    -c 修改用户的注释信息
    -s 更改用户使用的shell
    -l 更改用户登录名
    -L 锁定用户
    -U 解锁用户
    [root@zls ~]# grep "zls" /etc/passwd
    zls:x:5001:505:2018 new student:/home/zls:/bin/bash
    
    //修改用户uid,gid, 附加组, 注释信息, 用户家目录, 登录shell, 登录名
    
    //建立组,指定组gid
    [root@zls ~]# groupadd -g 5008 network_sa
    [root@zls ~]# groupadd -g 5009 devops
    
    //修改用户属性
    [root@zls ~]# usermod -u 6001 -g5008 -a -G 5009 -c "2019 new student" -md /zls -s /bin/sh -l zls_zls zls
    
    //检查是否修改成功
    [root@zls ~]# grep "zls" /etc/passwd
    zls_zls:x:6001:5008:2019 new student:/zls:/bin/sh
    [root@zls ~]# id zls_zls
    uid=6001(zls_zls) gid=5008(network_sa) groups=5008(network_sa),503(sa),504(dba),5009(devops)
    
    //验证家目录
    [root@zls ~]# ll -d /zls
    drwx------. 2 zls_zls network_sa 4096 2014-09-23 00:13 /zls
    
    
    锁定用户
    [root@zls ~]# echo "123" |passwd --stdin zls_zls
    [root@zls ~]# usermod -L zls_zls
    //无法正常登录系统
    ➜  ~ ssh zls_zls@192.168.56.11
    zls_zls@192.168.56.11's password:
    Permission denied, please try again.
    
    解锁用户
    [root@zls ~]# usermod -U zls_zls
    //正常登录系统
    ➜  ~ ssh zls_zls@192.168.56.11
    zls_zls@192.168.56.11's password:
    Welcome to Aliyun Esc Linux
    -sh-4.1$
    
  • 相关阅读:
    Ext.Ajax.request 传值问题
    类型反射与晚期绑定
    .net使用外部程序集拓展功能
    C#求解哈夫曼树
    几种获取操作系统语言的方法及其相似点与不同点
    C#调用非托管代码(C++方法)的2种方式
    构建可终结类型和可处置类型
    dockercompose 安装配置neo4j
    Windows 7 SDK Fails to Install with Return Code 5100 (GRMSDK_EN_DVD.iso)
    mysql密码修改方法
  • 原文地址:https://www.cnblogs.com/gongjingyun123--/p/11090692.html
Copyright © 2020-2023  润新知