ChaletOSでroot権限でフォルダを開くThunarのカスタムアクション

【お詫び】
前回の記事で次の回、つまり今回の記事で「カスタムアクション」について取り上げるのは最後と書きました。しかし皆様の読みやすさを最優先し再考した結果、「カスタムアクション」に関する最終記事は、次回に分割させて頂きたいと存じます。

不用意な文章、大変申し訳ありませんでした。今後はいっそう慎重に投稿させて頂きます。

root権限でフォルダを開く方法

さて、これまで2回にわたって「Thunar」の「カスタムアクション」について説明をしてきました。退屈だったと思います。しかし最低限追加すべき「カスタムアクション」の説明は、今回が最後です。

今回は「root権限でフォルダを開く」というとても重要な「カスタムアクション」の設定方法を説明します。

「root」と「権限」とは

ChaletOSを使い始めてしばらくは「root」ユーザーや「権限」について意識することは、あまりないと思います。

しかし、あくまで一例ですがApache、PHP、MySQLなどの上級者向けソフトをインストールし始めると、どうしても「root」ユーザーと「権限」について意識せざるを得なくなります。

なぜなら、こうした上級者向けソフトの「設定ファイル」の「所有者」は「root」ユーザーであることが多いからです。そして「その他」の一般ユーザーは「読み込み」権限しか与えられていないことが多いからです。いわゆる「644」のパーミッションです

644

なお先程から「root」ユーザーという用語を多用していますが、「root」ユーザーとは簡単に言えば、WindowsでいうところのAdministrator=管理者ユーザーのことです。ただし、WindowsのAdministratorに比べ、かなり強い権限を持っています。まさに真の「スーパーユーザー - Wikipedia」と言えるでしょう。

root権限でフォルダを開く必要性

一般ユーザーで開く

例えば一般ユーザー、つまり非「root」ユーザーのままで先述のソフトMySQLの設定ファイル「/etc/mysql/mysql.conf.d/mysqld.cnf」を開くとします。一般ユーザーにも「読み取り」権限は与えられているので開くことはできます。

一般ユーザーでも開くことは出来る

しかし、例えば別名で保存しようとすると「許可がありません」というエラーが出てきてしまいます

権限がない

つまり一般ユーザーは、この「設定ファイル」の編集が出来ないのです。ファイルの「所有者」である「root」ユーザー以外「書き込み」権限がないからです。

644

通常はsudoコマンドでroot権限になる

「root」ユーザーしかアクセス、書き込みが出来ないファイルを編集する場合、Linuxでは一般的に「sudo」コマンドで一時的に「root」権限を借りることになります。

今回のケースですと以下のようなコマンドを書きます。※端末(ターミナル)は「Ctrl+Alt+T」で起動します。

sudo thunar /etc/mysql/mysql.conf.d/
端末でroot権限でフォルダを開く
コマンド入力後、パスワードを入力する

かなり面倒だと思います。

しかしChaletOSの場合、デフォルトで「Open Terminal Here」という便利な「カスタムアクション」があるので、それを利用する方法もあります。

目的のファイルが入っているフォルダを開き、何も無い所で右クリックを押します。右クリックメニューの中から「Open Terminal Here」を選びます。

Open Terminal Here

やはり端末が起動します。しかし今回は目的のフォルダで端末が起動しています。したがって、入力するコマンドは短くなります。

sudo thunar
カスタムアクションも併用
コマンド入力後、パスワードを入力する

必ずバックアップを

2つのいずれの方法にしても、「root」権限でフォルダを開くと以下のような状態になります。

rootで開いている

通常とは違い「rootアカウント使用しています。システムに損害を与えてしまうかもしれません…。」という警告が出ています。この警告のとおり、root権限でファイル操作する時は、少なくとも必ずバックアップを取るなど、慎重に対応しないといけません

さて「root」権限でフォルダを開いた場合、その中のファイルも「root」ユーザーとして開く事が出来ます

今回は「mysqld.cnf」を通常通りダブルクリックします。デフォルトのテキストエディタ(私の場合はGeany)が開きます。今回は(怖いので)中身は何もいじらず、別名で保存します。

rootで別名保存

前回と違い何のエラーも出ず、別名ファイル「mysqld-test.cnf」が保存出来ました。今回は(恐怖のため)何もしませんでしたが、もちろん内容を変更して上書き保存することも出来ます

別名保存できた

今回のようなケースだけでなくても、ホームディレクトリ(/home/[ユーザー名])以外のファイル・フォルダを扱う場合は、「root」権限でフォルダを開く可能性は少なくないはずです。

カスタムアクションで簡単にroot権限で開く

これまでは端末(ターミナル)で「sudo」コマンドを入力し、「root」権限でフォルダを開く方法を説明しました。しかし、Thunar(ファイルマネージャー)では、「カスタムアクション」を利用することで、より簡単に素早く「root」権限で目的のフォルダを開くことが出来ます。

カスタムアクションの作成方法(おさらい)

実際の設定方法を説明する前に、念のため「カスタムアクション」の追加手順を説明します。

どのフォルダを開いていても構いません、「Thunar」のメニューバーの中から「編集(E)」をクリックします。メニューの下から2つ目の「アクションの設定(U)」をクリックします。

アクションの設定

すぐに「カスタムアクション」という画面がポップアップしてきます。

カスタムアクションを追加

この画面の右側一番上の「+」ボタンをクリックします。すぐに以下の「アクションの作成」画面になります。

アクションの作成

root権限でフォルダを開くカスタムアクション

root-thunar-command

「名前(N)」と「説明(D)」の所は任意で構いません。しかし「コマンド(C)」の所は必ず半角小文字で「gksu thunar %fとご入力下さい。

gksu thunar %f

rootで開く登録条件

「登録条件」は「フォルダー」にチェックを入れて「OK(O)」をクリックします。

root-thunar-added

無事カスタムアクションが登録されました。この画面は「閉じる(C)」で閉じます。

右クリックからrootで開く

では実際の動作を確認してみます。例として「~/Downloads/」フォルダ上で右クリックを押します。その中に先程作ったカスタムアクション、「Opening a root Thunar」をクリックします。

gksu-password

すぐにパスワードが求められますので入力します。

簡単にrootでフォルダが開ける

そうすると「root」アカウントでフォルダを開く事が出来ます。端末上でコマンド入力するよりも、簡単に「root」権限でフォルダを開くことが出来るのです。

今すぐ利用する「カスタムアクション」ではないかもしれません。しかし、必ず利用する機会があると思います。登録だけでもしておくと後が楽だと思います。

カスタムアクションの整理

さてこれまでの記事も含め、合計3つの「カスタムアクション」について説明してきました。

  • unarで展開(文字化けせず圧縮ファイルを展開)
  • ClipItでファイルのフルパス名を取得
  • root権限でフォルダを開く

以上は、【最低限】必要なものだと思います。しかしたった3つカスタムアクションを追加しただけで、右クリックメニューがずいぶん多くなったと思います。

many-menues

メニューが多すぎると、かえって煩雑だと思います。ですので、次回はあまり意味の無いカスタムアクションと、その削除方法を説明したいと思います。

※関連記事