如何删除与 root 具有相同 UID(0) 的 root (admin) 用户?

mli*_*bre 3 linux root user-accounts arch-linux

这是我的密码文件:

root:x:0:0:root:/root:/bin/bash
m:x:0:100::/home/m:/bin/bash
masoudjjgh:x:1000:100:masoudjjgh:/home/masoudjjgh:/bin/bash
Run Code Online (Sandbox Code Playgroud)

我尝试删除我创建的用户m

[root@...]# userdel m
[root@...]# userdel: user m is currently used by process 1
Run Code Online (Sandbox Code Playgroud)

当我尝试通过此命令杀死 m 时:

[root@...]# killall -KILL -u m
Run Code Online (Sandbox Code Playgroud)

desktop (kde)console任何东西都退出了,logged我会自动关闭。一切都结束了,我必须login再次。userdel 将再次关闭所有。无论如何要删除m吗?

我创建了它,但现在我无法删除它。

Ken*_*ter 5

root:x:0:0:root:/root:/bin/bash  
m:x:0:100::/home/m:/bin/bash
[...]
# userdel: user m is currently used by process 1
# killall -KILL -u m
Run Code Online (Sandbox Code Playgroud)

进程和文件实际上属于用户 ID 号,而不是用户名。m并且root具有相同的 UID,因此一个拥有的所有内容也由另一个拥有。根据您的描述,这听起来像是两者,userdel并且killall看到每个根进程(UID 0)都属于这个用户“m”。

根据此示例手册页,即使帐户具有活动进程,userdel也可以选择-f强制删除该帐户。而userdel可能只是删除M的passwd项和主目录,而不会影响实际的root帐户。

为了更安全,我可能倾向于手动编辑密码文件以删除 m 的条目,然后手动删除 m 的主目录。您的系统上可能有一个名为 的命令vipw,它可以让您/etc/passwd在文本编辑器中安全地进行编辑。