How to Mount NTFS Drives on Ubuntu: Complete Guide to NTFS-3G, NTFS3, Permissions, and Troubleshooting

目次

1. Introduction

When using Ubuntu, there are many situations where you may want to mount a Windows NTFS-formatted hard drive or USB flash drive. However, Linux does not natively support NTFS, and as a result, these devices often become read-only by default.

This article explains in detail how to properly mount NTFS drives in Ubuntu with full read/write support.

1.1 Why Handle NTFS on Ubuntu?

Ubuntu users deal with NTFS mainly in the following situations:

① Dual-booting with Windows

If you are running Windows and Ubuntu on the same PC, you may need to access NTFS-formatted partitions from Ubuntu. This is especially useful when editing files created in Windows or sharing data between both systems.

② Using External HDDs and USB Drives

Many external hard drives and USB sticks are formatted as NTFS. To use them on Ubuntu, you must properly configure software that supports the NTFS filesystem.

③ Advantages of NTFS

Compared to FAT32, NTFS has no file size limitations, making it ideal for handling large data files. It is also highly compatible with Windows, making it a useful option for cross-platform data sharing.

1.2 Challenges When Using NTFS on Ubuntu

Although Linux supports NTFS reading by default, write support requires additional configuration. Furthermore, issues may arise when working alongside Windows.

① Compatibility with Windows “Fast Startup”

Windows 10 and 11 enable a feature called Fast Startup by default. This can cause NTFS partitions mounted in Ubuntu to become read-only.

To avoid this, disable Fast Startup in Windows as follows:

✅ How to Disable Fast Startup
  1. Open the Windows Control Panel
  2. Click Power OptionsChoose what the power buttons do
  3. Select Change settings that are currently unavailable
  4. Uncheck Turn on fast startup and save the changes

After disabling this feature, NTFS drives will mount correctly in Ubuntu.

② NTFS Permissions (Access Control)

Linux manages permissions differently than Windows. Since NTFS was designed for Windows, standard Linux permission commands like chmod and chown do not work on NTFS partitions.

Therefore, specific mount options must be configured to grant appropriate write permissions to users. Details will be explained later in this article.

1.3 What You Will Learn from This Article

This guide covers the following topics:

Differences between NTFS-3G and NTFS3 (which one should you use?)
How to mount NTFS partitions in Ubuntu (manual and automatic)
How to configure NTFS permissions
Common NTFS-related issues and how to fix them

Even beginners can follow along, as we provide real command examples and configuration steps.

2. How to Support NTFS on Ubuntu (NTFS3 vs NTFS-3G)

There are two main methods for mounting NTFS drives on Ubuntu:

  • NTFS-3G (traditional user-space driver)
  • NTFS3 (modern kernel-integrated driver)

Understanding their differences is essential to choosing the best option for your environment.

2.1 What Is NTFS-3G?

NTFS-3G is an open-source user-space driver that enables read/write access to NTFS on Linux.

✅ Features

  • Enabled by default in Ubuntu
  • Stable read/write operations
  • Detailed permission management available
  • Uses FUSE (Filesystem in Userspace)

✅ Advantages

  • Highly stable and mature
  • Works with all Ubuntu versions
  • Easy automatic mounting via fstab

⚠️ Drawbacks

  • Slower performance because it runs in user space
  • Lacks support for some modern NTFS features

2.2 What Is NTFS3?

NTFS3 is a kernel-integrated NTFS driver introduced in Linux kernel 5.15 and later.

✅ Features

  • Integrated directly into the Linux kernel
  • Provides significantly higher performance compared to NTFS-3G
  • Runs in kernel space, enabling faster file access

✅ Advantages

  • 20–30% faster read/write performance than NTFS-3G
  • No additional packages required, as it is part of the kernel
  • Supports modern NTFS features such as compression and extended attributes

⚠️ Drawbacks

  • Available only on Ubuntu 22.04 and newer
  • Permission handling is limited (commands like chown and chmod do not fully work)
  • fstab configuration is more complex than NTFS-3G

2.3 NTFS-3G vs NTFS3 Comparison

The table below compares both NTFS mounting methods:

FeatureNTFS-3GNTFS3
PerformanceSlowerFaster
Write SupportYesYes
Permission ManagementFine-grained controlLimited
Ubuntu CompatibilityAll versions22.04 and newer
fstab Auto-mountSimplePossible, but more complex
Recommended Use CaseStability and compatibilityHigh performance

