之路 on it Road.com

修改用户和组的UID和GID

一旦我们进行了必要的备份和命令输出,我们就可以继续更改 UID 和 GID。

1.首先更改组的GID,group01:

# groupmod -g 600 group01
  1. 接下来,还要更改用户 user01 的 UID 和 GID:
# usermod -u 900 -g 600 user01
  1. 验证用户的新UID和GID:
# id user01
uid=900(user01) gid=600(group01) groups=600(group01)

注意事项

  1. 如果 group01 组中有多个用户,在更改组的 GID 后,我们必须修改其他用户以及 user01,如上所示。

  2. 更改 UID 和 GID 后,我们还必须更改用户/组拥有的文件的权限。
    但是 chown 命令也会重置文件的 SETUID 和 SETGID,因此我们稍后需要手动更改这些文件的权限。
    要查找此类文件:

# find / -uid 900 -perm /6000 -ls
# find / -gid 900 -perm /6000 -ls
  1. 查找 user01 和 group01 拥有的文件并更改其权限:
# find / -uid 800 -exec chown -v -h 900 '{}' \;
# find / -gid 700 -exec chgrp -v 600 '{}' \;

-h 选项也用于更改符号链接的权限。

在 Linux 中如何更改用户/组的 UID 和 GID

对于大多数系统管理员来说,更改用户的 UID 和 GID 似乎是一项微不足道的任务。
但这并不是那么简单,它涉及后端的更多更改。
在这篇文章中,我们概述了更改用户“user01”的 UID 和 GID 的确切步骤。

Username: user01
Group: group01
Existing UID: 800
Existing GID: 700
New UID: 900
New GID: 600

准备工作

  1. 确保要更改 UID 和 GID 的用户当前没有在系统中运行任何活动进程。
    要检查相同的使用“ps”命令。
    例如:
# ps -ef | grep user01
# ps -ef | grep 800

注意:在“ps -ef”命令中显示UID。
因此,请确保我们对 UID 以及用户的用户名进行 grep。

  1. 备份保存UID和GID相关信息的重要文件。
    例如:/etc/passwd 和 /etc/group 。
# cp -p /etc/passwd /etc/passwd.bkp
# cp -p /etc/group /etc/group.bkp
  1. 使用“id”命令验证用户的现有 UID 和 GID:
# id user01
uid=800(user01) gid=700(group01) groups=700(group01)
日期:2020-09-17 00:10:54 来源:oir作者:oir