How to mount external vfat drive as user?

Solution 1:

When you mount your vfat partion you can pass a uid and gid option to set the userid and groupid the filesystem will be owned by. You can also set a file and directory permission mask. If the filesystem will be used by several people consider creating a group and adding yourself as a member.

Your fstab should look something like this.

/dev/sdb1 /mnt/v1 vfat noauto,user,uid=blah,gid=blah 0 2

and your mount command would look like this.

mount -t vfat /dev/sdb1 /mnt/v1 -o uid=blah,gid=blah

You may also want to look at installing the pmount package to make mounting filesystem as a user easy.


Answer to questions in the comments.

1) is the fstab necessary also when I use the mount command?

If you want a user to be able to mount the command without using sudo, then yes.

2) do I have to be root for the mount command you gave me?

You could remove the noauto from the fstab, and the filesystem will be mounted at boot time. Or as a regular user they can mount with a command like mount /mnt/v1.

3) How do the changes in fstab become active?

Since you have used noauto, nothing will happen automatically. The entry just allows a user to be able to mount the fileystem.