我使用以下命令在 Linux 上授予普通用户 root 权限:
usermod -u 0 -o username
我怎样才能返回并使用户再次成为普通用户?
前任:
# grep Jack /etc/passwd
Jack :x:500:500::/home/Jack:/bin/bash
# usermod -u 0 -o Jack
Jack :x:0:500::/home/Jack:/bin/bash
答案1
只需运行usermod -u 500 -o username
将用户 ID 更改回 500 即可。
请注意,更改用户 ID 并不“授予用户 root 权限”。它实际上所做的就是使用户名成为用户0的另一个名称,即root用户。用户由用户 ID 定义。同一用户 ID 有多个名称是可能的,但很少有用。此外,使用 root 帐户(即用户 ID 0,无论名称如何)进行正常工作是一个坏主意:您增加了破坏系统的风险,实际上并没有获得显着的好处,并且某些程序将断然拒绝工作。
要“授予用户 root 权限”,最常见的方法是使用须藤。运行程序visudo
并向文件添加一行,例如
jack ALL = (ALL:ALL) ALL
然后,用户jack
将能够通过sudo
在命令前面添加或使用图形 sudo 包装器以 root 身份运行命令。
请注意,许多软件不支持特殊字符,例如用户名中的空格。用户名(第一列/etc/passwd
是机器可解析的名称,只能包含 ASCII 字母和数字。第五个字段包含全名,即人类可读的名称。