Linux系统修改用户gid和uid

假设用户的原始UID和GID如下:

zebracall  old UID: 1001
zebracall  old GID: 1001

用户修改之后的UID和GID如下:

zebracall new UID: 1002
zebracall new GID: 1002

修改前准备

1、杀掉需要修改用户的所有进程,有如下几种杀掉用户进程的方法,一般建议使用root用户直接登录linux系统,或者使用具有sudo权限的用户

killall -u zebracall
pkill -u zebracall
ps -ef | grep zebracall |awk '{print $2}' | xargs kill -9
pgrep -u zebracall| xargs kill -9

修改命令:

1、修改用户的uid

usermod -u1002 zebracall

2、修改zebracall组的gid

groupmod -g1002 zebracall

3、将用户的家目录下面的文件属主和属组会在1、2命令执行后自动修改成新的uid、gid对应的属主属组,但是其他文件目录需要手动修改。手动修改的命令也比较简单。

find / -user 1001 -exec chown -h foo {} \;
find / -group 2000 -exec chgrp -h foo {} \;

这样用户和组的uid、gid就修改好了。可以用id命令看下是否修改的如我们所愿。

ls -l /home/zebracall/
id -u zebracall
id -g zebracall
grep zebracall /etc/passwd
grep zebracall /etc/group





posted @ 2021-04-07 14:51  raisok  阅读(3176)  评论(0编辑  收藏  举报