什么是“根”,我怎样才能成为它?

أحم*_*مري 7 permissions root sudo users

当我运行命令时,出现以下错误:

您需要以 root 身份执行此命令。

什么是root,我怎样才能成为它?

Byt*_*der 9

什么是“根”?

root 是存在于每个 Linux 系统上的用户
更准确的说,是一个特殊的用户——超级用户!
root是唯一有权执行所有操作的用户

与您可以创建的两种类型的用户帐户(管理员用户和受限用户)不同,它默认存在,既不能重命名也不能删除。通常,root出于安全原因,登录身份被禁用。

您可能认为您的管理员用户是您机器上最强大的帐户,可以做任何事情,但这是错误的。简而言之,一般来说,您的管理员用户几乎等同于权限受限的用户。它也只在自己的主文件夹中具有写入权限,并且也不能更改系统范围的设置。
但是,管理员用户拥有一项特殊且重要的权限:

如何成为“根”?

由于默认情况下 Ubuntu 上禁止以 root 身份登录,因此必须有另一种方式成为 root,以便能够执行重要的系统范围的管理任务。

sudo命令< - (缩写为“超级用户,否则......”)

管理员用户帐户有权使用该sudo命令以 root/root 权限执行单个命令。
很简单。只需sudo在需要特殊提升权限才能运行和执行的每个终端命令之前写入。它会显示一个提示并要求输入这样的密码(我的用户名是bytecommander):

[sudo] password for bytecommander:
Run Code Online (Sandbox Code Playgroud)

请注意,您必须输入您自己的管理员帐户的密码,而不是(默认情况下不存在的)root 用户的密码。它还配置为每 15 分钟仅询问一次您的密码,因此第二次调用sudo将立即运行该命令。但是,如果您关闭终端窗口,则 sudo 票证也会被重置。此外,重要的是您要知道,在您输入密码时不会有显示输出,甚至星号 (*) 也不会出现以象征输入的字符。只需输入并点击Enter

让我举一个关于如何/何时使用 sudo 的例子:

  • apt-get是运行软件更新和安装新软件包的命令行工具。这会影响整个系统,因此需要 root 权限。因此,每当我们需要调用 时apt-get,我们必须这样做sudo

    sudo apt-get install vlc
    
    Run Code Online (Sandbox Code Playgroud)

例如,安装著名的媒体播放器 VLC(在询问您的密码后,如果您在过去 15 分钟内没有在当前终端窗口中输入密码)。如果我们在没有 sudo (apt-get install vlc仅)的情况下以普通用户身份运行命令,则会导致此错误:

E: 无法打开锁定文件 /var/lib/dpkg/lock - open (13: Permission denied)
E: 无法锁定管理目录 (/var/lib/dpkg/),您是 root 吗?

如何继续使用图形应用程序而不是终端命令?

有时您需要以 root 权限运行图形应用程序(例如文件管理器、特殊编辑器或其他调整工具)。在这种情况下,请不要使用sudo,因为这是只针对终端的命令。由于我不想在这里讨论的几个原因,它可能会导致严重的问题(请参阅此答案以获取进一步的解释)...

因此,对于图形应用程序,还有其他命令可以更安全地运行 GUI 应用程序,并提供图形弹出窗口来请求您的密码而不是终端窗口。这些主要是gksugksudo。专家们正在争论他们更喜欢哪一个,但对于普通的 Ubuntu 用户来说,两者都可以平等对待。语法与sudo. 例如,我们可以Nautilus通过以下方式以 root 权限运行文件管理器:

gksudo nautilus
Run Code Online (Sandbox Code Playgroud)


小智 2

root 是默认情况下有权访问 Linux 或其他类 Unix 操作系统上的所有命令和文件的用户名或帐户。它也称为 root 帐户、root 用户和超级用户。

因此,在某些情况下,您必须以 root 用户身份登录才能运行这些命令。别担心,这很简单。

默认情况下,Ubuntu 中 root 帐户密码是锁定的。这意味着您无法直接以 root 身份登录或使用 su 命令成为 root 用户。但是,由于 root 帐户物理存在,因此仍然可以使用 root 级别权限运行程序。这是哪里

    sudo 
Run Code Online (Sandbox Code Playgroud)

进来 - 它允许授权用户以 root 身份运行某些程序,而无需知道 root 密码。

这意味着在终端中您应该使用 sudo 来执行需要 root 权限的命令;只需将 sudo 添加到您需要以 root 身份运行的所有命令前面即可。当您执行 sudo 时,系统会提示您输入密码。请记住,当 sudo 要求输入密码时,它需要您的用户密码,而不是 root 帐户密码。

使用 sudo 时,您的密码默认存储 15 分钟。在此之后,您将需要再次输入密码。

当您输入密码时,您的密码不会显示在屏幕上,甚至不会显示为一排星号 (*****)。每次击键都会输入它!

欲了解更多信息,请参阅: https: //help.ubuntu.com/community/RootSudo