什麼是gksu,為什麼你會使用它?

gksu和gksudo命令允許您在運行圖形應用程序時提升權限。

它們與su命令sudo命令本質上是等效的圖形命令。

安裝

默認情況下,gksu不一定會在所有Linux發行版中默認安裝。

您可以使用apt-get命令從命令行在Ubuntu內安裝它,如下所示:

sudo apt-get install gksu

您還可以使用突觸包管理器來安裝gksu。 在編寫這個工具時,Ubuntu主包管理器中沒有這個工具。

為什麼你會使用gksu

假設您使用的是Nautilus文件管理器,並且您希望編輯另一個用戶擁有的文件夾中的文件,或者是只能以root用戶身份訪問的文件夾。

當你打開一個你有權限訪問的文件夾時,你會發現諸如創建文件和創建文件夾等選項變灰。

您可以打開一個終端窗口,使用su命令切換到另一個用戶,然後使用nano編輯器創建或編輯文件。 或者,您可以使用sudo命令在沒有正確權限的地方編輯文件。

gksu應用程序允許您以不同的用戶身份運行Nautilus,這意味著您可以訪問當前灰顯的文件和文件夾。

如何使用gksu

運行gksu的簡單方法是打開一個終端窗口並鍵入以下內容:

gksu

一個小窗口將打開兩個框:

運行框想知道你希望運行的程序的名稱,而用戶框可以讓你決定運行程序的用戶。

如果您運行gksu並輸入nautilus作為運行命令並將該用戶保留為root用戶,您現在可以操作先前無法訪問的文件和文件夾。

你不必自己使用gksu命令。 您可以按如下方式指定您希望運行的命令和用戶:

gksu -u根鸚鵡螺

gksu和gksudo的區別

在Ubuntu gksu和gksudo執行相同的任務,因為它們是符號鏈接。 (他們都指向相同的可執行文件)。

但是,您應該認為gksu是su命令的圖形等同物,這意味著您已切換到用戶的環境。 gksudo命令等同於sudo命令,這意味著您正在運行應用程序,因為您正在模擬默認情況下是root的用戶。

使用權限提高運行圖形應用程序時要小心

使用Nautilus創建和編輯文件,同時作為gksudo或gksu運行可能會導致災難性後果。

gksu和gksudo應用程序中有一個選項,稱為preserve environment(高級設置)。

這允許您使用當前登錄的用戶的設置訪問應用程序,但以模擬通常為root的用戶身份運行該應用程序。

為什麼這是一件壞事?

想像一下你正在運行的應用程序是Nautilus文件管理器,並以John身份登錄。

現在想像你正在使用gksudo以root身份運行Nautilus。 您以約翰身份登錄,但以root身份運行Nautilus。

如果您開始在主文件夾下創建文件和文件夾,您將不一定知道這些文件是以root身份作為所有者和root用戶創建的。

當您嘗試使用以普通約翰用戶身份運行的Nautilus訪問這些文件時,您將無法編輯這些文件。

如果編輯的文件是配置文件,那麼這確實可能非常糟糕。

你應該使用gksu

GNOME wiki上的gksu頁面表明,使用gksu不再是一個好主意,它正在被重寫為使用策略包。

但目前沒有可行的替代方案。

如何將一個運行作為根選項添加到Ubuntu中的常用應用程序

想像一下,您希望能夠向應用程序添加右鍵單擊菜單,以便您可以根據需要以root身份運行它。

點擊Ubuntu啟動器上的文件櫃圖標打開Nautilus。

點擊左側的“計算機”圖標,導航到usr文件夾,然後導航到共享文件夾,最後導航到應用程序文件夾。

找到文件櫃圖標,下面有文件“文件”。 右鍵點擊圖標並選擇“複製到”。 現在導航到家庭,本地,共享和應用程序文件夾。 ( 您需要通過右鍵單擊主文件夾並選擇“顯示隱藏的文件” 來取消隱藏本地文件夾 )。

最後點擊“選擇”

現在導航到主文件夾,然後導航到本地,共享和應用程序文件夾。

按超級鍵並輸入“gedit”。 文本編輯器圖標將出現。 點擊圖標。

將nautitilus.desktop圖標從Nautilus窗口拖到編輯器中。

搜索顯示“Action = Window”的行並將其更改為以下內容:

action = Window,Open Root

在底部添加以下行:

[作為根打開的桌面操作]

名稱=作為根打開

Exec = gksu鸚鵡螺

保存文件。

註銷一個日誌,您可以右鍵單擊文件櫃圖標並選擇“以root身份打開”以管理員身份運行Nautilus。

概要

雖然gksu是一個選項,但我認為如果您需要執行管理任務,那麼您最好使用終端