特定のユーザーの読み取り/書き込みアクセス権を持つデバイスをマウントするにはどうすればよいですか?
特定のユーザーの読み取り/書き込みアクセス権を持つデバイスをマウントするにはどうすればよいですか?
回答:
まさにそれを行う一般的な方法はありません。ファイルシステムにファイル所有権の概念がない場合は、おそらくuid
ファイルが属するユーザーを決定するマウントオプション()があります。ファイルシステムにファイル所有権の概念がある場合は、読み取り/書き込み可能にマウントすると、ユーザーは許可されているすべてのファイルを書き込むことができます。
特定のユーザーにのみファイルシステムへのアクセスを許可し、そのためのFUSEドライバーがある場合は、ユーザーがデバイスに読み取り/書き込みアクセスできるように手配し、そのユーザーとしてFUSEを介してマウントします。
特定のユーザー(または特定のグループ、またはACLによるより良い微調整)のみを許可する別の方法は、アクセス制限されたディレクトリの下にマウントポイントを配置することです。
mkdir -p /media/restricted/joe/somedisk
chown joe /media/restricted/joe/somedisk
chmod 700 /media/restricted/joe/somedisk
mount /dev/sdz42 /media/restricted/joe/somedisk
一部のユーザーに読み取り/書き込みアクセスを許可し、他のユーザーにファイルアクセス許可に関係なく読み取り専用アクセスを許可する場合は、制限付きアクセスディレクトリの下でファイルシステムを読み取り/書き込みでマウントし、bindfsを使用してそのファイルシステムの読み取り専用ビューを作成します。
bindfs -o perms=a-w /media/private/somedisk /media/public-read-only/somedisk
また、一部のユーザーに対してはbindfsビューを読み書き可能にし、他のユーザーに対しては読み取り専用にすることもできます。bindfsのマニュアルページの-m
および-M
オプションを参照してください。ルートのみがアクセスできるディレクトリの下にプライマリマウントポイントを配置することを忘れないでください。
この-o
オプションを使用すると、マウントされたデバイスのumask、所有者、およびグループ所有者を設定できます。
例えば :
mount -t vfat -o umask=0022,gid=33,uid=33 dev /var/www
これにより/var/www
、umask 0022、所有者:ID 33のユーザー、グループ:ID 33のグループでvfatデバイスがマウントされます。