我猜你对 Linux 还很陌生。
您遵循互联网上的一些教程,告诉您安装某个程序或运行某个命令。可能与服务器有关。
但是当你运行命令时,你会遇到这样的错误:
E: 无法打开锁文件 /var/lib/dpkg/lock-frontend – open (13: 权限被拒绝)E: 无法获取 dpkg 前端锁 (/var/lib/dpkg/lock-前端),你是 root 吗?
类似的错误是这样的:
dpkg:错误:需要对 dpkg 数据库目录 /var/lib/dpkg 进行读/写访问E:子进程 dpkg –set-selections 返回错误代码 (2)E:正在执行 dpkg失败的。你是 root 吗?
这两个错误都会问你同样的问题:你是 root 吗?这就是这个问题的答案。成为根。
成为 root 以避免此错误如何获得 Ubuntu 或 Debian 的 root 权限?您使用 sudo 命令。
对,就是那样。无论您运行什么命令,只需在其前面添加 sudo 即可。
sudo your_command它会要求您输入您的用户帐户密码。请记住,当您输入密码时,屏幕上不会显示任何内容,这没关系。
你的系统没有任何问题。在大多数 Linux 系统中,密码输入不会显示通常的星号或任何类似的“安全功能”。
只需输入您的密码,然后按 Enter 键即可。如果密码输入正确,您现在应该能够运行该命令。
您甚至可以使用这个方便的 Linux 命令行技巧通过 sudo 运行先前的命令:
sudo !!这很简单并且可以立即生效,除非您没有 sudo 访问权限。然后,您会看到一个不同的错误。
看到“用户不在 sudoer 文件中”错误?安装 Ubuntu 时,您必须创建一个用户帐户。该用户会在需要时自动被授予 sudo 权限以 root 身份运行命令。
这种情况发生在 Ubuntu 桌面上,而不是服务器上。大多数服务器发行版都有一个单独的 root 帐户。如果您单独创建一个普通帐户,则必须将该用户添加到 sudoer 中,以便该普通用户可以使用 sudo。
在上面的屏幕截图中,我创建了这个附加用户,但没有将其添加到 sudo 组。这意味着这里的用户“prakash”无权使用 sudo 命令,因此系统会抱怨“prakash 不在 sudoers 文件中”。
该事件在哪里报告?系统日志中添加了不正确的 sudo 尝试。它记录用户名、虚拟终端号、运行命令的位置以及运行的命令。
这些日志的位置因发行版的不同而不同。
通常,您可以在 Ubuntu 中的 Journalctl 日志或 /var/log/auth.log 文件、Fedora 中的 /var/log/audit/audit.log 文件中找到它。
如果用户不在 sudoer 列表中怎么办?当当前用户帐户无法使用 sudo 时该怎么办?首先,验证用户是否有 sudo 权限。如果没有,这里有一些选项供您选择:
以 root 身份登录或切换到 root(如果您有 root 密码)。
将用户添加到 sudoer 列表中(如果您拥有其他用户帐户的 admin/sudo 权限)。
如果您在多用户 Linux 系统中并且自己没有 root 或 sudo 访问权限,请要求系统管理员授予您的用户 sudo 访问权限或安装您想要安装的应用程序。
这有帮助吗?Sudo 是一个非常全面的安全机制,它不仅仅是允许普通用户成为root 用户。它有助于审核系统以了解哪个用户使用 sudo 运行了哪个命令。还可以将其配置为允许特定用户仅使用 sudo 运行特定命令。
您不会在桌面 Linux 上看到如此精细的 sudo 配置,桌面 Linux 已预先配置为允许 sudo 组中的任何用户使用 sudo 以 root 身份运行任何命令。有关 sudo 的