我第一次设置 ubuntu 时,大部分工作都是在 root 帐户下完成的。但是,只在 root 帐户下工作不是一个好主意。如何在不删除 root 帐户的情况下将其转换为没有 root 权限的普通帐户?
答案1
Linux 中的 root 用户或超级用户的定义是其用户 ID 为 0。因此,虽然理论上可以“将 root 用户转变为普通用户”,但需要对文件进行一些巧妙的编辑,才能将该/etc/passwd
用户/etc/shadow
的用户 ID 更改为其他数字,同时创建另一个用户 ID 为 0 的用户(因为 Linux 没有超级用户就无法正常运行)。此外,您无论如何都需要将以 root 身份创建的所有文件的所有权更改为新用户 ID。
这基本上相当于创建一个新用户并将所有文件移动到新用户(并进行适当的所有权更改),因此我推荐它作为一种更清洁、更“安全”的解决方案。
- 创建一个新用户(我们称之为
newuser
)。 - 将所有文件和目录从 移动
/root
到/home/newuser
。不要忘记隐藏文件/目录,因为它们包含配置数据,但请忽略任何新用户目录中默认创建的文件 - 通常是.bashrc
和.bash_logout
-.profile
它们应保留在/root
目录中。 - 将所有文件和子目录的所有权(递归地)更改为
/home/newuser
(newuser
和适当的组)。 - 如果您的某些软件
/root
在其配置中的任何位置存储了到先前位置(即)的绝对路径,则它可能仍然无法正常运行。使用 grep(递归,您可以使用find
它)“点”子目录中的所有文件来检查其中是否有文件包含路径/root
- 如果是,您应该将其更改为/home/newuser
。