I had the same problem.
To fix this, modify /etc/fstab to include "umask=000". Here's what (some of) mine looks like:
Code:
# This file is edited by fstab-sync - see 'man fstab-sync' for details
LABEL=/ / ext3 defaults 1 1
/dev/hdb3 /WinXP vfat users,umask=000 0 0
/dev/devpts /dev/pts devpts gid=5,mode=620 0 0
/dev/shm /dev/shm tmpfs defaults 0 0
LABEL=/home /home ext3 defaults 1 2
/dev/proc /proc proc defaults 0 0
/dev/sys /sys sysfs defaults 0 0
LABEL=SWAP-hdb5 swap swap defaults 0 0
/dev/fd0 /media/floppy auto pamconsole,exec,noauto,managed 0 0
/dev/hdc /media/cdrecorder auto pamconsole,exec,noauto,managed 0 0
I showed you most of the file so you won't be intimidated by seeing the whole thing if you've never opened it before.
Pay special attention to the third line, starting with
/dev/hdb3 . This is the line that indicates my shared vfat (FAT32) partition. Most of my partitions say
default after the file system type, but this one in particular says
users,umask=000. That is what gives the entire volume read, write and execute permissions to everyone.
That is not a secure way of doing things, particularly if you are sharing the entire windows tree, including whatever volume stores the windows system files. Someone (in this case
anyone) could write a virus, corrupt data, delete, etc the entire volume. So be sure this is a separate, shared partition, not a part of your Windows system tree.
FAT partitions do not support individual file and folder permissions, so there is no way to grant a specific user permissions of any sort to a specific file or folder. That means that whatever permissions you grant for the volume exist throughout the entire volume. So be choosey unless you are in a situation where you know everyone who is using that particular system (like in my case where it is just me and my girls... at home, not in an office full of people). In addition, since VFAT does not really support permissions, the Linux system itself is doing the granting, based on whoever mounted the partition. In the case of an installation-script produced fstab, the volume is mounted at boot time, which means the user listed as mounting it is root. After mount, noone can genuinely modify the file permissions with chown (or any other ch~ command) because the file system does not support this use. So you're stuck with root and only root being able to edit anything on the shared partition.
That's one of the big reasons we've moved away from VFAT... including MS's shift to NTFS. That's the sort of inconsistency you get when you have a file system that was designed for a non-networked Disk Operating System (i.e. single-user system) where the only security layer is physical access and single-superuser login to the system that must operate in an environment that is suddenly security-oriented and highly networked.
If you want to know more, and get more in-depth modifying exactly who can do what on your system, do some research on the fstab file, and exactly what all the numbers and permission tags mean.