2.4 Which One Should You Choose?

The best choice depends on your Ubuntu environment and usage:

✅ Choose NTFS-3G if you:

  • Use Ubuntu 20.04 or earlier
  • Prioritize stability with a proven solution
  • Need detailed permission control using chmod or chown
  • Want a straightforward fstab auto-mount configuration

✅ Choose NTFS3 if you:

  • Use Ubuntu 22.04 or later
  • Require fast NTFS I/O performance for large data transfers
  • Prefer kernel-native functionality without extra packages

2.5 Quick Verification

You can check if NTFS3 is available in your system with the following command:

ls /lib/modules/$(uname -r)/kernel/fs/ntfs3/

If you see a file named ntfs3.ko, then NTFS3 is built into your kernel.

To check which NTFS driver is currently being used, run:

mount | grep ntfs

If the output includes ntfs3 or ntfs-3g, you can identify the active NTFS driver.

Summary

  • NTFS3 is recommended for Ubuntu 22.04 and later for high performance
  • NTFS-3G remains ideal for compatibility and detailed permission control
  • NTFS-3G offers the easiest fstab auto-mount configuration
  • You can verify your current driver using mount | grep ntfs

3. Installing NTFS-3G

To enable proper read/write access to NTFS partitions on Ubuntu, you must install the NTFS-3G package. NTFS-3G is available in Ubuntu’s official repositories, making it easy to install with just a few commands.

3.1 What Is NTFS-3G?

NTFS-3G is a driver that allows Linux to fully handle NTFS file systems.
It is not included in Ubuntu by default, so it must be installed manually.

✅ Features

  • Full read/write support for NTFS partitions
  • Available on Ubuntu 20.04 and older releases
  • Detailed permission control via mount options
  • Runs using FUSE (Filesystem in Userspace)

3.2 How to Install NTFS-3G

Follow these steps to install NTFS-3G on Ubuntu:

① Update the package list

First, update Ubuntu’s package index:

sudo apt update

② Install NTFS-3G

Run the following command to install NTFS-3G:

sudo apt install ntfs-3g

This command downloads and installs the NTFS-3G package from the Ubuntu repository.

③ Verify installation

Check whether NTFS-3G is installed correctly:

ntfs-3g --version

If version information appears, then NTFS-3G has been installed successfully.

3.3 Verifying NTFS-3G Operation

After installation, confirm that Ubuntu can detect NTFS partitions properly.

① Check connected NTFS partitions

List available storage devices:

lsblk

For more detailed information, use fdisk:

sudo fdisk -l

This lists all connected drives and partitions. Locate the NTFS partition name (e.g., /dev/sdb1).

② Test-mount the NTFS partition

Manually mount the NTFS partition and test read/write access:

  1. Create a mount point:
sudo mkdir /mnt/ntfs
  1. Mount using NTFS-3G:
sudo mount -t ntfs-3g /dev/sdb1 /mnt/ntfs
  1. Verify the mount:
df -h | grep ntfs

If the partition appears in the output, mounting was successful.

  1. Write test (create a file):
sudo touch /mnt/ntfs/testfile.txt

If no error occurs, the NTFS partition is write-enabled.

3.4 Repairing an Existing NTFS Partition

If an NTFS partition is corrupted or fails to mount, repair it using:

sudo ntfsfix /dev/sdb1

ntfsfix performs the following actions:
✅ Fixes NTFS inconsistencies
✅ Clears the NTFS journal
✅ Prepares the partition for Windows auto-repair

After running ntfsfix, try mounting the partition again.

Summary

  • NTFS-3G is easy to install from Ubuntu’s repositories
  • Verify installation using ntfs-3g --version
  • Use lsblk or fdisk -l to check devices and perform a mount test
  • ntfsfix can repair corrupted NTFS partitions

4. How to Mount NTFS Partitions

To use an NTFS partition in Ubuntu, you must mount it so the operating system can recognize the file system. This section explains two methods: manual mounting and automatic mounting via fstab.

4.1 Manually Mounting an NTFS Partition

Let’s begin by manually mounting an NTFS partition such as a USB drive or external HDD.

① Check connected devices

Run the following command to confirm that your NTFS partition is visible:

