【お詫び】
前回の記事で次の回、つまり今回の記事で「カスタムアクション」について取り上げるのは最後と書きました。しかし皆様の読みやすさを最優先し再考した結果、「カスタムアクション」に関する最終記事は、次回に分割させて頂きたいと存じます。
不用意な文章、大変申し訳ありませんでした。今後はいっそう慎重に投稿させて頂きます。
root権限でフォルダを開く方法
さて、これまで2回にわたって「Thunar」の「カスタムアクション」について説明をしてきました。退屈だったと思います。しかし最低限追加すべき「カスタムアクション」の説明は、今回が最後です。
今回は「root権限でフォルダを開く」というとても重要な「カスタムアクション」の設定方法を説明します。
「root」と「権限」とは
ChaletOSを使い始めてしばらくは「root」ユーザーや「権限」について意識することは、あまりないと思います。
しかし、あくまで一例ですがApache、PHP、MySQLなどの上級者向けソフトをインストールし始めると、どうしても「root」ユーザーと「権限」について意識せざるを得なくなります。
なぜなら、こうした上級者向けソフトの「設定ファイル」の「所有者」は「root」ユーザーであることが多いからです。そして「その他」の一般ユーザーは「読み込み」権限しか与えられていないことが多いからです。いわゆる「644」のパーミッションです。
なお先程から「root」ユーザーという用語を多用していますが、「root」ユーザーとは簡単に言えば、WindowsでいうところのAdministrator=管理者ユーザーのことです。ただし、WindowsのAdministratorに比べ、かなり強い権限を持っています。まさに真の「スーパーユーザー – Wikipedia」と言えるでしょう。
root権限でフォルダを開く必要性
例えば一般ユーザー、つまり非「root」ユーザーのままで先述のソフトMySQLの設定ファイル「/etc/mysql/mysql.conf.d/mysqld.cnf」を開くとします。一般ユーザーにも「読み取り」権限は与えられているので開くことはできます。
しかし、例えば別名で保存しようとすると「許可がありません」というエラーが出てきてしまいます。
つまり一般ユーザーは、この「設定ファイル」の編集が出来ないのです。ファイルの「所有者」である「root」ユーザー以外「書き込み」権限がないからです。
通常はsudoコマンドでroot権限になる
「root」ユーザーしかアクセス、書き込みが出来ないファイルを編集する場合、Linuxでは一般的に「sudo」コマンドで一時的に「root」権限を借りることになります。
今回のケースですと以下のようなコマンドを書きます。※端末(ターミナル)は「Ctrl+Alt+T」で起動します。
sudo thunar /etc/mysql/mysql.conf.d/

かなり面倒だと思います。
しかしChaletOSの場合、デフォルトで「Open Terminal Here」という便利な「カスタムアクション」があるので、それを利用する方法もあります。
目的のファイルが入っているフォルダを開き、何も無い所で右クリックを押します。右クリックメニューの中から「Open Terminal Here」を選びます。
やはり端末が起動します。しかし今回は目的のフォルダで端末が起動しています。したがって、入力するコマンドは短くなります。
sudo thunar

必ずバックアップを
2つのいずれの方法にしても、「root」権限でフォルダを開くと以下のような状態になります。
通常とは違い「rootアカウント使用しています。システムに損害を与えてしまうかもしれません…。」という警告が出ています。この警告のとおり、root権限でファイル操作する時は、少なくとも必ずバックアップを取るなど、慎重に対応しないといけません。
さて「root」権限でフォルダを開いた場合、その中のファイルも「root」ユーザーとして開く事が出来ます。
今回は「mysqld.cnf」を通常通りダブルクリックします。デフォルトのテキストエディタ(私の場合はGeany)が開きます。今回は(怖いので)中身は何もいじらず、別名で保存します。
前回と違い何のエラーも出ず、別名ファイル「mysqld-test.cnf」が保存出来ました。今回は(恐怖のため)何もしませんでしたが、もちろん内容を変更して上書き保存することも出来ます。
今回のようなケースだけでなくても、ホームディレクトリ(/home/[ユーザー名])以外のファイル・フォルダを扱う場合は、「root」権限でフォルダを開く可能性は少なくないはずです。
カスタムアクションで簡単にroot権限で開く
これまでは端末(ターミナル)で「sudo」コマンドを入力し、「root」権限でフォルダを開く方法を説明しました。しかし、Thunar(ファイルマネージャー)では、「カスタムアクション」を利用することで、より簡単に素早く「root」権限で目的のフォルダを開くことが出来ます。
カスタムアクションの作成方法(おさらい)
実際の設定方法を説明する前に、念のため「カスタムアクション」の追加手順を説明します。
どのフォルダを開いていても構いません、「Thunar」のメニューバーの中から「編集(E)」をクリックします。メニューの下から2つ目の「アクションの設定(U)」をクリックします。
すぐに「カスタムアクション」という画面がポップアップしてきます。
この画面の右側一番上の「+」ボタンをクリックします。すぐに以下の「アクションの作成」画面になります。
root権限でフォルダを開くカスタムアクション
「名前(N)」と「説明(D)」の所は任意で構いません。しかし「コマンド(C)」の所は必ず半角小文字で「gksu thunar %f」とご入力下さい。
gksu thunar %f
「登録条件」は「フォルダー」にチェックを入れて「OK(O)」をクリックします。
無事カスタムアクションが登録されました。この画面は「閉じる(C)」で閉じます。
では実際の動作を確認してみます。例として「~/Downloads/」フォルダ上で右クリックを押します。その中に先程作ったカスタムアクション、「Opening a root Thunar」をクリックします。
すぐにパスワードが求められますので入力します。
そうすると「root」アカウントでフォルダを開く事が出来ます。端末上でコマンド入力するよりも、簡単に「root」権限でフォルダを開くことが出来るのです。
今すぐ利用する「カスタムアクション」ではないかもしれません。しかし、必ず利用する機会があると思います。登録だけでもしておくと後が楽だと思います。
カスタムアクションの整理
さてこれまでの記事も含め、合計3つの「カスタムアクション」について説明してきました。
- unarで展開(文字化けせず圧縮ファイルを展開)
- ClipItでファイルのフルパス名を取得
- root権限でフォルダを開く
以上は、【最低限】必要なものだと思います。しかしたった3つカスタムアクションを追加しただけで、右クリックメニューがずいぶん多くなったと思います。
メニューが多すぎると、かえって煩雑だと思います。ですので、次回はあまり意味の無いカスタムアクションと、その削除方法を説明したいと思います。