使用 GUI 编辑器查看系统文件的推荐方法是什么?

使用 GUI 编辑器查看系统文件的推荐方法是什么?

Gnome 强制限制查看需要 root 权限的文件。尝试使用/var/log/boot.loggedit 打开文件失败,没有可见的选项以 root 身份从 GUI 文件管理器执行此操作。Gnome 如何处理这种情况?我知道我可以使用sudo gedit,但这比从 Nautilus 启动应用程序更麻烦,对不起,文件。


Cinnamon 桌面中的文件管理器 Nemo 提供了一个接近理想的解决方案。它为您提供了一个以 root 身份打开目录的选项,然后您可以使用文本编辑器打开此文件。

另一种选择是在编辑器中强制执行文件保存时的权限,而不是文件打开时的权限。它可以允许以只读模式打开任何文件,这不会带来任何安全问题。过去曾经在某个地方这样做过。当前的设计没有必要那么专制。

答案1

在命令行中输入:

gedit admin://<full path to file>

系统将在弹出对话框中提示您输入 sudo 用户密码。正确输入密码后,您的文件将在 gedit 中打开。

例如:

gedit admin:///var/log/boot.log

答案2

我将其添加为一个单独的答案,因为您提到您想要一种更方便(不那么“麻烦”)的方式以 root 身份编辑文件。

您可以使用nautilus-admin 扩展

此扩展为 Nautilus 添加了一个名为“以管理员身份编辑”的右键单击上下文菜单项。只需右键单击要以 root 身份编辑的文件,然后选择此选项即可。

安装此扩展的最佳方法是:

sudo apt install nautilus-admin

以 root 身份编辑文件的推荐方法是使用gedit admin://正如我的其他回答中指出的那样。此扩展程序的功能完全相同,但您不必打开终端并自己输入命令。

答案3

您可以制作一个小脚本来减少开销,就像这样。

#!/bin/bash

absolute_name=$(realpath "$1")

pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY gedit "$absolute_name"

将脚本放在路径中的某个位置并使其可执行。为了演示,我将其命名为ggedit

因此你只需输入(例如)

ggedit /etc/fstab

将打开一个授权窗口,输入您的密码,然后以超级用户身份打开该文件。

来源:我几乎肯定在过去几十年里从 Ask Ubuntu 上找到过这个,但我再也记不清在哪里了

答案4

侏儒教义是如何应对这种情况的?

我能找到的最“官方”的声明是 help.gnome.org 上的这个页面:

以 root 用户身份编辑文件

它以一个大胆的免责声明开始:

以 root 用户身份编辑文件具有潜在危险,可能会损坏您的系统。以 root 用户身份编辑文件时请务必小心。

gedit他们的建议是以root 用户身份从终端启动:

sudo gedit

另一种选择是在编辑器中强制执行文件保存时的权限,而不是文件打开时的权限

在您的特定示例中,这是不可能的,因为/var/log/boot.log除了 root 之外的任何用户都无法读取。因此,为了显示其内容,任何应用程序都需要 root 权限。

您可能能够将@Organic Marble 的答案与 .desktop 文件结合起来,这样您就可以右键单击 -> 打开方式 -> root gedit。

对于(可能)更常见的情况,即您想要编辑由 root 拥有且您的用户可读的文件(例如 中的大多数配置文件)/etc,我个人使用 Kate。它会以您当前的用户身份打开文件,并在您尝试保存时要求您输入密码。但它确实需要整个 KDE/Qt 生态系统,这对您来说可能是也可能不是可以接受的。

相关内容