当前位置: 首页>>技术问答>>正文


如果我创建了一个名为’root’的帐户,会发生什么?

, , ,

问题描述

如果我在Ubuntu中创建了一个名为root的用户帐户,它会自动拥有root权限吗?打破系统?导致矩阵出现故障?会发生什么?

最佳解决办法

用户名必须是唯一的,因此,正如Owen Hines’ answer所述,您将无法创建此用户。但是,这里的关键点是超级用户权限(所有可能的权限)不是由用户名root授予的,而是由UID授予的。

UID为0的用户是超级用户。

因此,如果具有UID 0的用户具有不同的名称,并且您创建了名为root的用户,则他们将没有任何特殊状态。

我推荐你到root标签维基!

次佳解决办法

它不会让你,因为已经有一个root用户。

但是,正如Florian Diesch在评论中所说:

Some tools will complain but you can always edit /etc/passwd and etc/shadow manually to create a second user named root.

第三种解决办法

首先,如其他人所述,您将UID 0的用户更改为其他内容。然后,您可以创建一个名为root且UID高于1000的普通用户。它将起作用”fine”。所有权限和核心系统函数都使用UID而不是用户名。事实上,这是加强Linux系统的良好开端。 (更好地禁用root,但在sudo之前我们曾经这样做过)。

现在将会发生什么。

大部分时间都没有。与授权或身份验证有关的所有系统调用都使用UID(我知道)。它已经有一段时间了。您的系统将照常运行。系统工具将反映新用户名,但继续正常工作。换句话说”root”在惯例中并没有一成不变。

也就是说,我确信有些工具和程序编写得很糟糕。检查$ USER环境变量的程序可能不正确。通常这些是脚本和小项目,但你可以花一些时间来追踪那个糟糕的提交,6年前在fdisk中让你头疼。

这是我过去经常做的事情。这是一个简单的步骤,属于“non-predictable用户名”的规则。然而,今天有更好的方法来实现相同的目标。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/2983.html,未经允许,请勿转载。