Answers:
GID是组的主要标识符。就系统而言,不同的GID是不同的组。因此,要更改GID,您将必须修改所有使用该GID的地方。
您应该避免将GID视为重要的,而应使用组名;您可以使用一个命令来更改组的名称(在Linux上:)groupmod -n NEW_GROUP_NAME OLD_GROUP_NAME
。
但是,如果您确实要更改GID,可以采用以下方法:
groupmod -g NEWGID GROUPNAME
。在其他系统上,使用该系统的管理工具,或者使用该工具(vigr
如果适用)或/etc/group
进行适当的编辑。更改系统上属于旧组的所有文件的组。
find / -gid OLDGID ! -type l -exec chgrp NEWGID {} \;
chgrp清除suid和sgid标志,将其恢复。
groupmod
以名字为我的主要论点...groupmod -g NEWGID GROUPNAME
最简单的方法是使用 groupmod -g <NEW_GID> <groupname>
另一种方法是/etc/group
直接编辑。每列的第三个字段是gid。
如果更改后的组是用户的主要组,则也/etc/passwd
需要进行调整:usermod -g <NEW_GID> <username>
。
查找/ path -group foo -print0 | xargs -0 chgrp条
chgrp -h ...
代替chgrp ...
。如果不使用-h
,则任何相关符号链接的目标都将更改其组。