One of the tings which went wrong when I upgraded from Ubuntu 8.10 to 9.10 was that along the way my /etc/fstab file got changed and my NTFS data partition* no longer auto-mounted on login.
To make matters worse, manually mounting the drive was fine but none of my shares were accessible from other PCs on the network! I would just get the error in Nautilus “Unable to Mount Location – File doesn’t exist”, true but unhelpful!!
The following explains what I did to fix the automount NTFS issue in fstab and then goes on to explain how to fix the samba NTFS file sharing issue.
1. Find out what partitions are mounted and their UUID
From Terminal enter
sudo fdisk -l
you will get something like this:
Disk /dev/sda: 203.9 GB, 203928109056 bytes
255 heads, 63 sectors/track, 24792 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0xaad6c457
Device Boot Start End Blocks Id System
/dev/sda1 * 1 24792 199141708+ 7 HPFS/NTFS
Disk /dev/sdb: 18.4 GB, 18360785920 bytes
255 heads, 63 sectors/track, 2232 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x2627a149
Device Boot Start End Blocks Id System
/dev/sdb1 * 1 2231 17920476 7 HPFS/NTFS
Disk /dev/sdc: 72.8 GB, 72839168000 bytes
255 heads, 63 sectors/track, 8855 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0xd8e61fe6
Device Boot Start End Blocks Id System
/dev/sdc1 * 1 1020 8193118+ 7 HPFS/NTFS
/dev/sdc2 1021 8855 62934637+ 5 Extended
/dev/sdc5 1021 8530 60324043+ 83 Linux
/dev/sdc6 8531 8855 2610531 82 Linux swap / Solaris
Now enter
sudo blkid
to give you the UUID of the disks:
/dev/sda1: UUID=”129C05969C05760F” LABEL=”Data” TYPE=”ntfs”
/dev/sdb1: UUID=”FA04BF8104BF4005″ LABEL=”WINxpLIVE” TYPE=”ntfs”
/dev/sdc1: UUID=”00F06B7EF06B7934″ LABEL=”SWAP” TYPE=”ntfs”
/dev/sdc5: UUID=”c9f7c64f-97f1-4dae-b484-1b41edf6bd4b” TYPE=”ext3″
/dev/sdc6: UUID=”781f5133-c165-44bf-b3fd-7cf21dd561d3″ TYPE=”swap”
In the above example my NTFS drive is /dev/sda and the partition is /dev/sda1 which has the volume label of “Data” and a UUID of 129C05969C05760F. I’m now going to use these three bits of information to create a custom fstab entry for my NTFS partition.
2. Edit /etc/fstab
/etc/fstab is the File System Table and lists all available disk partitions, indicating how they should be initialised on system start-up.
To edit, go to Terminal and enter
sudo nano /etc/fstab
Note: I’ve used nano as my text editor but you could use vi, gedit, kate or any other text editor of your choice.
Because the NTFS Data partition was only being manually mounted, it will not appear in fstab. Based on the information obtained from section 1, enter the following lines before your CDROM drive entries and after you last hard disk entry as follows:
# NTFS ~ Use ntfs-3g for write access (rw)
# /dev/sdc1
UUID=129C05969C05760F /media/Data ntfs-3g auto,users,uid=1000,gid=100,dmask=000,fmask=111,utf8 0 0
The items in red are the resuts of the commands entered in section 1 and will need substituting with your own results.
Save the edited fstab file.
You can now either reboot, but as this is not Windows you can just reload your fstab file by entering the following to mount all devices listed:
mount -a
Your NTFS volume will now be auto mounted and you will no longer need to put in a password to access the volume.
3. Fixing Samba file sharing for NTFS partitions
Normally, you can change folder/ file permissions either by right clicking on the file/ folder and clicking properties and then selecting permissions or by using the chmod +o rwx command in terminal, at least if you are using ext2, 3 or 4 file systems which are native to Linux/ Unix. Unfortunately, neither method works for NTFS partitions and therefore they are not accessible over a network as a share!
However, if you are using ntfs-3g (which we are in the above example), all is not lost!
In the FSTAB community documentation (see Sources below) it says the following:
“ntfs/vfat = permissions are set at the time of mounting the partition with umask, dmask, and fmask and can not be changed with commands such as chown or chmod.
- I advise dmask=027,fmask=137 (if you user umask=000 all your files will be executable). More permissive options would be dmask=000,fmask=111. “
So to enable more permissive access we need to change the dmask and fmask settings in fstab from the restrictive
dmask=027,fmask=137
to
dmask=000,fmask=111
Save the modified file and reboot.
Network users will now have access to shared ntfs files/ folders on that partition via your Linux PC.
Sources
I used the following sources to put together this article:
https://help.ubuntu.com/community/Fstab
*This is one of the few PCs I still have running Windows XP.
=-=-=-=-=
Powered by Bilbo Blogger
I added:
”
# NTFS ~ Use ntfs-3g for write access (rw)
# /dev/sdc1
UUID=129C05969C05760F /media/Data ntfs-3g auto,users,uid=1000,gid=100,dmask=000,fmask=111,utf8 0 0
”
to the /etc/fstab and saved (without quotes, and changing my information in red) but when I tried mount -a I get this:
“mount: only root can do that”
Please help!