Knowledge Base

お知らせや身辺のことを綴っています。

Nautilus の左ペインに邪魔なデバイスが表示されるのを防ぐ

ファイルマネージャーのNautilusが左ペインに旧ルートデバイスを表示し続ける問題を解決したい。場所が場所だけにクリックしてしまいやすいし、一発でもクリックしたら簡単にマウントされてしまう点が非常に憎たらしい。

クリックしたら簡単にマウントされるUI

たしかに、Windowsのように簡単にマウントできる点は良い点ではあるのだが、あまり重要でなかったり、手を付けたくないデバイスをつないだりしているときには、この機能は翻って至極悪い点となる。

この記事では、この問題の解決法について取り扱う。

手順

実は、Nautilusはデバイスが/etc/mtabにリスティングされている場合はこれらの表示を行わないことになっている*1。この仕組みを利用する。

まず/etc/fstabにエントリを作り、デバイスに対応するダミーのディレクトリを作って、noautoオプションを付けて認識させておく。こうしておくことで、OSから認識されてはいるが実際にはマウントされていないという状態を作れる。したがって、最終的にこれらの表示は消える。以下に手順を示す。

いったんNautilusでマウント

いったん旧ルートファイルシステムをNautilusでマウントする。

旧ルートファイルシステムをNautilusでマウントする

fstabに追記するのに必要な情報を控えておく

/etc/mtab を参照すると、現在マウントしているデバイスとそのマウント場所、ファイルシステムの種類、およびマウントオプションを確認できる。

それらしきデバイスを発見したら、これらの情報をそのまま控えておくこと。

以下の例では、230aa0b9-3786-4064-8b29-aaf3464b1992 btrfs rw,nosuid,nodev,relatime,space_cache=v2,subvolid=5,subvol=/ 0 0 が特に重要な記述であるので、これをコピーする。

(中略)
/dev/sdc2 /run/media/manjaro/230aa0b9-3786-4064-8b29-aaf3464b1992 btrfs rw,nosuid,nodev,relatime,space_cache=v2,subvolid=5,subvol=/ 0 0

この作業が終わったら、マウント中のデバイスをアンマウントする。Nautilusでマウント中のデバイスをアンマウントするには、デバイス上で右クリックして、コンテキストメニューを出し、そこから「取り出す」をクリックする。

コンテキストメニューからアンマウントする

見せかけのフォルダを作成

次に、デバイスに結び付けておくための見せかけのフォルダを追加する。

mkdir /mnt/DUMMY

fstabにエントリを追加

etc/fstab を編集し、 新たなエントリを追加する。このエントリは控えておいたものをベースに、オプションにはnoautoを必ず追加すること。どう追加すればいいかは、先程控えたもの、fstabの書き方、それからフィーリングを頼りに!(だって、以下例を見れば感覚でわかるでしょ。)

# /etc/fstab: static file system information.

(中略)

UUID=230aa0b9-3786-4064-8b29-aaf3464b1992 /mnt/DUMMY	 btrfs   noauto,rw,nosuid,nodev,relatime,space_cache=v2,subvolid=5,subvol=/ 0 0

保存したら、systemctl daemon-reload で再読み込みする。

おわり

Nautilusにおける左ペインのデバイスのエントリをetc/fstabを編集することで消すことに成功した。

先程のコマンドでsystemdを再読み込みしたあとは、書いた設定が毎起動ごとに自動で読み込まれるようになるので、以降この表示を気にする必要はなくなる。めでたしめでたし。

デバイスのエントリを消すことに成功した

脚注

補足情報!

/etc/mtabについて

/etc/mtab に記載されている情報の形式は、/etc/fstab と全く同じで、それ自体はデバイス名やらマウントポジションやらが記述されているテキストファイルである。ある特定のデバイスが/etc/mtabにリスティングされているということは、すでにそのデバイスがマウントしているかに関係なく、何らかの形で特定のマウントポジションと関連付けられているということである。

マウントオプションについて

/etc/fstab にあるオプションでマウントするということは、例えばシェルで以下のようにマウントするのと同じようなものである。

mount -o [default,noauto みたいな情報] /dev/sdXX /mnt/DUMMY

コメントする

* が付いている欄は必須項目です。