- 1 1. Introduction
- 2 2. How to Support NTFS on Ubuntu (NTFS3 vs NTFS-3G)
- 3 3. Installing NTFS-3G
- 4 4. How to Mount NTFS Partitions
- 5 5. NTFS Permission Settings
- 6 6. Troubleshooting
- 7 7. FAQ (Frequently Asked Questions)
- 7.1 7.1 Should I use NTFS-3G or NTFS3?
- 7.2 7.2 Can I format an NTFS drive in Ubuntu?
- 7.3 7.3 How do I fix “Permission denied” errors?
- 7.4 7.4 How do I safely remove an NTFS drive?
- 7.5 7.5 NTFS drive used in Windows won’t mount in Ubuntu
- 7.6 7.6 “Device or resource busy” appears during unmount
- 7.7 7.7 NTFS partition does not auto-mount despite fstab configuration
- 7.8 7.8 NTFS partition reports “disk full”
- 7.9 Summary
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
- Open the Windows Control Panel
- Click Power Options → Choose what the power buttons do
- Select Change settings that are currently unavailable
- 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
chownandchmoddo 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:
| Feature | NTFS-3G | NTFS3 |
|---|---|---|
| Performance | Slower | Faster |
| Write Support | Yes | Yes |
| Permission Management | Fine-grained control | Limited |
| Ubuntu Compatibility | All versions | 22.04 and newer |
| fstab Auto-mount | Simple | Possible, but more complex |
| Recommended Use Case | Stability and compatibility | High 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
chmodorchown - 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
fstabauto-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:
- Create a mount point:
sudo mkdir /mnt/ntfs
- Mount using NTFS-3G:
sudo mount -t ntfs-3g /dev/sdb1 /mnt/ntfs
- Verify the mount:
df -h | grep ntfs
If the partition appears in the output, mounting was successful.
- 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
lsblkorfdisk -lto check devices and perform a mount test ntfsfixcan 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 ntfs3on 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
uidorgid
Solution
- Specify
uidandgidwhen mounting:
sudo mount -t ntfs-3g -o uid=1000,gid=1000 /dev/sdb1 /mnt/ntfs
- 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=1000to 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
- Boot into Windows
- Open Control Panel → Power Options
- Click Choose what the power buttons do
- Select Change settings that are currently unavailable
- Uncheck Turn on fast startup
- 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
uidorgid - Incorrect
/etc/fstabconfiguration
🔧 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
fuserto 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
| Feature | NTFS-3G | NTFS3 |
|---|---|---|
| Performance | Slower | Faster |
| Write Support | Yes | Yes |
| Permission Management | Detailed | Limited |
| Ubuntu Version Support | All versions | 22.04+ |
| fstab Auto-mount | Easy | More complex |
| Recommended Use Case | Stability and compatibility | High 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
- Install GParted:
sudo apt install gparted - Launch
gparted - Select the target disk
- Choose Format → NTFS
- 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
- Open Windows Control Panel → Power Options
- Select Choose what the power buttons do
- Click Change settings that are currently unavailable
- Uncheck Turn on fast startup
- 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
- Run Disk Cleanup in Windows
- Disable compression or quota management
- 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
