用户组管理命令

1、useradd命令

  • 命令解释

  useradd - create a new user or update default new user information(创建一个新用户或更新默认新用户信息 )

  • 命令语法

  useradd [选项] 登录
  useradd -D
  useradd -D [选项]

  • 命令选项

选 项 作 用
-u 或 --uid 指定用户ID
-g 或 --gid 指定用户所属基本组,此组必须事先存在
-G 或 --groups 指定用户所属的附加组,多个组之间用逗号分隔
-c 或 --comment 指定注释信息,会保存在 /etc/passwd 的备注栏位中
-d 或 --home 指定用户的家目录,通过复制 /etc/skel 目录并重命名实现
-s 或 --shell 指定用户的默认shell,所有可用的shell列表存储在 /etc/shells 中
-r 或 --system 创建系统用户
-d 显示创建用户的默认配置
-d 选项 修改默认选项的值(修改结果保存于 /etc/dafault/useradd 文件中)
  • 实例

  ① 创建用户gentoo,UID为4001,基本组为gentoo,附加组为distro(GID为5000)和peguin(GID为5001);
[root@localhost ~]# groupadd -g 5000 distro    \\创建用户组 distro
[root@localhost ~]# groupadd -g 5001 peguin    \\创建用户组 peguin
[root@localhost ~]# useradd -u 4001 -G distro,peguin gentoo
  ② 创建用户fedora,其注释信息为"Fedora Core",默认shell为/bin/tcsh;
[root@localhost ~]# useradd -c "Fedora Core" -s /bin/tcsh fedora

2、usermod命令

  • 命令解释

  usermod - modify a user account(修改一个用户账户)

  • 命令语法

  usermod [选项] 登录

  • 命令选项

选 项 作 用
-u 或 --uid 修改用户ID
-g 或 --gid 修改用户所属的基本组
-G 或 --groups 修改用户所属的附加组,原来的附加组会被覆盖
-a 追加用户所属的附加组
-c 或 --comment 修改注释信息
-d 或 --home 修改用户的家目录,用户原有的文件不会被转移至新位置
-m 或 --move-home 与 -d 选项一同使用,将原来的家目录移动到新位置并根据需要改名
-s 或 --shell 修改用户的默认shell
-l 修改用户名
-L 或 --lock 锁定用户密码,在 /etc/shadow 中的密码字符串之前会添加一个" ! "
-U 或 --unlock 解锁用户密码
  • 实例

  ① 修改gentoo用户的家目录为/var/tmp/gentoo;要求其原有文件仍能被用户访问;
[root@localhost ~]# usermod -md /var/tmp/gentoo gentoo
  ② 为gentoo新增附加组netadmin;
[root@localhost ~]# groupadd netadmin    //创建用户组 netadmin
[root@localhost ~]# usermod -aG netadmin gentoo

3、userdel命令

  • 命令解释

   userdel - delete a user account and related files(删除用户账户和相关文件)

  • 命令语法

  userdel [选项] 登录

  • 命令选项

选 项 作 用
-r 删除用户时一并删除其家目录
  • 实例

  删除用户fedora,同时删除用户家目录和mail spool;
[root@localhost ~]# userdel -r fedora

4、groupadd命令

  • 命令解释

   groupadd - create a new group(创建一个新组)

  • 命令语法

   groupadd [选项] 组

  • 命令选项

选 项 作 用
-g 指定组ID
-r 创建系统组
  • 实例

  创建一个新组tom,GID为5003;
[root@localhost ~]# groupadd -g 5003 tom

5、groupmod命令

  • 命令解释

  groupmod - modify a group definition on the system(修改系统上的组属性)

  • 命令语法

  groupmod [选项] 组

  • 命令选项

选 项 作 用
-g 修改组ID
-n 修改组名
  • 实例

   修改tom组的GID为5004,组名为jerry;
[root@localhost ~]# groupmod -g 5004 -n jerry tom

6、groupdel命令

  • 命令解释

  groupdel - delete a group(删除一个组)

  • 命令语法

  groupdel [选项] 组

  • 命令选项

  并没有什么常用选项哦!

  • 实例

   删除tom组;
[root@localhost ~]# groupdel jerry

7、passwd命令

  • 命令解释

  passwd - update user’s authentication tokens(更新用户的身份验证令牌)

  • 命令语法

  passwd [-k] [-l] [-u [-f]] [-d] [-e] [-n 最小天数] [-x 最大天数] [-w 警告日期] [-i 非活动日期] [-S] [–stdin] [用户名]

  • 命令选项

① passwd :修改用户自己密码;
② passwd USERNAME:修改指定用户密码,仅root有此权限。

