暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Linux之修改用户uid

原创 何权林 2020-05-07
779

环境:
OS:SUSE Linux Enterprise Server 11 (x86_64)

修改用户的uid(假设修改用户test,uid由1100改为1200)
1、查看当前用户情况(获得用户的旧uid及旧gid等)
su - root
id test

2、查看当前用户执行的进程
su - root
ps -ef | grep -i test
kill -9 pid

3、查看当前用户打开的文件
su - root
lsof | grep test
kill -9 pid
注:lsof(list open files)

4、修改用户test的uid
usermod -u 1200 test
注:如果修改组id,则用groupmod -g 1200 test

5、修改用户test的原来拥有文件的uid
find / -user 1100 --先查看一下结果是否正确
find / -user 1100 -exec chown -h test {} \

问题处理:
如果执行第4步时报错:user xxx is currently logged in
执行如下:
su - root
cat /dev/null > /var/run/utmp --清空此文件
重启服务器
su - root
ps -ef | grep -i test
lsof | grep -i test
kill -9 pid
usermod -u 1200 test
find / -user 1100 -exec chown -h test {} \

注意事项:
1、修改用户的uid前,先把用户相关的服务关闭(有自启的任务停止)
2、修改完后,记得修改用户相关的应用文件的uid
3、/var/run/utmp是一个文件,记录当前正在登录系统的用户信息,默认由who和w记录当前登录用户的信息,uptime记录系统启动时间。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论