如何为给定用户安装具有读写访问权限的某些设备?
如何为给定用户安装具有读写访问权限的某些设备?
Answers:
没有通用的方法可以做到这一点。如果文件系统没有文件所有权的概念,则它可能具有安装选项(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
选项。切记将主安装点放在只有root可以访问的目录下。
您可以使用该-o
选项,从而可以为已安装的设备设置umask,所有者和组所有者。
例如 :
mount -t vfat -o umask=0022,gid=33,uid=33 dev /var/www
这将以/var/www
umask 0022,所有者:ID为33的用户和组:ID为33的组安装vfat设备。