UbuntuのファイルブラウザであるNautilusからファイルを開くと、基本的にはユーザ権限で開いたり実行する形になると思いますが、どうしてもroot権限で実行したいなどの場合があると思います。
そこでスクリプトで拡張してコンテキストメニューを追加し、root権限で開けるようにする方法を書いておこうと思います。
手順
1. Ubuntu ソフトウェアセンターからgksuで検索し、「Graphical Frontend to su
」をインストールする。
2. Nautilusファイルブラウザから、USER Home >> .local >> share >> nautilus >> scripts に移動する。
3. open-as-administrator
やopen-as-root
でファイルを作成する。
4. 上記で作成したファイルをviなどで編集する。
#!/bin/bash
#
# this code will determine exactly the path and the type of object,
# then it will decide use gedit or nautilus to open it by ROOT permission
#
# Determine the path
if [ -e -n $1 ]; then
obj="$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS"
else
base="`echo $NAUTILUS_SCRIPT_CURRENT_URI | cut -d'/' -f3- | sed 's/%20/ /g'`"
obj="$base/${1##*/}"
fi
# Determine the type and run as ROOT
if [ -f "$obj" ]; then
gksu gedit "$obj"
elif [ -d "$obj" ]; then
gksu nautilus "$obj"
fi
exit 0
5. 端末を開き、以下のコマンドを実行しファイルに対して実行権限を与える。
cd .local/share/nautilus/scripts/ && chmod 0755 open-as-administrator
6. 端末から以下のコマンドを実行し、Nautilusを再起動するか、一旦ログアウトする。
nautilus -q
2019年8月21日:追記
気が付いたら、この機能についてNautilus extensionとしてパッケージが提供されていたようです。
1.ターミナルで以下のコマンドを実行しパッケージをインストールする。
sudo apt-get install nautilus-admin
2.さらに以下のコマンドを実行して、Nautilusを再起動する。
nautilus -q