Linux 中的 Visudo 命令
在Linux操作系统中,存在一个名为“sudoers”的文件,它是一个文本文件,用于控制系统最深层次的权限。它允许或拒绝用户获得系统的超级用户访问权限并获得 sudo 的一些超级用户首选项。 visudo 是一个用于在安全区域编辑或修改 sudoer 文件的命令。本文定义了什么是 sudoer 文件,并演示了如何使用 visudo 命令来编辑它。
Linux操作系统中的Sudoer文件是什么?
sudoer 是一个文本文件,位于 Linux 操作系统的“/etc”目录中。该文本文件定义了“sudo”如何在支持 Linux 的计算机上工作。它是“sudo”的规则、规定和操作列表的文件。它告诉“sudo”向哪个用户授予 root 权限并允许他们拥有超级用户权限,以及拒绝哪个用户访问 root 权限。它还可以使某个用户能够像系统中的任何其他用户一样执行命令。您可以在 /etc 目录中找到“sudoer.d”文件。
当您尝试直接打开它时,系统将不允许您,因为您没有打开它的管理权限。因此,您需要获得管理员权限才能打开 sudoer 文件。第一种简单的方法是右键单击该文件夹并选择“以管理员身份打开”选项。第二种方法是使用 visudo 命令在终端中打开文件。只需在终端中输入“sudo visudo”并按 Enter 键即可。
这将在终端中打开 sudoer 文件。
为什么我们需要编辑 Sudoer 文件?
当您安装像 Ubuntu 22.04 这样的 Linux 操作系统时,它会自动将第一个用户添加到具有管理权限的 sudoer 文件中。 Ubuntu 安装完成后,第一个用户可以使用“sudo”命令运行安装、更新等命令。但是,默认情况下添加新用户时,不会为其分配任何管理权限。要向新用户授予管理权限或超级用户访问权限,需要编辑 sudoer 文件并将新用户添加到 sudoer 文件中。
如何编辑 Sudoer 文件
编辑 sudoer 文件的最佳方法是在终端中使用 visudo 命令。始终避免在文本编辑器中编辑 sudoer 文件。如果您尝试这样做,您最终可能会损坏并发文件并无意中删除任何管理员访问权限。因此,请始终使用 visudo 命令在终端中编辑 sudoer 文件。
什么是 Visudo 命令?
visudo 是一个 Linux 命令,用于以“sudo”权限编辑 sudoer 文件。它允许您安全地编辑 sudoer 文件并进行任何所需的更改,而不会损坏任何文件或删除任何管理权限。它对 visudo 文件执行基本的有效性检查,检查语法错误,并在安装编辑的文件之前锁定它以防止各种同时编辑。如果文件中存在任何语法错误,则不会保存该文件,而是打印一条错误消息。
Visudo 命令的语法
visudo 命令的语法非常简单。它只需要两个参数:一个是选项,另一个是 sudoer 文件。请参阅 visudo 命令的以下语法:
“visudo”是命令名称,“-options”是指与 visudo 命令一起使用的选项之一,“sudoer”是“sudoer.d”文件名。 visudo 命令有六个可用选项:-c、-h、-q、-s、-V 和 -f。 -c 选项或标志与 visudo 一起使用以启用仅检查模式。通过使用 -c 标志,将仅检查 sudoer 文件的模式、所有者或语法错误。 -h 标志用于打印帮助消息。 -q 标志用于启用安静模式;如果遇到任何语法错误,它会使命令安静下来。 -s 标志用于启用严格检查模式。 -V 标志显示 visudo 命令的版本。最后,-f 标志用于定义 sudoer 文件的备用位置。
更改修改后的 Sudoer 文件的位置
建议必须使用 visudo 命令在 /etc/sudoers.d 目录中编辑 sudoer 文件。为此,请使用 -f 标志执行 visudo 命令。请参阅以下命令:
这会在编辑模式下打开 sudoer 文件,并允许您在其中进行任何所需的更改。编辑完 sudoers 文件后,按 CTRL+X 退出并返回终端。
当您按 ctrl+x 时,您将返回到标准输出终端,其中列出了您对文件所做的任何更改。请参阅以下输出:
由于我们没有对文件进行任何更改并退出,因此文件保持不变,并在终端上打印相同的内容。
向新用户分配“无限制”权利
让我们允许新用户以任何用户身份工作并在任何主机上执行任何所需的命令。这可以通过将 ALL 值分配给新用户来完成。 ALL 是 sudoer 文件中的一个特殊值,用于定义“无限制”。 ALL 值对用户没有限制,允许他们根据需要在主机上运行任何命令。请参阅以下命令:
现在,当您检查 sudoer 命令时,您将在“用户权限规范”部分下添加一个具有 ALL 权限的新用户。请参阅以下 sudoer 文件:
结论
在本文中,我们学习了什么是 sudoer 文件以及什么是 visudo 命令。我们演示了如何在 sudoer 文件上使用 visudo 命令来编辑它。 visudo 是一个 Linux 命令,用于在安全模式下编辑 sudoer 文件。它允许您在 sudoer 文件中进行任何更改,而不会损坏任何文件或删除任何用户的任何 root 访问权限。