Linux (old) Newbies

古いWindows環境からLinux環境へと移り住んだ日々の出来事

ゴミ箱に移動が出来ないのはドライブの所有権の違いでした

ふと削除したファイルをもう一度閲覧しようと"ゴミ箱"を開いてみたら1つも削除ファイルは見当たりませんでした。そういえば最近に削除するときになんかメッセージが出てたなぁと。Ubuntu だとドライブ毎に作成されるゴミ箱フォルダの名前は ".Trash-1000" なのですが、それが作成されているドライブと全く存在しないドライブ、存在するけれどゴミ箱として使えないものの3種ありました。

ゴミ箱のアクセス権はドライブの所有権と等しくなるっぽい

ゴミ箱が使えない原因を調べていくうちに、どうやら ".Tash-1000" のフォルダーのアクセス権(Read/Write) が無いのでゴミ箱フォルダーに移動できない状態というのが分かり、ゴミ箱に入れることが出来るドライブは、".Tash-1000" の所有権、アクセス権ともログイン中のユーザー名と等しく、ゴミ箱に入れることが出来ないドライブは、所有権、アクセス権とも root となっていました。

XFce の ファスルマネージャ Thunar でも同様の「ゴミ箱に入らない」メッセージが出ます

アクセス権と所有権を変えれば使えるようになるのかな?

とりあえずターミナルからコマンドで ".Trash-1000" の所有権とアクセス権の変更を試みるも効かないみたいで、じゃあ削除したらどうなるのかとフォルダーごと削除しても再作成されず、それなら手打ちでフォルダーを作成したらと、手動で同名のフォルダー名を作成するも所有者、アクセス権とも root となってしまい変化なしでした。

どこが違うのかゴミ箱が機能する/しないドライブの違いを観察

そういえば Ubuntu をインストールした初期だと普通にゴミ箱は使えていたよねって思い起こして、その後に弄ったところから得たヒントは。

・ゴミ箱が使えるドライブ
 → ログイン後に media 配下に追加でマウントしているドライブ
・ゴミ箱が使えないドライブ
 → システム起動時に自動で mnt 配下にマウントしているドライブ

という違いがあり、マウント先の違いもあるけれど、ドライブそのものの所有権が root になっているからダメだった様子。
ちなみに私のUbuntu-PC環境でゴミ箱問題が発生したのは NTFS でのパーティションのものです。他のファイルシステム形式でも同様にゴミ箱問題が発生するのかは分かりません。

起動時の自動マウントでも所有権 = ユーザーとなるように書き換え

マウント時のオプションで
uid=ユーザー名,gid=ユーザー名
というパラメーターを追加してドライブそのものの所有権をログインユーサーにすることでシステム起動時でのマウントでも ".Trash-1000" のアクセスが可能になりました。

他のログインユーザー ID で入ったら同様にゴミ箱アクセスが出来ないじゃんwww
というのが目に見えるのですが、とりあえず一人で使う分にはいいかと。
けっこうマウントポイント指定でバッチを書いていたりするので今更変更するのも面倒くさいなぁというのが大きいですね。
たぶん Ubuntu 的には 追加のドライブは media として毎回にログイン後にマウントして使うのが正しいような気がします。