组管理:groupadd groupdel
用户管理:useradd userdel
密码管理:passwd chage

用户组:groupadd groupdel

  1. [root@bogon ~]# groupadd hr
  2. [root@bogon ~]# groupadd sale
  3. [root@bogon ~]# groupadd it
  4. [root@bogon ~]# groupadd fd
  5. [root@bogon ~]# groupadd market
  6. [root@bogon ~]# tail /etc/group
  7. postdrop:x:90:
  8. postfix:x:89:
  9. chrony:x:996:
  10. alice:x:1000:
  11. apache:x:48:
  12. hr:x:1001:
  13. sale:x:1002:
  14. it:x:1003:
  15. fd:x:1004:
  16. market:x:1005:

用户管理:useradd userdel

[root@bogon ~]# useradd --help
用法:useradd [选项] 登录
      useradd -D
      useradd -D [选项]
选项:
  -f, --inactive INACTIVE       新账户的密码不活动期
  -g, --gid GROUP        新账户主组的名称或 ID
  -G, --groups GROUPS    新账户的附加组列表
  -h, --help                    显示此帮助信息并推出
  -k, --skel SKEL_DIR    使用此目录作为骨架目录
  -K, --key KEY=VALUE           不使用 /etc/login.defs 中的默认值
  -o, --non-unique        允许使用重复的 UID 创建用户
  -p, --password PASSWORD        加密后的新账户密码
  -r, --system                  创建一个系统账户
  -R, --root CHROOT_DIR         chroot 到的目录
  -P, --prefix PREFIX_DIR       prefix directory where are located the /etc/* files
  -s, --shell SHELL        新账户的登录 shell
  -u, --uid UID            新账户的用户 ID
  -U, --user-group        创建与用户同名的组
  -Z, --selinux-user SEUSER        为 SELinux 用户映射使用指定 SEUSER

1.创建用户不指定选项

[root@bogon ~]# useradd user01
[root@bogon ~]# grep 'user01' /etc/passwd /etc/shadow /etc/group /etc/gshadow
/etc/passwd:user01:x:1001:1006::/home/user01:/bin/bash
/etc/shadow:user01:!!:18488:0:99999:7:::
/etc/group:user01:x:1006:
/etc/gshadow:user01:!::
[root@bogon ~]# ll -d /home/user01/
drwx------. 2 user01 user01 62 8月  14 12:48 /home/user01/
[root@bogon ~]# ll /var/spool/mail/user01 
-rw-rw----. 1 user01 mail 0 8月  14 12:48 /var/spool/mail/user01
  1. 在 /etc/passwd 文件中创建一行与 user01 用户相关的数据
  2. 在 /etc/shadow 文件中新增了一行与 user01 用户密码相关的数据
  3. 在 /etc/group 文件中创建一行与用户名一模一样的群组
  4. 在 /etc/gshadow 文件中新增一行与新增群组相关的密码信息
  5. 默认创建用户的主目录和邮箱
  6. 将 /etc/skel 目录中的配置文件复制到新用户的主目录中

/etc/skel
这个目录下的所有文件都是隐藏文件(以.点开头的文件)。
通过修改、添加、删除/etc/skel目录下的文件,我们可为新创建的用户提供统一的、标准的、初始化用户环境。

2.初始组和附加组

初始组,指用户登陆时就拥有这个用户组的相关权限。每个用户的初始组只能有一个,通常就是将和此用户的用户名相同的组名作为该用户的初始组。比如说,我们手工添加用户 user01,在建立用户 user01 的同时,就会建立 user01 组作为 user01 用户的初始组。
建立用户是通过-g可以指定初始组(主组),为指定,系统会创建一个与用户同名的组作为用户的主组
不建议使用-g指定主组
附加组,指用户可以加入多个其他的用户组,并拥有这些组的权限。每个用户只能有一个初始组,除初始组外,用户再加入其他的用户组,这些用户组就是这个用户的附加组。附加组可以有多个,而且用户可以有这些附加组的权限。

1.创建用户时通过 -G指定附加组
2.用户已存在,加入附加组 usermod gpasswd 命令

注意:
1.-g -G 仅使用在useradd创建用户是使用
2.-g -G 指定的组必须事先存在

3.创建用户指定选项

[root@bogon ~]# useradd user02 -G hr
[root@bogon ~]# useradd user03 -G hr,fd // 创建用户指定附加组
[root@bogon ~]# id user01
uid=1001(user01) gid=1006(user01) 组=1006(user01)
[root@bogon ~]# id user02
uid=1002(user02) gid=1007(user02) 组=1007(user02),1001(hr)
[root@bogon ~]# id user03
uid=1003(user03) gid=1008(user03) 组=1008(user03),1001(hr),1004(fd)
[root@bogon ~]# useradd user04 -s /sbin/nologin         //创建用户并指定shell

4.删除用户 userdel

[root@bogon ~]# userdel user04 //仅将用户删除,/home/user04,/var/spool/mail/user04 依然存在
[root@bogon ~]# ls /home/
alice  user01  user02  user03  user04
[root@bogon ~]# ls /var/spool/mail/
alice  mel  user01  user02  user03  user04
[root@bogon ~]# useradd user04  //添加已删除的用户
useradd:警告:此主目录已经存在。
不从 skel 目录里向其中复制任何文件。
正在创建信箱文件: 文件已存在
[root@bogon ~]# userdel -r user04        // -r 将用户信息全部删除
[root@bogon ~]# ls /home/
alice  user01  user02  user03
[root@bogon ~]# ls /var/spool/mail/
alice  mel  user01  user02  user03

5.用户密码

[root@bogon ~]# passwd alice   // root可以给任何用户设置密码
[alice@bogon ~]$ passwd             // 普通用户只能给自己修改密码,而且必须提供原密码

6.管理组成员

usermod

[root@bogon ~]# usermod -G hr user04    // 覆盖原有的附加组
[root@bogon ~]# userdel -G fd,it user04
[root@bogon ~]# userdel -aG fd,it user04 // 添加新的附加组

gpasswd

[root@bogon ~]# id user01
uid=1001(user01) gid=1006(user01) 组=1006(user01)
[root@bogon ~]# gpasswd -a user01 hr        // -a表示添加  -M 添加多个用户到附加组
正在将用户“user01”加入到“hr”组中
[root@bogon ~]# id user01
uid=1001(user01) gid=1006(user01) 组=1006(user01),1001(hr)
[root@bogon ~]# gpasswd -a user01 it
正在将用户“user01”加入到“it”组中
[root@bogon ~]# id user01
uid=1001(user01) gid=1006(user01) 组=1006(user01),1001(hr),1003(it)
[root@bogon ~]# gpasswd -d user01 it      // -d表示删除
正在将用户“user01”从“it”组中删除

7.其他管理项

[root@bogon ~]# userdel -s /sbin/nologin user04

8.所有操作都可以在文件中修改

对应文件中的对应项删除

[root@bogon ~]# id user01
uid=1001(user01) gid=1006(user01) 组=1006(user01),1001(hr),1003(it)
[root@bogon ~]# vim /etc/group
[root@bogon ~]# id user01
uid=1001(user01) gid=1006(user01) 组=1006(user01),1003(it)

删除user01中hr附加组,在/etc/group文件中找到hr组,并删除 ,user01 并关闭就可以了