lsblk

For more detailed output, use fdisk:

sudo fdisk -l

This lists all storage devices. Identify the partition name (e.g., /dev/sdb1).

② Create a mount point

Create a directory where the NTFS partition will be mounted:

sudo mkdir -p /mnt/ntfs

/mnt/ntfs is the mount location. You may choose any directory name.

③ Mount using NTFS-3G

Mount the NTFS partition:

sudo mount -t ntfs-3g /dev/sdb1 /mnt/ntfs

Once successful, you can access the NTFS drive at /mnt/ntfs.

④ Verify the mount

Check that the NTFS partition is mounted correctly:

df -h | grep ntfs

Or use:

mount | grep ntfs

⑤ Write test

Confirm that writing to the NTFS partition is possible:

sudo touch /mnt/ntfs/testfile.txt

If no error occurs, write permissions are working.

⑥ Unmount

To safely disconnect the NTFS partition:

sudo umount /mnt/ntfs

If you receive a “device is busy” error, try:

sudo fuser -k /mnt/ntfs
sudo umount /mnt/ntfs

4.2 Automatic Mounting via /etc/fstab

Manual mounting can be tedious. You can configure automatic mounting so the NTFS partition is mounted during boot by editing /etc/fstab.

① Obtain the UUID of the NTFS partition

UUID (Universally Unique Identifier) is required for fstab:

blkid

You will see output like:

/dev/sdb1: UUID="1234-ABCD" TYPE="ntfs" PARTUUID="abcd1234-5678"

② Add the mount configuration to /etc/fstab

Edit the fstab file:

sudo nano /etc/fstab

Add the following line:

UUID=1234-ABCD /mnt/ntfs ntfs-3g defaults,uid=1000,gid=1000,umask=0002 0 0

③ Apply changes

Apply the fstab configuration:

sudo mount -a

If no errors appear, the NTFS partition will now auto-mount after reboot.

reboot

4.3 Mounting with NTFS3

With Ubuntu 22.04 and newer, you can mount NTFS using the kernel-integrated NTFS3 driver.

① Mount using NTFS3

sudo mount -t ntfs3 /dev/sdb1 /mnt/ntfs

② Using NTFS3 with fstab

To configure automatic mounting using NTFS3:

UUID=1234-ABCD /mnt/ntfs ntfs3 defaults 0 0

Apply the configuration:

sudo mount -a

Summary

  • Manual mount: mount -t ntfs-3g /dev/sdX /mnt/ntfs
  • Auto-mount via /etc/fstab
  • Use NTFS3 for mount -t ntfs3 on Ubuntu 22.04+
  • Unmount safely using umount
  • UUID-based fstab entries ensure NTFS mounts automatically on reboot

5. NTFS Permission Settings

NTFS was originally designed for Windows, so its permission model differs from Linux’s native system (e.g., ext4). Without proper configuration, you may encounter issues such as “write access denied” or “permission denied”. This section explains how to correctly configure NTFS permissions for Ubuntu.

5.1 Understanding NTFS Permissions

Linux file systems like ext4 support standard permissions for users, groups, and others. However, NTFS uses Windows ACLs (Access Control Lists), so Linux tools such as chmod and chown do not work as expected on NTFS partitions.

To control NTFS permissions in Ubuntu, you must configure appropriate mount options when mounting the partition.

5.2 Setting Permissions with NTFS-3G

When mounting an NTFS partition using NTFS-3G, you can specify uid (user ID) and gid (group ID) to grant a specific user write access.

① Check your UID and GID

Run the following command to get your user ID and group ID:

id

Example output:

uid=1000(user) gid=1000(user) groups=1000(user),27(sudo),...

In this case, use uid=1000 and gid=1000.

② Apply permission settings during manual mount

Mount the NTFS partition with user access enabled:

sudo mount -t ntfs-3g -o uid=1000,gid=1000,umask=0022 /dev/sdb1 /mnt/ntfs

③ Configure permission settings with fstab (auto-mount)

Edit /etc/fstab to automatically mount the partition with correct permissions:

sudo nano /etc/fstab

Add the following entry:

UUID=1234-ABCD /mnt/ntfs ntfs-3g defaults,uid=1000,gid=1000,umask=0022 0 0

Apply the configuration:

sudo mount -a

5.3 Setting Permissions with NTFS3

