I'm running Ubuntu 12.10 (kernel 3.5.0-21-generic) on a laptop, and seem to have run into a strange problem with an auto-mounted external FAT32 USB HDD: The permissions of the drive's mount-directory, and everything in it, is mapped to "drwx------" (700) after the auto-mount. The USB-mounted HDD is a Western Digital WDC WD5000BPVT-22HXZT3 (SATA-2); I have another one of these built into the laptop, and that one runs like a charm.

From my understanding the permissions should be 755 instead, and the 700 setting causes serious problems with my backup program (lucky backup); the software simply cannot backup anything anymore because it cannot access the directories on the USB drive. However, manually copying the data to the USB HDD (using nautilus or the terminal) doesn't cause access problems. This might be connected, as these programs access the files directly, not indirectly using a cron-job like the backup tool.

I did a lot of googling today to try and find similar cases with sollutions, but none worked so far; the best hint I found was that the permissions may get reset to 700 whenever the mouning procedure finds a problem with the USB HDD, for whatever reason. If checked the logs, and found that the device was indeed causing

"HDIO_GET_IDENTITY failed for '/dev/sdc': Invalid argument"
warnings because of hdparm, so I set the "nohdparm" option in the GRUB_CMDLINE_LINUX_DEFAULT setting in /etc/default/grub. Checking the logs indicates this took care of the warnings, but sadly didn't change the USB HDD permissions back to normal.

Then I tried another idea that suggested defining a USB mount policy, but no luck there either, it didn't change anything. Therefore my questions remain:

  • what are the reasons for FAT32 USB HDDs being auto-mounted with permission 700? And if this is intended, are the powers that be aware how much software is NOT using the current user to access files?
  • is this in any way connected with this 3-Year-Old Bug? https://bugs.launchpad.net/ubuntu/+source/nautilus/+bug/390040/
  • is there a workaround that doesn't involve avoiding FAT32 on the USB HDDs? After all I like being able to directly access data backups from multiple OS's ...

Thanks in advance ...


At last I found a workaround by adding the following static definition to /etc/fstab: UUID=7358-CACE /media/backup vfat users,nofail,flush,utf8,umask=0000 0 2

Basically, the entry defines a user-independent mount-pount for my USB HDD. It simulates root as user and group for anything on the USB HDD, which is fine because umask=0000 assures that everyone can do anything on the drive. The other options are:

  • "nofail" assures that the kernel doesn't mutter if the drive isn't present at boot time
  • "users" assures that anyyone can unmount the drive, not just root
  • "flush" should make sure the drive is flushed often, but not synced
  • utf8 should be able to translate special characters in file names properly

The only problem remaining with this is that nautilus somehow decides to close when I unmount the device, but I can live with that. There is no error entry in syslog or auth.log suggesting it crashed ...

| improve this answer | |

Not the answer you're looking for? Browse other questions tagged or ask your own question.