「/media/$USER」にインストールされているデバイスの所有権を永久に変更するには?

「/media/$USER」にインストールされているデバイスの所有権を永久に変更するには?

ディスク容量を拡張するために暗号化された(LUKSとext3を使用したcryptsetup)SDカードを使用してください。 Nautilusにキーを入力すると、デバイスのパスワードが復号化され(/dev/dm-3)Nautilusにインストールされます/media/$USER/。残念ながら、所有者はルートです。インストールされているデバイスの所有権を永久に変更するには/media/$USER

次のudevルールを試しました。

ENV{ID_FS_UUID}=="a1d9e412-fd9d-4e44-a98f-d0d6f2de83c2", SUBSYSTEM=="block", OWNER="david"

しかし、それはうまくいきませんでした。

所有者がデバイスをインストールしたいユーザーに設定する動的所有権を持つことはできますか?

答え1

ここでは概念が混乱しています。udevルールによって所有権が変更されます。デバイスノードディスク。これは、ファイルシステムエントリの所有権と権限とは完全に独立しています。含むファイルシステム

デフォルトでは、2種類のファイルシステムがあります。一般的なUNIXファイルシステム(ext[2-4]XFS、JFS、Btrfsなど)など、ファイルの所有権の概念を理解するシステムと、少なくとも「以前の」Windowsを好まないシステムです。 /DOS ファイルシステム (FAT*)。

後者のカーネルファイルシステムドライバには、通常、ユーザースペースに提供する所有者と権限をカーネルに通知するマウントオプションがあります。 Linuxはマルチユーザーシステムで、ユーザーは必要に応じてファイルを分離する必要があるため、外部ドライブが優れていても同じです。 Nautilus&Co.は通常、ファイル所有権の概念なしでファイルシステムをマウントするときに、これらのマウントオプションを使用して、ユーザー(通常は現在アクティブなセッションの所有者)がファイルを「所有」するようにします。

ファイル所有権の概念を持つファイルシステム(たとえば、ext3使用中のシステム)の場合、状況は異なります。このファイルシステムのファイルには明確な所有者があるため、カーネルはそれを尊重します。これらのファイルシステムはまた、この動作(明示的なマウントオプションなど)をオーバーライドするメカニズムも提供しません。これはセキュリティを損なう可能性があるためです。したがって、このようなファイルシステムをマウントすると、カーネルはNautilusを介しても実際のファイル所有権を尊重します。

長すぎます。:変化ブロックデバイスユーザーの所有権は問題を解決または発展させません。カーネルを作成する方法はありません。パフォーマンスあなたはファイルの所有者のように見えますが、実際には作るあなたは所有者です。つまり、chmodこれを行うだけです。永久ただし、ファイルシステム自体を変更する場合。このため、この方法は他のコンピュータのシステムパーティションなどを回復するのには適していません。

所有権を恒久的に変更したり、変更する意図があり、rootデバイスを使用したいシステムにアクセスできる場合は、ファイルシステムをマウントした後に変更できますchown -R <user> /media/<user>root

ただし、別のシステムがあり、アカウントのUIDがすべてのシステムで一致しない場合は、次のコンピュータでも同じ問題が再発することに注意してください。この場合、アカウントのUIDを一致するように変更したり(権限がある場合)、所有権が不明なファイルシステム(FAT32など)でデバイスをフォーマットしたりできます。

関連情報