How to Enable NTFS Write Support in Mac OS X

Oct 2, 2013 - 34 Comments

NTFS write support in Mac OS X OS X has always been able to read NTFS drives, but tucked away in Mac OS X is a hidden option to enable write support to drives formatted as NTFS (NTFS stands for New Technology File System and is a proprietary file system format for Microsoft Windows). Enabling NTFS write support on the Mac is fairly technical and it’s not officially supported by Apple, making it an experimental feature that is best left in the hands of advanced users who understand the process and the potential repercussions.


Because this feature is officially unsupported by Apple, NTFS should not be considered a reliable cross-platform file system for moving files between a Mac and a Windows PC, users will still want to format drives for the FAT file system for optimal Mac to/from PC drive compatibility with full read and write support (perhaps a better solution for many users would be to use samba networking and share files directly through a local network between the PC and Mac in question). Additionally, the lack of official support suggests there could be the potential for something to go wrong, either in the form of kernel panics or even theoretical data loss on the NTFS drive. Accordingly, such a feature may be best as a last resort and should not be used with important data on the Windows drive without having adequate backups of those files.

Comfortable with all of that? Great, we’ll cover two different ways to enable NTFS write support in OS X, this must be used on a per-drive basis and it requires the usage of the command line.

Enable OS X NTFS Write Support Using Drive UUID

Though it’s slightly more complicated than the drive-name based approach mentioned below, this is really the best method for precision.

Connect the NTFS drive to the Mac, then retrieve the NTFS drives UUID with the following command string:
diskutil info /Volumes/DRIVENAME | grep UUID

With the resulting UUID, use the following command to append the UUID with NTFS read and write support to /etc/fstab:

sudo echo "UUID=ENTER_UUID_HERE none ntfs rw,auto,nobrowse" >> /etc/fstab

The NTFS drive will likely not appear on the desktop by default, but you can get access to it in the /Volumes/ directory by opening that folder in the Finder with the following command:

open /Volumes

If you do want to see the drive on the desktop (assuming you have the desktop shown, of course), you can make an Finder alias with a symbolic link:

sudo ln -s /Volumes/DRIVENAME ~/Desktop/DRIVENAME

You can also use the experimental NTFS write mounting with a drive name rather than UUID, which we’ll go over next.

Enable NTFS Write Support with the Drive Name

For precision I prefer to use the UUID method, but you can also add NTFS write support by using the Windows drives name by using the following command:

sudo echo "LABEL=DRIVE_NAME none ntfs rw,auto,nobrowse" >> /etc/fstab

Because this uses the sudo command you will need to enter an admin password to be able to execute the entire command properly. This command string is appending the drive name to the end of the /etc/fstab file, because /etc/ is a system directory you need to have superuser access to write to files in that directory, thus the requisite sudo prefix.

For example, adding read/write support to an NTFS drive named “WINDOWS8″ would look like the following:

sudo echo "LABEL=WINDOWS8 none ntfs rw,auto,nobrowse" >> /etc/fstab

If the drive has as complex name, use the UUID method mentioned above, or rename the NTFS drive in Windows before attempting to mount it with write support.

Again, you’ll want to look in /Volumes/ to find the newly mounted Windows NTFS drive with full read and write support. As mentioned already, it can also be helpful to create a symbolic link on the OS X Desktop to easily access the mounted NTFS drive:

sudo ln -s /Volumes/DRIVENAME ~/Desktop/DRIVENAME && open ~/Desktop/DRIVENAME

There are a variety of easier but older tools to automatically complete the processes mentioned above, but the aforementioned NTFS Mounter utility seems to have stopped working post-Snow Leopard, and thus modern versions of OS X from Mountain Lion to Mavericks will want to use the command line approach instead. There are also third party paid apps available to provide NTFS support to OS X, which may be better options for enterprise environments where an experimental feature is not considered reliable enough to deploy.

Enjoy this tip? Subscribe to the OSXDaily newsletter to get more of our great Apple tips, tricks, and important news delivered to your inbox! Enter your email address below:

Related articles:

Posted by: Paul Horowitz in Command Line, Mac OS X, Tips & Tricks

34 Comments

