用户管理目标:
    1、用户账号的作用
    2、用户增、删、改、查
    3、用户账号的相关数据文件
    4、用户组的创建、用户的分组

用户账号的作用:
    1、标识用户的身份,让每个用户有私有的文件夹(家目录),未授权时,每个人只能访问自己的文件。
    2、每个用户远程管理服务器时,所做的操作,root管理员可查到。

查询:
    查用户id号:id 或 id 用户名
    注:id查到的信息包括uid用户号、gid组号、Gid附属组,root用户的3个ID号都为0。

用户账号的相关数据文件:
一、passwd记录用户的账号信息。
    用useradd增、userdel删除、usermod改会影响到此文件内容。
    用户的账号信息文件:head  -3  /etc/passwd   内容如下
        root:x:0:0:root:/root:/bin/bash

格式说明:
    1.用户名:
    2.密码:x表示此用户需要用密码登录。如果想免密码登录,用vim修改此文件,将x删掉即可。
    3.用户uid号
    4.用户的gid组号
    5.用户的备注信息
    6.用户的家目录
    7.用户登录的shell环境

二、shadow文件记录用户密码信息。
    用usermod、passwd会影响此文件内容。
    head   -3   /etc/shadow  内容如下
        root:$6$Se16soYt$MK.mk:17464:0:99999:7:::
        bin:*:17110:0:99999:7:::
    格式说明:
        1.用户名
        2.加密的密码
        3.最后密码修改的时间
        4.允许修改密码最小间隔时间
        5.允许修改密码最大间隔时间
        6.密码过期警告时间
        7.密码的宽限时间
        8.密码的失效时间(年-月-日)
        9.保留,暂时没有具体功能

三、用户账号的增、删、改,以及密码设置。
    增(add):useradd
    删(del):userdel
    改(modify):usermod
    密码设置:passwd
    临时切换用户:su - 用户名    (用exit退出此用户)

    增(add):useradd
    查帮助手册:man useradd
    格式:useradd [选项] 用户名
    例:
    useradd -D    显示或更改默认的 useradd 配置。这些设置保存在/etc/default/useradd文件中
    useradd ak    创建ak用户。是按照系统默认设置来创建。
    useradd -d /opt/sky -u 110 -s /sbin/nologin -c 'admin' sky 
    useradd -g 2 -G 0,1,2 -s /bin/bash bk
    tail -5 /etc/passwd    查看/etc/passwd文件的最后5行

    选项:
    -b, --base-dir BASE_DIR 新账户的主目录的基目录
    -c, --comment COMMENT         新账户的 GECOS 字段(即备注)
    -d, --home-dir HOME_DIR       新账户的主目录(即家目录)
    -D, --defaults 显示或更改默认的 useradd 配置
    -e, --expiredate EXPIRE_DATE  新账户的过期日期
    -f, --inactive INACTIVE       新账户的密码不活动期
    -g, --gid GROUP 新账户主组的名称或 ID,必须指定已存在的组号或组名
    -G, --groups GROUPS 新账户的附加组列表
    -h, --help                    显示此帮助信息并推出
    -k, --skel SKEL_DIR 使用此目录作为骨架目录
    -K, --key KEY=VALUE           不使用 /etc/login.defs 中的默认值
    -l, --no-log-init 不要将此用户添加到最近登录和登录失败数据库
    -m, --create-home 创建用户的主目录
    -M, --no-create-home     不创建用户的主目录
    -N, --no-user-group 不创建同名的组
    -o, --non-unique 允许使用重复的 UID 创建用户
    -p, --password PASSWORD 加密后的新账户密码
    -r, --system                  创建一个系统账户
    -R, --root CHROOT_DIR         chroot 到的目录
    -s, --shell SHELL 新账户的登录 shell
    -u, --uid UID 新账户的用户ID
    -U, --user-group 创建与用户同名的组
    -Z, --selinux-user SEUSER 为 SELinux 用户映射使用指定 SEUSER

    删(del):userdel
    格式:userdel [-r]    用户名
    例:
    userdel -r ak    删除ak用户账号及(-r)其家目录和邮件,用户的邮件位于/var/spool/mail目录中
    userdel sky    删除sky用户账号
    userdel bk
    ls /home /opt    显示指定目录的文件列表。看是否有sky、bk目录

    改(modify):usermod
    功能:修改用户账号的相关信息,包括用户名、备注描述信息、家目录、uid、gid、附属组、shell等信息。
    格式:usermod  [选项]  用户名

    选项:
    -c, --comment 注释            GECOS 字段的新值
    -d, --home HOME_DIR           用户的新主目录
    -e, --expiredate EXPIRE_DATE  设定帐户过期的日期为 EXPIRE_DATE
    -f, --inactive INACTIVE       过期 INACTIVE 天数后,设定密码为失效状态
    -g, --gid GROUP               强制使用 GROUP 为新主组
    -G, --groups GROUPS           新的附加组列表 GROUPS
    -a, --append GROUP            将用户追加至上边 -G 中提到的附加组中, 并不从其它组中删除此用户
    -h, --help                    显示此帮助信息并推出
    -l, --login LOGIN             新的登录名称
    -L, --lock                    锁定用户帐号
    -m, --move-home               将家目录内容移至新位置 (仅于 -d 一起使用)
    -o, --non-unique              允许使用重复的(非唯一的) UID
    -p, --password PASSWORD       将加密过的密码 (PASSWORD) 设为新密码
    -R, --root CHROOT_DIR         chroot 到的目录
    -s, --shell SHELL             该用户帐号的新登录 shell
    -u, --uid UID                 用户帐号的新 UID
    -U, --unlock                  解锁用户帐号
    -Z, --selinux-user  SEUSER       用户账户的新 SELinux 用户映射

    密码设置:passwd
    用法:passwd [选项]    用户名


组管理目标:
    1、组的作用
    2、组的相关数据文件
    3、组增、删、改、查
    4、组的创建,组中添加、删除成员

1、组的作用
    组:类似于QQ群的功能。可以在组中添加、删除成员。有利于对权限进行管理。
2、组的相关数据文件
    组账号信息文件:head -1 /etc/group    内容如下
        root:x:0:lp
    格式:组名:组密码:组gid号:组成员
    组的密码文件:head -1 /etc/gshadow    内容如下
        root:168:adm,bin,lp:adm
    格式:组名:群密码:群主:组成员
3、组增、删、改、查
    组的增:groupadd [选项]    组名
    组的删:groupdel [选项]    组名
    组的改:groupmod [选项]    组名
    组的查:
        显示指定用户的组信息:groups 用户名
        显示系统中的所有组账号信息:cat /etc/group
    组密码设置:gpasswd    可以实现给组设置密码、添加和删除成员、设置组管理员
    用户和组的策略配置文件:/etc/login.defs