當前位置: 首頁>>技術教程>>正文


是否有更簡單或更 ‘correct’ 的方式以 root 身份打開 gedit?

,

問題描述

我在虛擬機上的虛擬機中運行 ubuntu 12.04。它的存在主要是作為與 Ubuntu 一起玩的 ‘toy’,因此我想要 GUI(這就是 ‘Dash’ 在 ubuntu 12.04 中的內容嗎?無論如何……)

我目前使用這台機器的一件事是 LAMP 服務器。我使用 ‘gedit’ 來編輯我的文件,但是因為我還沒有正確設置權限,所以我隻是在終端中使用 sudo 打開它。

剛才,為了簡化這個過程,我用一個非常簡單的工作在桌麵上創建了一個 shell 腳本 – sudo gedit

我不禁想到必須有一種比這更明顯的方法可以從 GUI 以 root 身份打開 gedit。那麽有嗎?

編輯:我隻是通過將 sudo 替換為 gksudo 來 ‘improved’ 我的腳本。現在我不必在打開 gedit 時打開終端窗口。所以我想現在這很方便:) 為了知識起見,知道這是否與經驗豐富的 ubuntu 用戶如何做這類事情很接近。

最佳思路

使用 gksudo gedit

gksudo 相當於圖形程序的 sudo ,使用 sudo 運行是不安全的。

次佳思路

我發現自己經常以 root 身份運行 gedit ,因此我在 Unity 的右鍵菜單中添加了該選項(它使用與所選答案相同的命令 gksu gedit )。

您需要編輯 *.desktop 文件以添加菜單選項,您有兩個選擇:

  • /usr/share/applications/gedit.desktop(需要 root 訪問權限才能編輯)- 將為所有用戶添加菜單選項。請注意,您可能需要 re-edit 此文件,如果發生 gedit 更新會覆蓋您的更改,請添加選項。

  • ~/.local/share/applications/gedit.desktop (如果在此處找不到,請複製在 /usr/share/applications/ 中找到的那個,並將其保存到這個新位置) – 菜單選項將僅對指定用戶可用,並被視為 “better practice”。請注意,如果您已經將它停靠在 Unity 欄上,則需要在現有 GEdit 圖標上選擇 Unlock from Launcher,然後選擇 re-add 您的 “custom” 版本。即使 GEdit 得到更新,這些更改也應該保留。

編輯文本文件 gedit.desktop ,添加以下代碼塊(您可以使用現有的兩個塊作為模板):

[Desktop Action RootWindow]
Name=Open a Root Window
Exec=gksu gedit
OnlyShowIn=Unity;

接下來,將新操作添加到列表中(應該在文本文件的第 19 行左右):

Actions=Window;Document;RootWindow;

現在 right-clicking Unity 中的文本編輯器窗口帶來了這個方便的新選項:

第三種思路

在文件名前麵使用 admin://,這會為您的相應 WM/shell 顯示標準 GUI 密碼提示。

因此,例如,如果您想編輯您的存儲庫,而不是鍵入 sudo gedit /etc/apt/sources.list 您將鍵入 gedit admin:///etc/apt/sources.list 。它適用於基本上所有的 GUI 程序,而不僅僅是 Gedit。

參考資料

本文由Ubuntu問答整理, 博文地址: https://ubuntuqa.com/zh-tw/article/13007.html,未經允許,請勿轉載。