The NTFS3 kernel driver does not allow direct use of uid and gid. Instead, it supports a permissions mount option that emulates Windows ACL behavior.

① Manual mount using NTFS3

sudo mount -t ntfs3 -o rw,permissions /dev/sdb1 /mnt/ntfs

② fstab entry for NTFS3

Edit /etc/fstab:

UUID=1234-ABCD /mnt/ntfs ntfs3 defaults 0 0

Apply changes:

sudo mount -a

5.4 Using NTFS Without Root Privileges

NTFS partitions often require sudo to write, but you can allow normal users to write by configuring fmask and dmask options.

✅ Configure fmask and dmask with NTFS-3G

UUID=1234-ABCD /mnt/ntfs ntfs-3g defaults,uid=1000,gid=1000,fmask=0111,dmask=0000 0 0

5.5 Troubleshooting NTFS Permission Issues

① Cannot write to NTFS partition

Cause

  • Windows Fast Startup may be enabled

Solution

  • Disable Windows Fast Startup

② “Permission denied” error

Cause

  • Mount options missing uid or gid

Solution

  1. Specify uid and gid when mounting:
sudo mount -t ntfs-3g -o uid=1000,gid=1000 /dev/sdb1 /mnt/ntfs
  1. Update the fstab entry:
UUID=1234-ABCD /mnt/ntfs ntfs-3g defaults,uid=1000,gid=1000 0 0

Apply with:

sudo mount -a

Summary

  • NTFS uses Windows ACLs, so Linux permission tools behave differently
  • Use uid=1000,gid=1000 to allow a specific user to write
  • Set up fstab for automatic mounting with correct permissions
  • NTFS-3G offers more detailed permission control than NTFS3

6. Troubleshooting

When mounting and using NTFS partitions on Ubuntu, issues such as “cannot write,” “mount failure,” or “access denied” may occur. This section explains common problems and their solutions.

6.1 NTFS Partition Becomes Read-Only (Cannot Write)

✅ Symptoms

  • The NTFS partition mounts, but writing is not possible
  • Error message: read-only file system

❌ Causes

  • Windows Fast Startup is enabled and has locked the partition
  • NTFS filesystem inconsistencies detected
  • Incorrect NTFS-3G mount options

🔧 Solutions

✅ Method 1: Disable Windows Fast Startup
  1. Boot into Windows
  2. Open Control PanelPower Options
  3. Click Choose what the power buttons do
  4. Select Change settings that are currently unavailable
  5. Uncheck Turn on fast startup
  6. Save changes and perform a full shutdown
✅ Method 2: Fix NTFS inconsistencies
sudo ntfsfix /dev/sdb1
✅ Method 3: Mount with write options
sudo mount -t ntfs-3g -o rw /dev/sdb1 /mnt/ntfs

6.2 “Permission denied”

✅ Symptoms

  • Accessing the NTFS partition results in a “Permission denied” error

❌ Causes

  • Mount options missing uid or gid
  • Incorrect /etc/fstab configuration

🔧 Solutions

✅ Method 1: Specify uid and gid during mount
sudo mount -t ntfs-3g -o uid=1000,gid=1000 /dev/sdb1 /mnt/ntfs
✅ Method 2: Correct the fstab entry
UUID=1234-ABCD /mnt/ntfs ntfs-3g defaults,uid=1000,gid=1000 0 0

Apply:

sudo mount -a

6.3 “mount: unknown filesystem type ‘ntfs’”

✅ Symptoms

  • Error: unknown filesystem type ‘ntfs’

❌ Cause

  • NTFS-3G is not installed

🔧 Solutions

Install NTFS-3G
sudo apt update
sudo apt install ntfs-3g
Check NTFS3 availability
ls /lib/modules/$(uname -r)/kernel/fs/ntfs3/

6.4 fstab Auto-Mount Does Not Work

✅ Symptoms

  • The NTFS partition does not mount after reboot

❌ Causes

  • Incorrect UUID
  • Incorrect mount point

🔧 Solutions

Check UUID
blkid
Correct fstab entry
UUID=1234-ABCD /mnt/ntfs ntfs-3g defaults,uid=1000,gid=1000 0 0
Apply changes
sudo mount -a

6.5 “Device or resource busy” when unmounting

✅ Symptoms

  • Error shown when running umount