选 项 作 用
-l 停止账号使用
-u 启用已被停止的账户
-d 删除用户密码
-S 显示密码信息
-e DATE 设置密码过期日期
-n DAYS 密码的最短使用期限
-x DAYS 密码最长使用期限
-w DAYS 警告期限
–stdin 非交互式创建密码(echo “password” | passwd --stdin USERNAME)
  • 实例

   ① 修改gentoo用户密码;
[root@localhost ~]# passwd gentoo
更改用户 gentoo 的密码 。
新的 密码:
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
   ② 显示gentoo用户密码信息;
[root@localhost ~]# passwd -S gentoo
gentoo PS 2020-03-09 0 99999 7 -1 (密码已设置,使用 SHA512 算法。)

8、gpasswd命令

  • 命令解释

  gpasswd - administer /etc/group and /etc/gshadow(管理 /etc/group 和 /etc/gshadow,用于将一个用户添加到组或者从组中删除)

  • 命令语法

  gpasswd [选项] 组

  • 命令选项

选 项 作 用
-a USERNAME 添加用户到组
-d USERNAME 从组删除用户
  • 实例

   添加用户gentoo到tom组中;
[root@localhost ~]# gpasswd -a gentoo tom
正在将用户“gentoo”加入到“tom”组中

9、newgrp命令

  • 命令解释

  newgrp - log in to a new group(登录到一个新组)

  • 命令语法

  newgrp [-] [组]
  -:会模拟用户重新登陆以实现重新初始化其工作环境;

  • 命令选项

  没有选项哦!

  • 实例

   登入到tom组;
[root@localhost ~]# newgrp - tom

10、chage命令

  • 命令解释

  chage - change user password expiry information(更改用户密码过期信息)

  • 命令语法

  chage [选项] 登录

  • 命令选项

选 项 作 用
-d 指定密码最后修改日期
-E 密码到期的日期。过了这天,此账号可不用,0表示马上过期,-1表示永不过期
-w 密码过期前,提前收到警告信息的天数
-m 密码可以更改的最小天数。0表示任何时候都可以更改密码
-M 密码保持有效的最大天数
-l 列出当前密码设置信息
  • 实例

  查看root账户的密码设置信息;
[root@localhost ~]# chage -l root
最近一次密码修改时间                                    :从不
密码过期时间                                    :从不
密码失效时间                                    :从不
帐户过期时间                                            :从不
两次改变密码之间相距的最小天数          :0
两次改变密码之间相距的最大天数          :99999
在密码过期之前警告的天数        :7

11、id命令

  • 命令解释

  id - print real and effective user and group IDs(打印真实有效的用户和组ID)

  • 命令语法

  id [选项]… [用户]

  • 命令选项

选 项 作 用
-u 仅显示有效的UID
-g 仅显示有效的基本组ID
-G 仅显示用户所属的所有组ID
-n 显示名字而非ID
  • 实例

  ①显示当前用户信息;
[root@localhost ~]# id
uid=0(root) gid=0(root)=0(root),5003(tom) 环境=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
  ②显示当前用户所有组群的名字;
[root@localhost ~]# id -Gn

12、解析库文件

  ①/etc/passwd
[root@localhost ~]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
...

  /etc/passwd中存储了系统中所有用户的基本信息,文件中一行记录对应着一个用户,每行记录被冒号(:)分隔为7个字段,每个字段含义如下:
用户名(login_name):==口令(password):用户标识号(UID):组标识号(GID):注释性描述:家目录(home_directory):默认的Shell(Shell)

  ②/etc/shadow
[root@localhost ~]# cat /etc/shadow
root:`$`6`$`p1mwb6gitnqDNZy.`$`ctaFX4wA5HxU49bBjWXpJSznbhkJL8KVwmaO8ZJ6VarPemT.VlKkqN44onx4CrWkCMruDZ3jIm9kywoWGtCNa/::0:99999:7:::
bin:*:17834:0:99999:7:::
...

  /etc/shadow中存储着用户的密码信息,文件中一行记录对应着一个用户,每行记录被冒号(:)分隔为9个字段,每个字段含义如下:
用户名(login_name):加密密码(以"$"为分隔符,第一个字段表示加密算法;第二个字段表示加密因子;第三个字段才是用户加密后的密码):最后一次修改时间:最小修改时间间隔:密码有效期:警告时间:密码过期后的宽限天数:失效时间:保留(目前未使用)==

  ③/etc/group
[root@localhost ~]# cat /etc/group
root:x:0:
bin:x:1:
...

  /etc/shadow中存储着用户组的所有信息,文件中一行记录对应着一个用户组,每行记录被冒号(:)分隔为4个字段,每个字段含义如下:
组名(group_name):组密码(password):组标识号(GID):组中的用户(users)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章