ゴミ箱はどのように機能しますか?公式のドキュメント、リファレンス、または仕様はどこで入手できますか?


14

マウントされたNTFSボリュームからゴミ箱を管理しようとすると、FreeDesktop.orgのリファレンスを読んでしまいました。

いろいろとテストして、Ubuntu / Gnomeが100%仕様に従っていないことに気付きました。その理由は次のとおりです。

  • 非/パーティションの場合、それは常に使用しています<driveroot>/.Trash-<uid>、それは決して使用しない<driveroot>/.Trash/<uid>私は、事前にそれを作成した場合でも、。これは機能しますが、面倒です。15人のユーザーがいる場合/.Trash-xxx、ドライブに15個のフォルダーが作成されますが、他の方法では1つのフォルダー(15個のサブフォルダー)が作成されます。私のドライブの「汚染」は非常に不快です。また$topdir/.Trash$topdir/.Trash-$uidディレクトリが存在しない場合、ディレクトリが使用されるという仕様書があります。さて、それは存在するので、なぜそれを使用しないのですか?

  • ルートトラッシュは機能しませ。少なくとも箱から出してはいけません。rootとしてnautilusを開き、ゴミ箱をクリックします。エラーが発生します。ファイルを削除しようとすると、「ゴミ箱に移動できません」と表示されます。OK、これを作成することで修正できることを知っています/root/.local/share。しかし、仕様では、「「ホームトラッシュ」ディレクトリは新しいユーザーに対して自動的に作成される必要があります。このディレクトリがトラッシング操作に必要であるが存在しない場合、実装は警告や遅延なしに自動的に作成する必要があります。」なぜエラーなのですか?バグ?

  • /etc/fstabボリュームがすでにすべてのユーザーのRWとしてマウントされている場合、マウントされたボリュームのエントリを変更し、uidやguidなどのオプションを追加する必要があるのはなぜですか?

これらは、標準からの逸脱のほんの一例です。したがって、質問は次のとおりです。

「Ubuntuが100%仕様に準拠していない場合、ごみ箱は正確にどのように機能しますか?どこでUbuntuのごみ箱の実装に関するテクニカルリファレンスを見つけることができますか?」

ちなみに、Ubuntuが仕様に従っている場合は、特に/.Trash-<uid>vs /.Trash/<uid>問題に関して、私が間違っていることを教えてください。

ありがとう!

編集:

詳細情報:

  • 特定のfsがスティッキービット(VFAT、NTFS)をサポートしていない場合、おそらくアクセス許可も持っていません(少なくともVFATは確かにサポートしていません)。それでは、あるユーザーが/他のユーザーの復元をパージするのを妨げるものは何./Trash-xxxですか?自分のゴミ箱を読み書きできる場合、他のゴミ箱を含むドライブ全体で同じことを行うことができますか?または、Gnomeには./Trash-xxxVFAT / NTFS fs 上のフォルダーに対する何らかの「余分な」保護がありますか?

  • Linuxが/fstabuidオプションとgidオプションを編集することにより、NTFSマウントのファイル許可を「エミュレート」できる場合、スティッキービットも「エミュレート」できますか?私は本当に/.Trash/xxxフォーマットを使用したいと思います...

  • ルートの問題の場合:/パーティションでは、ゴミ箱をルートとして使用できます/root/.local/share/Trash。しかし、(ルートとして)Nautilusの「ゴミ箱」をクリックすると、エラーが発生します。そうじゃない?ファイルは正しくゴミ箱に捨てられますが、アクセスできません。私ができることは、(上のファイルを削除して/root/.local/share/Trash)手動でそれらを「パージ」することですが、復元は非常に難しいでしょう(情報ファイルを開いて手動で移動するなど)。

  • /以外のパーティション(または少なくともVFAT / NTFSの場合)では、ルートとしてゴミ箱を使用することさえできません。./Trash-0フォルダを作成せず、単に「ゴミ箱に入れない、永久に削除したいですか?」どうして?

  • fstabについて:NTFSパーティションの永続的なマウントに使用します。私はいくつかありますが、「事前にマウントされていない」場合は、デスクトップやNautilusを本当に混乱させます。私はむしろのようなマウントで、私のファイルシステムに統合され、それがあらかじめ実装されている必要があるだろう/data/windows/xp/windows/vista、というように、そして休暇/mediaだけで、本当にリムーバブルドライブのために、その「マウント/アンマウント」柔軟性。

それで、Ubuntu / Gnomeが本当に仕様に従っている場合、根本的な問題を修正し、(少なくとも)fstab'ed NTFS固定パーティションのスティッキービットを「エミュレート」する方法はありますか?

回答:


3

私が理解している限り、GNOMEは.Trashを正しく使用しています-gio / glocalfile.cソースを見ると、.Trashディレクトリが存在する場合、それを使用しようとすることがわかります。ただし、ごみ箱ファイルを安全に保存できるようにするには、ディレクトリに正しいアクセス許可が必要であることに注意してください(ここで安全に、他のユーザーはごみ箱にあるファイルを復元できません)。このGNOMEでは、.Trashディレクトリにスティッキービットを設定する必要があります-FreeDesktop.OrgのTrash仕様のTrash Directories、note(1)を参照してください。

上記のアプローチの主な問題は、あなたが見つけるほとんどのr / wリムーバブルメディアはFATであり、スティッキービットをサポートしていないため、これを安全に処理する唯一の方法はユーザーごとのゴミディレクトリを使用することです。

ルートゴミに関して-あなたが説明した問題を再現することはできませんが、私にとってはうまくいくようです。

/ etc / fstabについて-私はそこに何が問題なのか分かりません:外部ファイルシステムがマウントされている場所を完全に制御したいのでなければ、fstabをいじる必要があります。通常、リムーバブルメディアは、現在アクティブなユーザーの/ mediaで検出されると自動的にマウントされますが、他のユーザーはアクセスできません。別のセットアップが必要な場合は、構成ファイルをいじる必要があります。しかし、それがゴミにどのように関係するのかわかりません。


ありがとう!あなたは私にたくさんの興味深い情報を与えました、そして、いくつかの質問は起こりました...どこであなたのコメントを尋ねるか/答えるべきですか?ここでこのコメントまたは私の元の質問を編集しますか?
メストレリオン

私はあなたのものを受け入れられた答えとしてマークしました...しかし、可能であれば、私の(編集された)質問で言及された新しい問題に答えてください。そして、あなたの答えをたくさんありがとう!
メストレリオン

1

これに少し遅れましたが、誰かが興味を持っている場合:、私は同じ問題を抱えていましたが、アドバイスでドルフィンをダウンロードしました。次にsudo dolphin、ターミナルでDolphinを実行しました。

ここで、ごみ箱を右クリックし、空のごみ箱を選択すると、エラーが発生するのではなく、ファイルがクリアされます。

これは実際にはあなたの質問とは関係ありませんが、単に回避策です。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.