❌ Cause

  • The NTFS partition is in use by another process

🔧 Solutions

Method 1: Check active processes
sudo fuser -m /mnt/ntfs

Terminate processes:

sudo fuser -k /mnt/ntfs
sudo umount /mnt/ntfs
Method 2: Force unmount
sudo umount -l /mnt/ntfs

Summary

  • “Read-only” issues → Run ntfsfix, disable Fast Startup
  • “Permission denied” → Add uid=1000,gid=1000
  • Unknown filesystem type → Install NTFS-3G
  • fstab auto-mount issues → Verify UUID and mount point
  • Unmount errors → Use fuser to identify active processes

7. FAQ (Frequently Asked Questions)

This section summarizes common questions Ubuntu users have when working with NTFS partitions. Refer to this guide if you encounter issues or need clarification on configurations.

7.1 Should I use NTFS-3G or NTFS3?

A: If you are running Ubuntu 22.04 or later and prioritize performance, choose NTFS3.
If you require better compatibility, detailed permission control, or use an older Ubuntu version, choose NTFS-3G.

Comparison Table

FeatureNTFS-3GNTFS3
PerformanceSlowerFaster
Write SupportYesYes
Permission ManagementDetailedLimited
Ubuntu Version SupportAll versions22.04+
fstab Auto-mountEasyMore complex
Recommended Use CaseStability and compatibilityHigh performance

7.2 Can I format an NTFS drive in Ubuntu?

A: Yes. Ubuntu can format NTFS partitions, but all data will be erased, so make sure to back up first.

Format using command line

sudo mkfs.ntfs -f /dev/sdX

(Replace /dev/sdX with the correct device)

Format using GParted

  1. Install GParted: sudo apt install gparted
  2. Launch gparted
  3. Select the target disk
  4. Choose FormatNTFS
  5. Click Apply to complete formatting

7.3 How do I fix “Permission denied” errors?

A: This error occurs when NTFS mount options are incorrect. Try the following:

✅ Method 1: Specify uid and gid

sudo mount -t ntfs-3g -o uid=1000,gid=1000 /dev/sdb1 /mnt/ntfs

✅ Method 2: Update fstab

UUID=1234-ABCD /mnt/ntfs ntfs-3g defaults,uid=1000,gid=1000 0 0

Apply settings:

sudo mount -a

✅ Method 3: Fix Windows permissions

In Windows, open Properties → Security and grant Full Control to the appropriate user.

7.4 How do I safely remove an NTFS drive?

A: Use the correct unmount procedure to prevent data corruption.

Manual unmount

sudo umount /mnt/ntfs

If the device is busy

sudo fuser -m /mnt/ntfs
sudo fuser -k /mnt/ntfs
sudo umount /mnt/ntfs

7.5 NTFS drive used in Windows won’t mount in Ubuntu

A: Windows Fast Startup may have locked the partition.

Solution: Disable Fast Startup

  1. Open Windows Control Panel → Power Options
  2. Select Choose what the power buttons do
  3. Click Change settings that are currently unavailable
  4. Uncheck Turn on fast startup
  5. Shut down Windows completely

7.6 “Device or resource busy” appears during unmount

A: Another process is using the NTFS partition.

Solution

sudo fuser -m /mnt/ntfs
sudo fuser -k /mnt/ntfs
sudo umount /mnt/ntfs

To force unmount:

sudo umount -l /mnt/ntfs

7.7 NTFS partition does not auto-mount despite fstab configuration

A: The UUID or mount point configuration may be incorrect.

Check UUID

blkid

Fix fstab entry

UUID=1234-ABCD /mnt/ntfs ntfs-3g defaults,uid=1000,gid=1000 0 0

Ensure mount point exists

sudo mkdir -p /mnt/ntfs

Apply changes

sudo mount -a

7.8 NTFS partition reports “disk full”

A: Windows disk quota or compression may be enabled.

Solutions

  1. Run Disk Cleanup in Windows
  2. Disable compression or quota management
  3. Run chkdsk in Windows

Summary

  • Select NTFS-3G or NTFS3 based on your environment
  • Disable Windows Fast Startup if NTFS becomes read-only
  • Use uid/gid settings to fix permission errors
  • Verify UUID when configuring fstab
  • Check active processes if unmount fails
侍エンジニア塾