Using File Systems on Linux: NTFS

Using File Systems on Linux: NTFS
Page content

NTFS-3G

You can run Linux alongside Windows, reading and writing files from your Windows NTFS partitions from within Linux. Linux has full read/write support of NTFS file systems, although it did not in the recent past. While you can’t install Linux to an NTFS file system and run it from there, Linux programs are fully compatible with them.

Most newer Linux distributions include the NTFS-3G driver out of the box. If yours doesn’t, look in your Linux distribution’s package manager for an “ntfs-3g” package.

Graphical Mounting

Once the NTFS-3G driver is installed, you can access the hard drives from your Linux desktop. Once you open them, they’re mounted automatically and you can browse them like any other file system or folder. On Ubuntu, click “Places” and “Computer,” then double click one of the NTFS hard drives displayed in the Computer window.

Read and write to your NTFS file systems by accessing them from any application’s open or save dialogs; they function just as any other folder on your computer.

Screenshot: Ubuntu 10.04 File Manager / Chris Hoffman

Mounting Commands

NTFS file systems can also be mounted like any file system on the command line with the “-t ntfs” switch once the NTFS-3G driver is installed. Mount an NTFS file system at a Linux terminal by following these steps:

  1. Become the root user by typing “su” or “sudo su” on Ubuntu, pressing “Enter,” typing your password and pressing “Enter.”
  2. Create a mount point by typing “mkdir /mnt/ntfs” and pressing “Enter.” You can replace “/mnt/ntfs” with your own mount point, if you like.
  3. Look for NTFS file system partitions by typing “fdisk -l” and pressing “Enter.”
  4. Mount the first hard drive’s first partition by typing “mount /dev/sda1 /mnt/ntfs -t ntfs” and pressing “Enter.” Replace “/dev/sda1” with the partition code for another NTFS file system and “/mnt/ntfs” with the mount point you created.

History

NTFS, or New Technology File System, replaces the FAT32 file system used by default in Windows 98, ME and earlier. Windows XP is the first consumer version of Windows that used NTFS, although Windows 2000 and earlier versions of Windows NT used it as well.

Linux struggled with the NTFS file system for a while. While read-only support for NTFS file systems was present for quite a while, support for writing to them was elusive. And, when experimental writing support was present, it was unstable and risked data corruption. Some Linux distributions ran a Windows NTFS driver under Wine, which runs Windows applications. This was significantly slower and also prone to instability.

With the release of the NTFS-3G driver, Linux fully supports NTFS file systems. NTFS-3G is a userspace file system driver, which means that users can mount NTFS-3G file systems without system permissions, and the driver runs as a normal program outside of the Linux kernel.