» Comments RSS Feed

  1. James Moser says:

    If you wanted the disk to appear on your desktop, you simply need to remove the “nobrowse” option from above.

    • beausea says:

      When I remove the “nobrowse” option, I can not write NTFS file system.

      I guess that “browse” option prohibit to grant write permission to NTFS.

  2. Jefferson Borges says:

    Hi,

    I am using Mavericks and I tried to execute both steps, but none worked.
    For the first option, when I try to get info from the NTFS volume, it doesn’t have the UUID information:

    diskutil info /Volumes/Richard/
    Device Identifier: disk2s1
    Device Node: /dev/disk2s1
    Part of Whole: disk2
    Device / Media Name: Untitled 1

    Volume Name: Richard
    Escaped with Unicode: Richard

    Mounted: Yes
    Mount Point: /Volumes/Richard
    Escaped with Unicode: /Volumes/Richard

    File System Personality: NTFS
    Type (Bundle): ntfs
    Name (User Visible): Windows NT File System (NTFS)

    Partition Type: Windows_NTFS
    OS Can Be Installed: No
    Media Type: Generic
    Protocol: USB
    SMART Status: Not Supported

    Total Size: 1.0 TB (1000202043392 Bytes) (exactly 1953519616 512-Byte-Units)
    Volume Free Space: 856.9 GB (856922079232 Bytes) (exactly 1673675936 512-Byte-Units)
    Device Block Size: 512 Bytes

    Read-Only Media: No
    Read-Only Volume: Yes
    Ejectable: Yes

    Whole: No
    Internal: No

    And for the second option, I do as follows:
    jeffersonborges$ sudo echo “LABEL=Richard none ntfs rw,auto,nobrowse” >> /etc/fstab
    -bash: /etc/fstab: Permission denied

    There’s only the file /etc/fstab.hd which contains the message:
    jeffersonborges$ cat /etc/fstab.hd
    IGNORE THIS FILE.
    This file does nothing, contains no useful data, and might go away in
    future releases. Do not depend on this file or its contents.

    Could you please, help me on this?

    Thanks.
    Jefferson.

    • Roberto says:

      the same happens to me Jefferson, but I managed to get the job done.
      Like you I don’t see the UUID either in diskutil output, but you can use the name of the volume instead, as it seems you did in the second option.
      The echo command doesn’t work, in fact it doesn’t even ask you for the password, try an editor like vi, vim, nano, you name it. I used vi and it works perfectly.

    • gurita hartono says:

      paragon ntfs, work perfect

  3. ctaya says:

    I have been using NTFS-3G. After upgrading to Mavericks, not only that the NTFS disks could no longer be read, all the files disappeared and the disk looked like reset back to a state, just like one just out of the disk manufacturer’s door. I had tried two NTFS disks. All had the same problem. I am fortunate enough to have backup disks.

  4. rubenium says:

    I have created a script to initialize NTFS HDisks and use them in write mode just by using the native OSX disk, without third party software). It seems to work also under Mavericks. You can download it from:

    http://sourceforge.net/projects/native-ntfs-osx/files/

    You only need to run it once for each new ntfs disk. Next time you plug a ntfs disk that was alreadyinitialized with my script, the disk will be automatically mounted (however, it will not be displayed in the desktop, you will have to open it from /Volumes).

    It is also important that the HD has been safely removed, since NTFS contains a flag to notice if the disk was safely removed or not, not allowing to mount it in write mode with the native OSX driver (something similar happens under Linux). In case it happens you just need to plug it into a windows PC and safely remove the HD (so it cleans that flag).

    Hope this is useful to you.

    • paradise says:

      Looks great but doesnt work on my Moutain Lion. It says “Error. Please, select a NTFS device”, but when I type this single line:
      diskutil info $FILENAME | grep “Type (Bundle):” | cut -d ‘:’ -f2 | tr -d ‘ ‘

      ..result is “ntfs”!
      So I dont understand :)

    • RS says:

      Thank You rubenium. Your script worked like a charm.

  5. Makhmud Gucci says:

    OSXDaily
    “-bash: /etc/fstab: Permission denied”
    This is what I get when I type in command (UUID and by name).

    Rubenium
    “Error. Please, select a NTFS device”
    This is what I get when I run your script.

    Please help!

  6. ASMR List says:

    Hi Makmud, I had the same problem with Permission denied.

    To workaround, you must manually edit /etc/fstab.

    1. Grab everything inside the “”s after the echo, copy

    2. Do ‘sudo nano /etc/fstab’

    3. Paste, press control X and press y

    It should now work

  7. Dalibor says:

    Hi,

    re the permission problem, it indeed does not work using the echo command as suggested (I am on OSX 10.8.5). Apart from the workaround suggested in previous post, you can run

    sudo su –

    first, this logs you to the root console, and here you can echo the line to /etc/fstab without problems.

    Another observation, which might be helpful: I used ntfs formated hdd successfully until today. Suddenly, the volume mounted read only, no matter what was in /etc/fstab. It took me a while to figure out what happened, eventually dmesg gave away the culprit:

    sudo dmesg


    …NTFS-fs warning (device /dev/disk1s1, pid 712): ntfs_system_inodes_get(): $LogFile is not clean. Will not be able to remount read-write. Mount in Windows.

    After performing the disk check under Windows, the disk mounted normally. So make sure the disk is clean, otherwise it does not get the write permissions on OSX.

    Hope it helps.

  8. ron says:

    Hi,

    thanks for this advice. Indeed, this allows me to write to NTFS formatted disks. Unfortunately it seems as if there are still issues with the NTFS file permissions because I can’t access the files I’ve written with OS X from a Windows machine. I can see the files in the Windows Explorer but can’t open them.
    To get access with Windows Explorer for each of the files I have to go to the Security & Permissions settings and adjust the NTFS access permissions so that the current user is eligible to read and/or modify the file.

    Anyone having this issues too?

  9. ron says:

    Uhm, very strange.
    I tried it once again and now it seems as if these issues don’t occur anymore. I will have a look at it for a few more days. I hope the problems are finally gone.

  10. James says:

    Here I found an easy way to do that.

    By default Mac OS can only read NTFS, it cannot write to it.
    Follow these steps to write on your NTFS disk(tested with MAC 10.8.5).
    1. open Terminal
    2. ls /Volumes/
    you can see all available Disks name.
    3. Now I assume your external hard-disk name is “Mantosh Harddisk”.
    diskutil info /Volumes/Mantosh Harddisk
    Now you must be seeing all the info related with your disk.
    4. sudo vi /etc/fstab
    This is a system file, that’s why you need to use sudo.
    5. write the below line in this file.
    LABEL=Mantosh\040Harddisk none ntfs rw,auto,nobrowse
    \040 is for space in hard-disk name.
    6. Quit Terminal and Now, just unmount and re-mount the disk.

    Wait a minute, I don’t see my disk listed in the Finder window!
    As of Mountain Lion, the “nobrowse” mount option is required for this to work. This means that the partition will not show up on your desktop. However, you can access it normally through Finder by doing the following:
    Open Terminal and type “open /Volumes/THE_NAME_OF_YOUR_VOLUME” (without the quotes)
    The Finder pops up automatically and you can see your disk listed there.

    OR simply format your hard-disk to FAT file system.

  11. Indro says:

    Thank you so much Rubenium,

    your solution works great!
    Note for anybody who might have encountered initial issues like me:

    I tried first the manual solutions posted above, including vifs and the UUID vs. LABEL choice. It didn’t work although I followed the steps exactly. The disc would continue to automount and be accessible in the Finder, without write permission.

    At first I thought it was because of the safely removed flag which is said to cause issues, but it wasn’t fixed even through Windows safe removal.

    I then tried your script and it worked.

    Anyway, no need for third party tools or the old NTFS-3G!
    I just copied around 500 GB of data successfully, and checked some files for function without any problem.

    Cheers!

  12. GUILLE says:

    Hi,

    I have this solution working, but every time I copy a file and unmount/eject the volume (formatted as NTFS) and plug it in again, all those files copied are grayed out and don’t open.

    I found out that Finder didn’t finished the operation somehow.

    When I copy and just open the files, they are correct, but the issue happens after I disconnect the hdd and reconnect again.

    Any idea?
    Thanks!

  13. DM says:

    Did everything.
    After ejecting the HDD and the partition for which I added the UUID in the fstab went missing.
    It did not show up in the terminal as well.
    ls /Volumes did not list the partition. All other partitions were visible.
    Here is the setup and step:
    1. NTFS Drive with 4 partitions.
    2. Upon connecting it to the laptop, I can see 4 drives on my desktop.
    3. Grepped the UUID of one partition and added it to the fstab file.
    4. Ejected the drive.
    5. Connected it back again.
    6. The partition whose UUID I added to the fstan file did not show up in desktop. This is expected I guess.
    7. When I check the /Volumes in terminal, all volumes except the one above are listed.

    What am I doing wrong?
    Or are there any other steps involved here?

  14. A says:

    I successfully got write permission to work on my external HD. I then copied a file from my computer to a folder in the HD, the copy was successful, however all existing contents of the folder disappeared. How do I get them back?

  15. Sankar says:

    How to remove or eject this drive safely ? Mac always says that “you have to remove safely before directly removing this external hard disk” . So, Please suggest!

  16. aloe says:

    Thank u so much! It works perfectly :)

  17. Andrew says:

    Hm, I have successfully written the line to /etc/fstab, but I still am not able to write tot he drive.

    Console output:
    [none] andrew@~$ diskutil info /Volumes/ozyBackups/ | grep UUID
    Volume UUID: 3BAE8608-62E6-4476-AE10-9578AF7C21D0
    [none] andrew@~$ cat /etc/fstab
    UUID=3BAE8608-62E6-4476-AE10-9578AF7C21D0 none ntfs rw,auto,nobrowse
    [none] andrew@~$ touch /Volumes/ozyBackups/temp.txt
    touch: /Volumes/ozyBackups/temp.txt: Read-only file system

    For the record, I was also not able to sudo echo to the file, permission was denied. Yet I could sudo emacs to edit it, or sudo su then enter the echo command as su.

    Any idea why I can’t write despite having that line in my /etc/fstab ?

  18. Michael Dreher says:

    You are absolutely right! This has cost me some hours

    Here the part of the source code from http://www.opensource.apple.com/source/ntfs/ntfs-83/kext/ntfs_vfsops.c which proves it.

    /*
    * We only allow read/write mounts if the “nobrowse” option was also
    * given. This is to discourage end users from mounting read/write,
    * but still allows our utilities (such as an OS install) to make
    * changes to an NTFS volume. Without the “nobrowse” option, we force
    * a read-only mount. Note that we also check for non-update mounts
    * here. In the case of an update mount, ntfs_remount() will do the
    * appropriate checking for changing the writability of the mount.
    */
    if ((vfs_flags(mp) & MNT_DONTBROWSE) == 0 && !vfs_isupdate(mp))
    vfs_setflags(mp, MNT_RDONLY);

  19. Chris says:

    FYI – in linux – when you create an NTFS volume, you probably need to use this option:-

    -U, –with-uuid
    Generate a random volume UUID.

    eg:

    mkntfs -U -f -L ‘MyLabel’ -v /dev/partitionx

    (if you want to use UUID labels)

  20. xxx says:

    Scratch that! Had a problem with my own instructions, and here is my edit:

    Instructions for Enabling NTFS Write

    1 Enabling Root (Once off)
    See http://support.apple.com/kb/PH14281.
    In step 5 use “edit” from the top menu bar.

    2a For each drive (UUID method)
    • Connect the NTFS drive to the Mac and note the drive name.
    • Log in as root
    su root
    and give the root password.
    • Open a terminal and give the command
    diskutil info /Volumes/DRIVENAME | grep UUID
    Use quotation marks if more than one word
    • Use the command
    echo “UUID=ENTER_UUID_HERE none ntfs rw,auto,nobrowse” >> /etc/fstab
    • Remove the drive, then put back in.
    Should see new drive under /Volumes.

    2b Cheat method
    • Log in as root via terminal
    su root
    • Open a terminal and give the command :
    echo “LABEL=DRIVE_NAME none ntfs rw,auto,nobrowse” >> /etc/fstab
    • Remove drive then put back in

    3 See /Volumes
    • In a terminal type
    open /Volumes
    Should see folder in finder.

    Based on instructions on:
    http://osxdaily.com/2013/10/02/enable-ntfs-write-support-mac-os-x/

  21. De says:

    If the other solutions don’t work – the following does a 100%:

    mkdir ~/Desktop/Drive // where the drive will be mounted
    mount // will tell you the internal drive name, something like /dev/disk2s1
    sudo umount /dev/disk2s1
    sudo mount -t ntfs -o rw,auto,nobrowse /dev/disk2s1 ~/Desktop/Drive

  22. mlake says:

    edited the fstab file and saved. Now the system is not detecting the hdd at all. I can’t find it under the Volumes folder. Any help please?

  23. Mike says:

    What are the pros/cons of this fix compared to using something like NTSF-3g to write to NTSF formatted hard drives from a Mac?

  24. rricho says:

    Can mount ntfs drives on mavericks read/write, but each mount of the same drive leaves a new entry in /Volumes with names like drive1, drive2, etc. even if unmounted correctly by volumes and drive. any ideas how to fix this?

Leave a Reply

 

Shop for Apple & Mac Deals on Amazon.com

Subscribe to OSXDaily

Subscribe to RSS Subscribe to Twitter Feed Follow on Facebook Subscribe to eMail Updates