User mounting take 2
Igor Pokrovsky
ip at doom.homeunix.org
Sat Apr 22 14:40:57 UTC 2006
On Sat, Apr 15, 2006 at 01:05:45AM -0400, Joe Marcus Clarke wrote:
> Based on feedback I received on my initial diff, I took another crack at
> user mounting. To address Robert's concerns, I drop the setuid
> permissions until needed. Therefore, all permission checks are now done
> in the kernel. The same is true for umount(8).
>
> silby asked for wildcard support. To handle that, I added glob support
> to both the fs_file and fs_spec fstab components (via fnmatch(3)), and
> also added a special %u pattern that can be used to represent the
> current user (i.e. the user running mount(8)). This effectively allows
> the following in /etc/fstab:
>
> //%u at server/homes /home/%u/smb_home smbfs rw,noauto,user 0 0
>
> Then, a user could just run, for example:
>
> mount /home/marcus/smb_home
>
> And their SMB home directory would get mounted (~/.nsmbrc is also
> respected).
>
> Additionally, something like the following is also possible:
>
> /dev/acd0 /home/*/cdrom cd9660 ro,noauto,user 0 0
>
> Same mount command works here:
>
> mount /home/marcus/cdrom
>
> Wildcards can also be mixed and matched.
>
> Finally, in testing this, I found a problem with smbfs, msdosfs, and
> ntfs relating to the statfs(2) f_flags field. smbfs always set this to
> 0, msdosfs didn't set this at all, and ntfs set this to all flags (not
> just those visible to statfs(2)). By fixing this, umount(8) works
> properly on relative paths to user mount points for those three file
> systems.
>
> http://www.marcuscom.com/downloads/usermount.diff
>
> Comments?
Great feature! Hopefully it will hit the tree soon enough. Thanks!
-ip
--
A free agent is anything but.
More information about the freebsd-hackers
mailing list