如何在Linux中更改或重命名⽤户名和UID?
如何在Linux操作系统下使⽤命令⾏⼯具更改⽤户名(重命名⽤户名)或UID?如何在Linux下更改或重命名⽤户名?
在Linux操作系统下,你需要使⽤usermod命令来更改⽤户名。该命令会修改系统账户⽂件,以反映在命令⾏中指定的更改。不要⽤⼿或使⽤vi等⽂本编辑器编辑/etc/passwd⽂件。本页介绍了如何在Linux系统中使⽤usermod命令修改或重命名⽤户名。
按⽤户名重命名语法如下:
usermod -l login-name old-name
我们在Linux中使⽤usermod命令来重命名⽤户账户。⽤户的名字将从原来的名字改为login_name。其他的内容都不会改变。特别是,⽤户的主⽬录名可能应该被改变以反映新的登录名。
通过UID(⽤户ID)重命名语法如下:
usermod -u UID username
其中:
⽤户ID(UID)的数值。这个值必须是唯⼀的,除⾮使⽤-o选项。该值必须是⾮负数。0到99之间的值通常是为系统账户保留的。任何⽤户拥有的、位于以⽤户主⽬录为根的⽬录树中的⽂件都会⾃动改变⽂件⽤户ID。⽤户主⽬录之外的⽂件必须⼿动更改。
⼀、列出Linux系统中的所有⽤户
输⼊以下cat命令。
cat /etc/passwd
怎么将linux系统改成中文我们可以使⽤grep命令来过滤掉⽤户名称。
grep -w '^username' /etc/passwd
grep -w '^jerry' /etc/passwd
另⼀个选择是使⽤ cut 命令。
cut -d: -f1 /etc/passwd
⼆、如何在Linux中更改或重命名⽤户名和UID?
让我们看看如何重命名⽤户登录。⾸先,确保⽤户名没有登录服务器,并且任何其他进程没有以同⼀⽤户名运⾏。我还建议你在更改⽤户名之前备份任何数据或服务器⽂件。
1、查看名为tom的⽤户的当前⽤户和组成员信息
⾸先使⽤id命令获取⽤户⾝份。
id tom
接下来使⽤grep命令从/etc/passwd⽂件中抓取名为tom的⽤户的登录信息。
grep '^tom:' /etc/passwd
使⽤ groups 命令查看名为tom的⽤户的组信息。
grep 'tom' /etc/group
groups tom
查⽤户tom的主⽬录权限,运⾏以下ls命令。
ls -ld /home/tom/
最后,使⽤ps命令查看名为tom的⽤户和组拥有的所有Linux进程。
ps aux | grep tom
ps -u tom
2、在Linux上将⽤户名从Tom改成Jerry。
输⼊usermod命令如下。
# id tom
# usermod -l jerry tom
## Verify ###
# id tom
# id jerry
# ls -ld /home/tom
关于运⾏过程的说明
如果 tom 登录并运⾏⼯作,你可能会看到如下错误。
# usermod -l jerry tom
usermod:⽤户Tom⽬前被6886进程使⽤。
你需要结束所有名为tom的⽤户所拥有的Linux进程,并强制将其退出系统。
# pkill -u tom pid
# pkill -9 -u tom
# usermod -l jerry tom
重命名并将主组名从Tom改为Jerry。
输⼊usermod命令如下。
# id tom
# groupmod -n jerry tom
## Verify it ###
# id tom
# ls -ld /home/tom
3、如何将⽤户主⽬录从/home/tom/改为/home/jerry?
语法如下:
# usermod -d /home/jerry -m jerry
# id jerry
# ls -ld /home/jerry
输出:
uid=1001(jerry) gid=1001(jerry) groups=1001(jerry)
drwxr-xr-x 2 jerry jerry 4096 Apr 21 15:53 /home/jerry/
4、如何将⽤户tom UID从5001改为10000?
输⼊usermod命令如下:
# id tom
# usermod -u 10000 tom
# id tom
5、获取关于usermod命令的帮助
你可以给usermod命令传递--help选项。例如,在Linux的shell提⽰符下键⼊以下命令。usermod --help
在本⽂中,你了解了如何在Linux中使⽤usermod命令更改或重命名⽤户名和UID。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。