Skip to main content

什么是gksu,为什么要使用它?

Anonim

gksu和gksudo命令允许您在运行图形应用程序时提升权限。

它们本质上是su命令和sudo命令的等效图形命令。

安装

默认情况下,gksu不一定在所有Linux发行版中都默认安装。

您可以使用apt-get命令从命令行在Ubuntu中安装它,如下所示:

sudo apt-get install gksu

您还可以使用synaptic包管理器安装gksu。

你为什么要用gksu

想象一下,您正在使用Nautilus文件管理器,并且您希望编辑另一个用户拥有的文件夹中的文件,或者实际上只能以root用户身份访问的文件夹。

当您打开一个您具有有限访问权限的文件夹时,您会发现创建文件和创建文件夹等选项显示为灰色。

您可以打开终端窗口,使用su命令切换到另一个用户,然后使用nano编辑器创建或编辑文件。或者,您可以使用sudo命令在没有正确权限的位置编辑文件。

gksu应用程序允许您以不同的用户身份运行Nautilus,这意味着您可以访问当前显示为灰色的文件和文件夹。

如何使用gksu

运行gksu的一种简单方法是打开终端窗口并键入以下内容:

gksu

一个小窗口将打开两个方框:

  • 作为用户

运行框想要知道您希望运行的程序的名称,并且as userbox允许您决定运行该程序的用户。

如果您运行gksu并输入nautilus作为运行命令并将用户保留为root,您现在可以操作以前无法访问的文件和文件夹。

您不必单独使用gksu命令。您可以按如下方式指定要运行的命令和用户一体化:

gksu -u root nautilus

gksu和gksudo之间的区别

在Ubuntu中,gksu和gksudo执行相同的任务,因为它们具有象征性的联系。 (他们都指向相同的可执行文件)。

但是,您应该假设gksu是su命令的图形等效物,这意味着您已切换到用户的环境。 gksudo命令等同于sudo命令,这意味着您正在以模拟方式运行应用程序,默认情况下为root。

运行具有更高权限的图形应用程序时要小心

在作为gksudo或gksu运行时使用Nautilus创建和编辑文件可能会导致灾难性的后果。

在高级设置下,gksu和gksudo应用程序中有一个选项,称为保留环境。

这允许您使用当前登录用户的设置访问应用程序,但以您模拟的用户(通常是root用户)的身份运行应用程序。

为什么这是一件坏事?

想象一下,您运行的应用程序是Nautilus文件管理器,您以John身份登录。现在假设你使用gksudo以root身份运行Nautilus。您以John身份登录,但以root身份运行Nautilus。

如果您开始在主文件夹下创建文件和文件夹,则不一定知道正在创建文件,其中root用户为root用户,root用户为组。

当您尝试使用以普通John用户身份运行的Nautilus访问这些文件时,您将无法编辑这些文件。

如果编辑的文件是配置文件,那么这可能非常糟糕。

你应该使用gksu吗?

GNOME wiki上的gksu页面表明使用gksu不再是一个好主意,它目前正在被重写以使用策略包。

然而,目前没有可行的替代方案。

如何在Ubuntu中将运行方式选项添加到常见应用程序

想象一下,您希望能够向应用程序添加右键菜单,以便您可以根据需要以root身份运行它。

单击Ubuntu Launcher上的文件柜图标打开Nautilus。

单击左侧的“计算机”图标,导航到usr文件夹,然后导航到共享文件夹,最后导航到应用程序文件夹。

找到下面带有“文件”一词的文件柜图标。右键单击图标并选择 复制到。现在导航到home,local,share和applications文件夹。 (您需要通过右键单击主文件夹并选择取消隐藏本地文件夹 显示隐藏文件).

最后点击 选择.

现在导航到主文件夹,然后导航到本地,共享和应用程序文件夹。

按下 超级钥匙 并输入“gedit”。将出现文本编辑器图标。点击 图标.

将nautilius.desktop图标从Nautilus窗口拖到编辑器中。

搜索显示“Action = Window”的行并将其更改为以下内容:

action = Window,Open Root

在底部添加以下行:

桌面操作以root身份打开Name =以Root身份打开Exec = gksu nautilus

保存文件。

重新登录日志,您可以右键单击文件柜图标,然后选择“以root身份打开”以管理员身份运行Nautilus。

摘要

虽然gksu是一个选项,但我们认为如果您需要执行管理任务,那么您最好使用终端。