Last updated on January 31, 2021 by Dan Nanni

exFAT is a proprietary filesystem developed by Microsoft, which has been primarily used in Windows and many existing SD cards or USB drives. Compared to FAT32, exFAT offers many improvements in terms of file size limit (significant higher than FAT32’s 4GB limit), maximum disk size, maximum number of files, disk allocation performance, timestamp granularity, file name length, etc. Because of these enhancements and good compatibility with Windows and MacOS, exFAT has been used as a default filesystem for many existing high-capacity SD cards (e.g., SDXC) or USB flash drives.

On Linux, the support for exFAT has been available with a userspace implementation of exFAT filesystem, called fuse-exfat . The Linux kernel has incorporated native support for exFAT starting from version 5.4.

If you cannot mount an exFAT drive on your Linux system, this means that your kernel is lower than 5.4, and also that you do not have fuse-exfat installed.

In order to mount an exFAT drive on Linux with kernel lower than 5.4, you should install fuse-exfat on your Linux system as follows.

Install fuse-exfat on Linux

Install fuse-exfat on Ubuntu, Debian or Linux Mint

On Debian-based distributions, fuse-exfat is available as a package named exfat-fuse . Thus install exfat-fuse along with a set of exFAT utilities ( exfat-utils ):

Install fuse-exfat on CentOS 7

On CentOS 7, enable Nux Dextop and EPEL repositories, and then run:

Install fuse-exfat on CentOS 8

On CentOS 8, enable EPEL repository, and then use yum command:

Install fuse-exfat on Fedora

On Fedora, first enable rpmfusion-free repository, and then use the default package manager:

Mount an exFAT Drive on Linux

After fuse-exfat is installed, you can go ahead and mount an exFAT drive using mount command. Here the exFAT drive is mapped to /dev/sda1 , and the drive is mounted to /mnt .

Now verify that the mount is successful using mount and df commands:

Mount an exFAT Drive as Non-root User

In the above, an exFAT drive is mounted as the root, which means only the root has read/write access to the drive. If you want to mount it as a regular unprivileged user, you can specify your uid and gid at the time you mount the drive as follows.

First, identify your uid and gid with:

Then specify uid and gid with mount command:

Support Xmodulo

This website is made possible by minimal ads and your gracious donation via PayPal or credit card

Chris Hoffman is Editor-in-Chief of How-To Geek. He’s written about technology for over a decade and was a PCWorld columnist for two years. Chris has written for The New York Times and Reader’s Digest, been interviewed as a technology expert on TV stations like Miami’s NBC 6, and had his work covered by news outlets like the BBC. Since 2011, Chris has written over 2,000 articles that have been read nearly one billion times—and that’s just here at How-To Geek. Read more.

The exFAT file system is ideal for flash drives and SD cards. It’s like FAT32, but without the 4 GB file size limit. You can use exFAT drives on Linux with full read-write support, but you’ll need to install a few packages first.

Try connecting an exFAT-formatted drive without installing the required software and you’ll often see “Unable to mount” error message saying “unknown file system type: ‘exfat’.”

How to Install exFAT Support

We performed this process on Ubuntu 14.04, but it’ll be similar on other versions of Ubuntu and other Linux distributions.

First, open a Terminal window from your applications menu. On Ubuntu and similar Linux distributions, type the following command and press Enter to install the appropriate packages. You’ll have to enter your password, too.

sudo apt-get install exfat-fuse exfat-utils

On other Linux distributions, use the appropriate software-installation command or open the graphical user interface and look for the “exfat-fuse” and “exfat-utils” packages. They may be called something a bit different — search for “exfat” and you should find them if they’re available in your Linux distribution’s package repositories.

Mount exFAT Drives Automatically

After you’ve installed the appropriate software, you can just connect an exFAT drive to your computer and it will be mounted automatically. If it’s already connected, just unplug the drive and plug it back in.

Modern Linux desktop environments are smart enough to automatically mount file systems when you connect removable devices, and — once you’ve installed the required software for mounting exFAT drives — they’ll work automatically. You can use them normally without ever pulling up a terminal again, and you’ll have full read-write support.

Mount exFAT Drives From the Terminal

This should “just work” with modern desktop environments, so the below commands shouldn’t be necessary. But, if you’re using a Linux distribution or desktop environment that doesn’t automatically mount file systems for you — or if you’re just using the terminal — you may need to mount the file system in the old-fashioned way.

This can be done just like you’d mount any other partition, using the “-t exfat” switch to tell the mount command to mount a file system as exFAT.

To do this, first create a directory that will be the “mount point” for the exFAT file system. The below command creates a directory at /media/exfat:

Next, run the following command to mount the device. In the example below, the device is located at /dev/sdc1. This is the first partition (1) on the third device (c). If you have a single drive in the computer and you just connected a USB drive to it, there’s a good chance the exFAT file system will be /dev/sdb1 instead.

sudo mount -t exfat /dev/sdc1 /media/exfat

You can now access the contents of the drive at the mount point you specified. In the example above, that’s /media/exfat. To unmount the partition when you’re done with it, just run the following command, specifying the appropriate device you specified earlier. You can then remove the storage device from your computer, if you like.

Brief: This quick tutorial shows you how to enable exFAT file system support on Ubuntu and other Ubuntu-based Linux distributions. This way you won’t see any error while mounting exFAT drives on your system.

Problem mounting exFAT disk on Ubuntu

The other day, I tried to use an external USB key formatted in exFAT format that contained a file of around 10 GB in size. As soon as I plugged the USB key, my Ubuntu 16.04 throw an error complaining that it cannot mount unknown filesystem type ‘exfat’.

The exact error message was this:

Error mounting /dev/sdb1 at /media/abhishek/SHADI DATA: Command-line `mount -t “exfat” -o “uhelper=udisks2,nodev,nosuid,uid=1001,gid=1001,iocharset=utf8,namecase=0,errors=remount-ro,umask=0077” “/dev/sdb1” “/media/abhishek/SHADI DATA”‘ exited with non-zero exit status 32: mount: unknown filesystem type ‘exfat’

The reason behind this exFAT mount error

Microsoft’s favorite FAT file system is limited to files up to 4GB in size. You cannot transfer a file bigger than 4 GB in size to a FAT drive. To overcome the limitations of the FAT filesystem, Microsoft introduced exFAT file system in 2006.

As most of the Microsoft related stuff are proprietary, exFAT file format was no exception to that. Microsoft has been open sourcing few of its technologies and exFAT is one of them. The newly open sources exFAT file system will be supported in the upcoming Linux Kernel 5.4 release. You may check your Linux kernel version to make things sure.

But for Linux Kernel 5.3 and lower versions, it remains a proprietary software. Ubuntu and many other Linux distributions don’t provide the proprietary exFAT file support by default. This is the reason why you see the mount error with exFAT files.

Recommended Read:

How to Format a USB Disk as exFAT on Linux [Graphically and Command Line]

Want to create a exFAT disk in Linux? Learn how to format a USB as exFAT in Linux using both GUI and command line methods.

How to mount exFAT drive on Ubuntu Linux

The solution to this problem is simple. All you need to do is to enable exFAT support.

I am going to show the commands for Ubuntu but this should be applicable to other Ubuntu-based distributions such as Linux Mint, elementary OS etc.

Open a terminal (Ctrl+Alt+T shortcut in Ubuntu) and use the following command to enable the universe repository because this repo contains your packages. Chances are that you already have the Universe repository enabled but no harm in double checking.

Update the repository information:

Now, you can install the required packages.

Once you have installed these packages, go to file manager and click on the USB disk again to mount it. There is no need to replug the USB. It should be mounted straightaway.

If you prefer videos, I made a quick video showing the steps in action.

Did it help you?

I hope this quick tip helped you to fix the exFAT mount error for your Linux distribution. If you have any further questions, suggestions or a simple thanks, please use the comment box below.

Like what you read? Please share it with others.

As a Linux user, you probably already know that Linux uses the Ext4 journal file system, where the entire operating system is stored inside the root directory. Other operating systems and many digital devices use NTFS, Fat, Exfat, and other file systems. The problem here is that the Linux kernel does not support exFAT file system. Now, you can be fine with Ext4, Fat and NTFS, and other file formats on your Linux system. But you need to know how to handle and mount exFAT drive on your Linux system to use exFAT Pendrive or flash drives.

exFAT on Linux

ExFAT stands for Extended File Allocation Table, developed by Microsoft. The reason why exFAT file format is not supported by Linux is that the exFAT file is owned by the Microsoft file system and the file system is not yet open source.

On red hat, Fedora, Arch, and other Linux distributions, you can mount an exFAT drive by installing the exFAT utility tool on your system. This post will see how you can install the exFAT utility tool and mount an exFAT drive on your Linux system.

1. Mount an exFAT drive on Debian/Ubuntu Linux

Install the exfat-utils tool on derivatives ofUbuntuYDebianit is a simple process. The exfat-utils tool is available for Debian Linux and can be installed via the aptitude package management tool. Before installing the exFAT utility tool, make sure you have the universe repository installed on your system.

Run the following command in your terminal shell to install the tool on your Ubuntu Linux. The following command will also run on Linux Lite, Linux Mint, Deepin, and other Debian-based distributions.

When the tool installation is successful, you can now mount an exFAT drive on your system. Run the following command line given below in your terminal to mount your exFAT drive. Don’t forget to replace the drive path with your own.

After mounting the drive, you can check whether it works or not by running the lsblk Command in your terminal shell.

You can also check the file system status and mount path from the Disk utility tool on your Ubuntu system. You can then copy your device path and open your storage device directly through a web browser.

2. Mount an exFAT drive on Red Hat and Fedora linux

If you are a Fedora and Red Had based Linux user, you can install the exFAT tool on your system via DNF and YUM command. Run the following DNF commands to install the exfat and fuse-exfat tool on your Fedora system.

Red Hat Linux users should run the following RPM command in their terminal shell to get the exFAT utility tool.

You can also download the compiled RPM package of the exFAT utility tool for Red Hat and Fedora workstation. The compiled RPM package is available on the web; clickhere to download the package. When the download is complete, open it via the default software store and install it.

Now you can mount exFAT drive on your Red Hat and Fedora linux system. Executing the following command in your terminal shell would help to quickly mount the drive on your system. You can also mount the exFAT drive manually.

3. Mount an exFAT drive on Arch Linux

Mounting an exFAT drive on Arch and Arch-based Linux is quite similar to other Linux distributions. If your Arch Linux does not support an exFAT drive, you can install the exFAT utility tool on your device. Here, I am using Manjaro KDE to demonstrate the exFAT tool installation process on Arch Linux; the following command would work on other Arch based Linux systems.

When the installation is successful, you can now mount an exFAT drive on your system. Run the following command in your terminal shell to mount the exFAT drive on your Arch Linux system. Don’t forget to replace the file path and destination path with your own.

You can also find and install the exFAT tools on your Arch Linux through the software center. To install the utility tool for the Extensible file allocation table , open your software center and search for exFAT tools. You will find two items for the exFAT tool, install both of them on your system.

Last words

Different operating systems use different types of file system architecture to store the operating system and use space management. Depending on the design of the file system, you may sometimes encounter limitations in the file system architecture. As Microsoft is gradually making the exFAT file format open source, we hope that Linux will soon adapt the exFAT file system and add it to the latest kernel as a file subsystem.

I have described how you can install the exFAT utility tool and mount an exFAT drive on your Linux system in the entire post. Please share it with your friends and the Linux community if you find this post useful and informative. You can write your opinions about this post in the comment section.

exFAT presents a proprietary filesystem that Microsoft created in 2006, which was first originally used in Windows operating systems and on various SD cards and USB drives. The main purpose of the existence of the exFAT filesystem is optimization for a USB flash drive.

These days exFAT presents a standard for utilized default filesystem for numerous high-capacity SD cards or USB steak drives.

On Linux, exFAT has been supported with a special implementation called fuse-exfat. In order to mount an exFAT drive on Linux, you need to install fuse-exfat.

To view this video please enable JavaScript, and consider upgrading to a web browser that supports HTML5 video

This tutorial shows how to install fuse-exfat and mount an exFAT Drive on Linux.

NOTE: If you are currently using a Linux kernel that is lower than 5.4, you are probably going to have issues to mount an exFAT drive on your Linux system. The Linux kernel has native support for exFAT beginning from adaption 5.4. From Kernel 5.7 new exfat driver added for larger media format, recommend using exfatprogs tool to manage exFAT filesystem.

Install fuse-exfat on Debian-based distributions (Ubuntu, Debian or Linux Mint)

Fuse-exfat is available by default in Debian, Ubuntu, and Linux Mint repository. To install fuse-exfat, run the following command:

This install exfat-fuse along with utilities that is being a set of exfat-utils.

Install fuse-exfat on CentOS 7 and CentOS 8

For CentOS 7 first you need to import the official GPG key for Nux Dextop repository:

Secound, install Nux Dextop rpm repository:

And then, you also need to enable the EPEL repository:

Now install fuse-exfat on CentOS 7

Install fuse-exfat on CentOS 8

First enable EPEL repository

And then install fuse-exfat with yum on CentOS 8

Install fuse-exfat on Fedora

For Fedora you need to enable rpmfusion-free repository first:

Then install with default package manger:

Mount exFAT Drive on Linux

Once fuse-exfat is installed, mount an exFAT drive using the mount command.

exFAT drive in my case is mapped to /dev/sdb1. To mount, type:

Now verify that the mount is successful:

You can verify also with df command:

Conclusion

In this tutorial we learned how to install fuse-exfat, the special implementation of exFAT for Linux, and how easy you can mount the exFAT drive on Linux.

Mount exFAT USB from Linux. How to access and use an exFAT formatted USB Flash Drive from within Linux. Most newer Linux distributions already ship with exFAT FAT64 filesystem support via the FUSE library and related utilities. However, many older Ubuntu based distributions did not. The following solution covers the simple process of enabling exFAT detection from older Ubuntu based distributions.

exFAT (Extended Fat), a proprietary filesystem created by Microsoft, was introduced to remove the 4GB file size limitation. Making it a suitable replacement for the older Fat32 filesystem. Most modern USB flash drives arrive exFAT formatted from the factory. So it is nice to be able to use them out of the box across multiple operating systems without the need to reformat.

The error when attempting access the USB drive commonly presents as follows;

Mount exFAT USB Error: Unable to Access “New Volume”

Unable to access “volume_name”
error mounting /dev/sdx at /media/ubuntu/volume_name:
unknown filesystem type ‘exfat’

Mount exFAT USB flash drive from Ubuntu Linux

An error message like that shown above signifies the device is not being mounted. You likely just need to install the related exFAT-FUSE and Utilities to finally Mount exFAT USB and gain access to the device. The following section breaks down how to do just that.

  • exFAT from Ubuntu Universe repository
  • exFAT from PPA repository
  • exFAT from github source

Installing exFAT via the Ubuntu Universe repository

Initially tested on Ubuntu 19.10. It may or may not work on other versions.

1. Press Ctrl+Alt+T to open a terminal.
2. To gain Super User (root) access, type the following and press enter.

3. Next, to enable the universe apt repository, type

4. Then, to update and use the universal repository, type

5. Finally, to install fuse library and related utilities, type

apt install exfat-fuse exfat-utils

Now when you insert your exFat formatted USB drive, it should be detected and automounted.

Installing exFAT via PPA repository

Tested to work on Ubuntu 19.04. It may also work on other versions.

1. Press Ctrl+Alt+T to open a terminal.
2. To elevate to Super User, type the following and press enter.

3. Next, to enable the universe apt repository, type

4. To update and use the PPA repository, type

5. Finally, to install exfat-linux dkms, type

Installing exFAT via github source

As a last resort, use the following method to compile directly from source code.

1. Press Ctrl+Alt+T to open a terminal.
2. To change to root, type the following and press enter.

3. Next, to ensure git is installed, type

4. To clone the git repo, type

git clone

5. Next, to change to the cloned exfat-linux directory, type

6. Then, to build from the source, type

7. Finally, to install, type

This concludes How to Mount exFAT USB. If all went well, you should now be able to access and read exFAT formatted USB flash drives from Ubuntu Linux.

This article will clearly shows you ways to activate exFAT filing system support on Ubuntu and even any other Ubuntu-based Linux software.

The also known as “exFAT” this will be a proprietary software like Microsoft window, hence the filing system of Microsoft optimized for non-volatile storage devices like for USB drives as well even the SD cards . It had been formulated to exchange the previous versions like 32bit FAT32 filing system that can’t store files more than 4 GB.

Extended File Allocation filing system is favoured by all the newest operating software of macOS and Windows. But the Ubuntu Linux, like limit of the opposite major other Linux distributions, they all doesn’t deliver consent for the proprietary Extended File Allocation (exFAT) default within filesystem

If you’re currently using out Ubuntu as your operating system on your desktop , probability is that at some degree you’ll ended up encountering a difficulty when attempting to mount exFAT formatted to USB drive.

The issues with mounting exFAT disk on Ubuntu

But then you tried up attempting to use USB key ( as an external) which is formatted in Extended File Allocation format that is included a file which is around 10 GB . later on when you starting plugging the USB key, then Ubuntu OS thrash an error shows up complaining that it can’t mount unknown filing system category.

Error mounting /dev/sdb1 at /media/Ethan/SHADI DATA: Command-line `mount -t “exfat” -o “uhelper=udisks2,nodev,nosuid,uid=1001,gid=1001,iocharset=utf8,namecase=0,errors=remount-ro,umask=0077” “/dev/sdb1” “/media/abhishek/SHADI DATA”‘ exited with non-zero exit status 32: mount: unknown filesystem type ‘exfat’

Main reason behind the error exFAT mount

Windows version has been favourite when comes to File allocation table drive , filing system is restricted to files up to 4GB in size. You can’t send a bigger file which is more than 4 GB to a file allocation table drive. To beat the restrictions of the file allocation table filesystem, that’s why Microsoft inaugurated Extended File Allocation format system earlier 2006

Most of the Microsoft is a relevant thing to their ownership, Extended File Allocation format table file format has no exception . The Microsoft retains up upright open sourcing of limited their technologies and Extended File Allocation format is one of them, recently open sources Extended File Allocation format table filing system to be benefited within the upcoming soon, New operating system Linux Kernel 5.4 yet to be release I guess . You’ll test your Linux kernel operating software to make your things right. Free for lower versions even the Linux Kernel 5 also it remains to be ownership software. But then Ubuntu and other Linux distributions they don’t deliver the ownership of Extended File Allocation format table file supported by default. Frequently this is why it’s show up on your desktop the mount error with Extended File Allocation format table (exFAT) files.

You can try this method to mount up the exFAT drive on Ubuntu Linux

The result of it is quite straightforward . All you want to do to activate Extended File Allocation format table (exFAT) support on your desktop, watch out the commands which I’ll be sharing you out here

On your desktop, even the terminal click Ctrl+Alt+T shortcut and use the following command to enable the universe storage because this contains your packages. Possibility is that you barely remember that you’ve already got the Universe storage activate ,their will be no harm in cross checking

sudo add-apt-repository universe

Update the repository information

sudo apt update

Now, you can start installing the packages

sudo apt install exfat-fuse exfat-utils

After the installation of the packages, open up the file manager and you’ll find USB Drive later , tap and mount it, after all on you don’t need any plugging to do later On.

Brief: This short tutorial shows you how to enable exFAT file system support inUbuntuand other Linux distributions based on Ubuntu. This way you will not see any errors mounting exFAT drives on your system.

Problem mounting exFAT disk on Ubuntu

The other day I tried to use an external USB key formatted in exFAT format that contained a file about 10GB in size. As soon as I plugged in the USB key, my Ubuntu 16.04 threw an error complaining thatcannot mount unknown file system type ‘exfat’.

The exact error message was this:

Error mounting /dev/sdb1 to /media/abhishek/SHADI DATA: Command line `mount -t “exfat” -o “uhelper=udisks2,nodev,nosuid,uid=1001,gid=1001,iocharset=utf8,namecase = 0,errors=remount-ro,umask=0077” “/dev/sdb1” “/media/abhishek/SHADI DATA”’ exited with non-zero exit status 32: mount: unknown file system type ‘exfat ‘

The reason behind this exFAT mount error

microsoft favoriteFAT file systemit is limited to files up to 4 GB in size. You cannot transfer a file larger than 4 GB in size to a FAT drive. To overcome the limitations of the FAT file system, Microsoft introducedexFATfile system in 2006.

Since most things related to Microsoft are proprietary, the exFAT file format was no exception. Microsoft has opened up some of its technologies and exFAT is one of them. The new open source exFAT file system will be supported by the upcoming Linux Kernel 5.4 release. You can check your Linux kernel version to make sure.

But for Linux Kernel 5.3 and earlier, it is still proprietary software. Ubuntu and many other Linux distributions do not provide support for proprietary exFAT files by default. This is why you see the mount error with exFAT files.

How to Format a USB Drive as exFAT in Linux [Graphically and Command Line]

Do you want to create an exFAT disk on Linux? Learn how to format a USB as exFAT on Linux using both the GUI and command line methods.

How to mount an exFAT drive on Ubuntu Linux

The solution to this problem is simple. All you need to do is enable exFAT support.

I’m going to show the commands for Ubuntu, but this should be applicable to other Ubuntu based distributions, likelinux mintbasic operating system, etc.

Open a terminal (keyboard shortcut Ctrl+Alt+T on Ubuntu) and use the following command to enable the universe repository because this repository contains your packages. Most likely you already have the Universe repository enabled, but there is no harm in double checking.

Update the repository information:

Now you can install the necessary packages.

Once you have installed these packages, go to the file manager and click on the USB drive again to mount it. There is no need to reconnect the USB. It must be mounted immediately.

If you prefer videos, I made a quick video showing the steps in action.

Do I help you?

I hope this quick tip helped you to fix exFAT mount error for your Linux distribution. If you have any further questions, suggestions, or just a simple thank you, please use the comment box below.

If you’re transferring files between computers running Windows and Linux, then you can either format drives with the exFAT or NTFS file systems to make things smooth. Since Windows, OS X, Linux and now several mobile devices like the Sony Xperia Z can read exFAT, you may prefer to use it exclusively. Even though it’s a proprietary file system, it’s optimized for flash media and external drives, which is making it popular with Linux users.

While Linux offers built-in support for NTFS volumes through the ntfs-3 driver, you more than likely don’t have support for exFAT as a file system. To remedy this, open up a terminal by pushing Ctrl+Alt+T. You might also want to search for the word terminal from the Ubuntu Dash. Those with the LXDE, Xfce4, KDE or GNOME desktop environments might want to click on the Applications menu, point to System Tools and then click or tap on Terminal to start.

Method 1: Install Support for exFAT Volumes

Once you’re there, you’ll want to type sudo apt-get install exfat-fuse exfat-utils and push enter. You’ll probably be prompted for your password. You’ll be then asked to install it, so type the letter y. If you were given a warning about it being already installed, then you have the packages and don’t need to do anything else.

Assuming the installation proceeded, you’ll be back at the prompt. You can now plug an exFAT drive into your system and expect it to mount like it was any other volume. You can work with it easily as a result and won’t need to do anything else if your only goal was to read a drive created on Windows 10 or something similar.

Method 2: Formatting a Drive to exFAT

If you don’t know the name of the drive that you need to format, then type sudo fdisk -l at the command line and push enter. You’ll see a full list of devices that are attached to your system. Pay very close attention to make sure that you don’t format the wrong drive. If you have a /dev/sda1 and so on device in your list, then this is very often what you boot GNU/Linux off of. You don’t want to format this.

We plugged a pretty good sized USB drive into our system and found it showing up as /dev/sdb, which you could easily format. Needless to say, proceeding is going to wipe the data structures off your drive so please make sure to have backups before you loose anything you want. Assuming you wanted to destroy everything on it and start fresh with a new exFAT file system, type sudo wipefs -a /dev/sdb so you can start fresh. Next, you’ll want to type sudo fdisk /dev/sdb and push enter so you can make a new partition table. Please make sure you’re working with the right device file to avoid mucking anything up.

You’ll get a message about creating a new DOS table or something of the sort, which is simply safe to ignore.

Now type the letter n and push enter.

Type enter again, then again to create a single partition.

Type enter once more when asked about the first and last sectors. This will create one giant partition that takes over your whole disk, which is exactly what you want if you’re going to be plugging this into a macOS computer, a Windows 10 PC or any compatible mobile device. You might notice a problem though – the partition type is currently showing up as Linux, which you’re going to have a tough time reading on any of these kinds of machines!

Push the letter t and then push the enter key so you can change the type. You can then push 7 to the expected type. It should give you a message about HPFS/NTFS/exFAT, which is exactly what you want if you’re looking to format your external disk with exFAT on Linux.

Finally, you simply have to push the w key and you’ll be warned that “The partition table has been altered” before fdisk syncs all the data out to disk. Depending on how massive your drive is, this might take a few seconds. We were working with a disk that was 2 metric terabytes, which comes to 1.8 terabytes in binary. It still took the software less than maybe 10 seconds to shoot the relevant information out.

Today I installed a fresh copy of Ubuntu 20.04 (GNU/Linux 5.4.0-1008-raspi aarch64) on my Raspberry PI, and I know that exFAT should be supported by the 5.4 kernel, but whenever I try to mount an external drive, I get an error

And here is the output of cat /proc/filesystems

Do you need to do anything additionally to enable the support for exFAT?

6 Answers 6

Here’s something you can try. Since the GNU/Linux 5.4.0-1008-raspi aarch64 kernel doesn’t seem to have the support for exFAT built in, you can add it. From you can follow the steps to download and install the exFAT support for the kernel.

Install git if it is not installed:

You may also want the build-essential package:

Next, download the exfat-linux:

Enter the newly created folder which should be cd exfat-linux

Then run the following to install the kernel module and make it active:

Now when you run cat /proc/filesystems you should see exfat at the bottom of the list.

The new exFAT kernel driver was in Staging in 5.4 and fully released in 5.7.

I had the same issue after having the fuse drivers installed in an earlier version then upgrading to 20.04 and removing the fuse drivers. cat /proc/filesystems | grep fat does not show exfat.

I re-installed the kernel module included with 20.04 using: sudo modprobe -v exfat

cat /proc/filesystems | grep fat now shows exfat. Then to make it survive a reboot, I added exfat to /etc/modules-load.d/modules.conf

Here’s the fix I found on my amd64 Ubuntu 20.04.

The fuse support gets called first if you have exfat-fuse installed.

  1. I renamed /sbin/mount.exfat.fuse to /sbin/mount.exfat.fuse-save
  2. I renamed /sbin/mount.exfat-save to /sbin/mount.exfat-save (so if I screw up I can revert them)
  3. I checked that exfat.ko existed in /lib/modules/5.4.0-29-generic/kernel/drivers/staging/
  4. I insmod-ed the exfat.ko (which I found wasn’t necessary after the renaming of the mount commands above.
  5. I called /bin/mount to add the external drive and it mounted.
  6. I called umount to remove the mounted filesystem.
  7. I rmmod’d the exfat.ko and checked it just worked without insmod being forced.
  8. I apt removed exfat-fuse and removed the two saved renamed mount files above since they get called BEFORE the system mount command.

Hope that helps some folks. I think that were all the troubleshooting steps.

Ubuntu should put this in the release notes so others don’t have the old fuse-mount versions loading first.

I realised that Ubuntu automatically mounts my internal drives which are some exFats automatically when I try to open them. Thats good.

However, it is mounted as “root” and I want to mount it as my current user. Is there any way to make it mount not as root through some configurations or do I have to do it as a command?

2 Answers 2

Software to run exFAT

Depending on the version of Ubuntu or Ubuntu based operating system you may or may not need to install the following program packages,

See this link for more details,

Mounting exFAT

Many versions of Ubuntu and Ubuntu based operating systems will mount Microsoft file systems (FAT32, exFAT, NTFS) with read/write permissions automatically for root as well as the current user.

But some versions (of Ubuntu and Ubuntu based operating systems) will mount them with write permissions only for root (or not at all). Then you can unmount and remount (mount) the file system with commands like this,

Create mountpoint (only if you want a new mountpoint)

Unmount (only if already mounted)

Check your userID’s uid number (it is usually 1000, sometimes 1001 or 1002 . )

and use that number if you want to grab ownership (default is root ).

Example of mount command line that should give you something that is close to what you want,

exFAT (Extended File Allocation Table), a Microsoft proprietary file systems optimized for external devices like USB and SD cards is supported by most modern operating systems by default.

Windows and MacOS support exFAT out of the box. However, Ubuntu and some Linux distributions do not support the file systems, at least not out of the box. If you need to include exFAT support on Ubuntu, you will have to install additional packages.

Microsoft developed exFAT file system to replace the older 32-bit (FAT32) file system which has lots of limitations, including not supporting file larger then 4GB in size.

exFAT was designed specifically to provide support for larger devices and files that the older version of the file system couldn’t support.

This brief tutorial shows students and new users how to enable exFAT file system support on Ubuntu.Without installing packages that bring exFAT support to Ubuntu, when you mount a USB thumb or flash drive formatted with exFAT, you’ll similar message as below:

Error mounting /dev/sdb1 at /media/$USER/USB: unknown file system ‘exfat’

To resolve this error follow the steps below:

Step 1: Install Required exFAT Support Packages

Chances are you have an external device formatted with exFAT file systems. In order to mount and use exFAT devices, you must run the commands below to install FUSE exFAT, a tool that provide exFAT support on Unix-like systems, including Ubuntu.

Once the packages above have been installed, continue below to mount the drive.

Step 2: Mount exFAT External Devices

In step one, you installed packages that will allow you to mount exFAT devices. Now that the packages are installed, insert the external device that is formatted with exFAT technology.

If the device doesn’t automatically mount, reboot and try again.

Congratulations! You have learned how to use Microsoft exFAT devices on Ubuntu Linux.

You may also like the post below:

Published by Richard

In my spare time, I research topics that are interesting and worthwhile for users and students who want to try something new. I, too, am a student and my focus here is to help other students and new users get started with managing Ubuntu Linux, Windows, Content Management Systems (CMS) and others.

I try to do my best explaining the topics and detailing the instructions so that anyone can understand. These tutorials may not work in all situations and for all users. However, if you run into trouble, please ask your questions below and I or someone from the community may help you resolve. Thanks for reading and hope you come back.

1 Comment

Apart from the language being alien to a complete newbie the advice above is very simple and worked as explained. If only MS was this helpful but then, nah, let’s learn more Linux! Thanks.

Thread Tools
  • Show Printable Version
  • Email this Page…
  • Search Thread
    Display
    • Linear Mode
    • Switch to Hybrid Mode
    • Switch to Threaded Mode
  • external USB drive with exFAT not mounting (did anything be changed with a lately update?)

    Hello,
    i have a problem to mount an external USB drive with exFAT partition.
    Some weeks ago as I installed Kali 2020.2 everything was fine and I could mount my ext. HDD and
    use it.
    I think, it was after one of the last updated files during the last week, that I no longer can mount the exFAT partition of the USB HDD.
    I thought I broke something and made a complete fresh installation of Kali, but that did not help.

    The possible needed files (exfat-fuse and exfat-utils) were already installed, i tried to reinstall them, but did not help.

    Is there anything I can do?

    I wonder, because 1 or 1.5 weeks ago this problem did not exist – I used the USB drive with that exFAT pratition, plugged in – the desktop icon came up
    and i could mount it and use it.

    same issue here, worked all fine on two installed Kalis at different machines
    since after an update exfat will not be mounted anymore.
    Other distros I use (Debian aso..) still mount, so I better dont update for a while ^^

    Anyway, if you need to mount exfat maybe it will work for you so as I do.

    (at mine the usb was sdc1 – so adjust if necessary)

    Found that mount.exfat-fuse at /sbin, for me this solution works

    Hello
    I have the same problem with my USB.
    The message in /var/log/syslog is
    kali kernel: [17853.979094] exfat: disagrees about version of symbol module_layout

    uname -r is: 4.19.0-kali5-amd64
    the module directory is /lib/modules/4.19.0-kali5-amd64/kernel/fs

    so seems to be ok.
    But what?

    i found a workaround to get access to my data – could connect the external HDD to my Router and use it as a NAS.
    So i pulled the data and reformat the HDD to a format that works with my Linux installation.

    The exFAT file system is ideal for flash drives and SD cards. It’s like FAT32, but without the 4 GB file size limit. You can use exFAT drives on Linux with full read-write support, but you’ll need to install a few packages first.

    Does Ubuntu recognize exFAT?

    exFAT file system is supported by all the latest versions of Windows and macOS operating systems. Ubuntu, like most of the other major Linux distributions, doesn’t provide support for the proprietary exFAT filesystem by default.

    What OS can read exFAT?

    exFAT is compatible with more devices than NTFS, making it the system to use when copying/sharing large files between OSes. The Mac OS X has only read-only support for NTFS, but offers full read/write support for exFAT. exFAT drives can also be accessed on Linux after installing the appropriate exFAT drivers.

    Can Linux Mint read exFAT?

    But as of (about) july 2019 LinuxMInt FULLY supports Exfat at the kernel level, which means every new LinuxMInt will work with Exfat format.

    Can I use exFAT instead of FAT32?

    FAT32 is an older file system that’s not as efficient as NTFS and doesn’t support as big a feature set, but does offer greater compatibility with other operating systems. exFAT is a modern replacement for FAT32 and more devices and operating systems support it than NTFS but it’s not nearly as widespread as FAT32.

    Should I use NTFS or exFAT?

    NTFS is ideal for internal drives, while exFAT is generally ideal for flash drives. Both of them have no realistic file-size or partition-size limits. If storage devices are not compatible with NTFS file system and you don’t want to limited by FAT32, you can choose exFAT file system.

    Can Windows read exFAT?

    There are many file formats that Windows 10 can read and exFat is one of them. So if you are wondering if Windows 10 can read exFAT, the answer is Yes! … While NTFS might be readable in macOS, and HFS+ on Windows 10, you cannot write anything when it comes to cross-platform. They are Read-only.

    What are the disadvantages of exFAT?

    Importantly it is compatible with: >=Windows XP, >=Mac OSX 10.6. 5, Linux (using FUSE), Android.

    • It is not quite as widely-supported as FAT32.
    • exFAT (and the other FATs, as well) lacks a journal, and so is vulnerable to corruption when the volume is not properly unmounted or ejected, or during unexpected shutdowns.

    Is exFAT a reliable format?

    exFAT solves the file size limitation of FAT32 and manages to remain a fast and lightweight format that doesn’t bog down even basic devices with USB mass storage support. While exFAT is not quite as widely supported as FAT32, it’s still compatible with many TVs, cameras and other similar devices.

    Can Android read exFAT?

    Android supports FAT32/Ext3/Ext4 file system. Most of the the latest smartphones and tablets support exFAT file system. Usually, whether the file system is supported by a device or not depends on the devices software/hardware.

    What is exFAT vs FAT32?

    FAT32 is an older type of file system which is not as efficient as NTFS. exFAT is a modern replacement for FAT 32, and more devices and OS support it than NTFS, but i not as widespread as FAT32. … Windows use NTFS system drive and, by default, for most non-removable drives.

    Does Linux recognize NTFS?

    You don’t need a special partition to “share” files; Linux can read and write NTFS (Windows) just fine. … ext2/ext3: these native Linux filesystems have good read/write support on Windows via third-party drivers such as ext2fsd.

    What is exFAT format used for?

    exFAT is a file system used mainly for formatting flash drives such USB memory sticks and SD cards. However, it’s also widely used on all sorts of other consumer electronic devices such as digital cameras, TVs, media centers, cable TV set-top boxes and so on.

    What is the best allocation unit size for exFAT?

    The simple solution is to reformat in exFAT with an allocation unit size of 128k or less. Then everything fits since not so much wasted space of each file.

    Can I convert exFAT to NTFS without losing data?

    To ensure file system change from exFAT to NTFS format, you have to turn to a different syntax, format. To guarantee no data loss during exFAT to NTFS conversion, you’d better backup files before reformatting. Take format USB exFAT to NTFS for example. Press Windows key and R key simultaneously to open Run.

    Should I use exFAT for external hard drive?

    exFAT is a good option if you work often with Windows and Mac computers. Transferring files between the two operating systems is less of a hassle, since you don’t have to constantly back up and reformat each time. Linux is also supported, but you will need to install appropriate software to take full advantage of it.

    Situation: I need a filesystem on thumbdrives that can be used across Windows and Linux.

    Problem: By default, the common FS between Windows and Linux are just exFAT and NTFS (at least in the more updated kernels)

    Question: In terms of performance on Linux (since my base OS is Linux), which is a better FS?

    Additional information: If there are other filesystems that you think is better and satisfies the situation, I am open to hearing it.

    EDIT 14/4/2020: ExFAT is being integrated into the Linux kernel and may provide better performance in comparison to NTFS (which I have learnt since that the packages that read-write to NTFS partitions are not the fastest [granted, it is a great interface]). Bottom line is still — if you need the journal to prevent simple corruptions, go NTFS.

    EDIT 18/9/2021: NTFS is now being integrated into the Linux kernel (soon), and perhaps this will mean that NTFS performance will be much faster due to the lesser overhead than when it was a userland module.

    EDIT 15/6/2022: The NTFS3 kernel driver is officially part of the Linux Kernel as of version 5.15 (Released November 2021). Will do some testing and update this question with results.

    5 Answers 5

    Both exFAT and NTFS are Microsoft proprietary filesystem. exFAT, also called FAT64, is a very simple filesystem, practically an extension of FAT32, due to its simplicity it’s well implemented in Linux and very fast.

    But due to its easy structure, it’s easily affected by fragmentation, so performance can easily decrease with the use.

    exFAT doesn’t support journaling thus meaning it needs full checking in case of unclean shutdown.

    NTFS is slower than exFAT, especially on Linux, but it’s more resistant to fragmentation. Due to its proprietary nature it’s not as well implemented on Linux as on Windows, but from my experience it works quite well. In case of corruption, NTFS can easily be repaired under Windows (even for Linux there’s ntfsfix ) and there are lots of tools able to recover lost files.

    Personally, I prefer NTFS for its reliability. Another option is to use ext4, and mount under Windows with extfsd, ext4 is better on Linux, but the driver is not well implemented on Windows. Extfsd doesn’t fully support journaling, so there is a risk to write under Windows, but ext is easier to repair under Linux than exFAT.

    I suggest you give UDF a try. UDF is an open, vendor-neutral file system that was originally designed for use on optical disks, but can be used R/W on other drives too, including USB drives. UDF supports a maximum file system size of 2 TB (with a block size of 512 bytes), it supports long Unicode file names, and keeps record of file times.

    Windows apparently requires the disk to be partitioned, and the file system should be created with media type hd and a block size of 512:

    mkudffs –media-type=hd –blocksize=512 /dev/sdxN

    I, unlike the other answerers, use exFAT. I’m not an overly serious user, but it is a bit annoying to have to install exfat-fuse on a fresh install.

    An additional benefit of NTFS is full support in the best partition manager, gParted. Find out more at

    That’s why I’ll switch to NTFS soon for my 150GB internal Shared partition which I need to access from Linux distros and Windows 10.

    As for EXT4, Ext2Fsd is not my favourite tool, and it’s not easy to use.

    One problem with NTFS, though, is fsck . ntfsfix is nowhere near as good on NTFS, and in the end you get headaches with paid, proprietary software in Windows

    I can’t believe that no one has suggested this, but: try regular old VFAT. This works everywhere and is tried-and-true.

    It’s not super-great for performance, but neither are USB flash drives.

    Situation: I need a filesystem on thumbdrives that can be used across Windows and Linux.

    Problem: By default, the common FS between Windows and Linux are just exFAT and NTFS.

    what you need in linux is ntfs-3g from tuxera.com. It is open-source, and included with many linux distributions, however.

    Being a SLES 11.4, and RHEL 6.9 to 7.6 user, my experience with windows 10 is that something has changed in how the NTFS system is done (compared to win7) where older versions of ntfs-3g which come with your linux distro do not work with NTFS coming from win10. So you need to download and install the latest version which currently is ntfs-3g_ntfsprogs-2017.3.23, released on March 28, 2017 from their website; with that then having NTFS formatted drives coming from Windows 10 (as opposed to win7) works without issue.

    • Like was said using EXT2FSD on windows to read linux EXT file systems is not great, nor does it help if you use BTRFS or XFS. I also found it to be problematic. Definitely better/easier to make linux read NFTS rather than windows read linux filesystems .
    • Depending on what you are doing using EXFAT may be fine and is widely compatible: I am not aware of any linux distro that doesn’t support it. If you are a casual user. handful of various data files (like .mkv movie files, .doc, .xls, .ppt, .txt, .jpg) to go between windows, linux, your tv then no worries with exfat.
    • Real problem arises when you have an operating system disk that is win 7/8/10 which must be NTFS (can’t be exfat) and you cannot change that so how do you mount it as read/write in linux? Answer is latest version ntfs-3g. My tv now reads a 32gb usb formatted as NTFS.
    • I routinely boot my work oriented computer using a linux disk on sata-1 while having my win10 home SSD on sata-0; and have linux via ntfs-3g mount my win10 disk so I can read/write files when convenient; with the latest ntfs-3g I have had no problems with win10 booting afterwards provided win10 fast startup is off or unchecked otherwise a common result was the ntfs dirty flag getting set resulting in a disk check on windows boot.

    Is it possible to create and format an exFAT partition from Linux?

    6 Answers 6

    Yes, there is a project implementing exfat and the related utilities at relan/exfat.

    To format a partition, use mkexfatfs / mkfs.exfat like with most filesystems, e.g.:

    As for creating the partition in the first place, this is the same as for any other filesystem. Create a partition in your favourite partition manager. If you have an MBR partition table, set the partition type to NTFS (that is, code 7 ).

    Note, that some distributions only package the fuse module, so you may have to build it yourself.

    The mkfs.exfat solution above works if a partition already exists on a drive, like a purchased USB pen drive. Use this link if you’re starting from a bare disk:

    Install exFAT utilities first.

    On the command line, the process is as follows:

    Use the lsblk command to find out which drive your usb stick is. (for example /dev/sdx)

    Then start parted and tell it which drive you want to perform operations on:

    In parted interactive mode type:

    Now reboot. And after the reboot do:

    And in parted interactive mode type:

    When the partition is created, press q to exit parted.

    Now that the flash drive contains a partition, create an exFAT filesystem on the newly created partition (replacing the ext4 filesystem that only works on Linux):

    Personally, I skipped the “reboot” step. Instead, I pulled out the USB stick (sdb went away) and after reinserting it came up as sdd. If it wasn’t obvious, with sdx1 the “x” could be any letter of the alphabet (usually it’s a, b, c, d. ) but it depends on your particular setup.

    See guidance below for completely wiping and restoring afresh any USB pen drive from anuy Linux command line/terminal. I often do this when pen drives become corrupted and stop working. In this example, the pen drive is /dev/sdb, but yours may be different,

    This lists the disks/partitions. Remember the correct /dev/sdx name for the device. In this example it is /dev/sdb

    You may need to unmount any already mounted partitions – e.g sudo umount /dev/sdb1 , etc.

    The following wipefs command will remove any existing file systems from the drive. If you do not have wipefs installed, install it using your package manager.

    At this point, all file systems have been removed, any data on the drive is technically still recoverable. To permanently wipe all data from the drive :-

    This dd command should complete quickly. This writes zeros (the if = input file) to the of (output file), which is the device. The bs (block size) flag sets how many bytes to read/write at a time, the default is 512 bytes, but above it has being set to 1 megabyte (or 1,000,000 bytes).

    OR, for a more secure version which writes random data instead of zeros :-

    This one can take a while.

    The pen drive is completely wiped now. and all data is unrecoverable.

    If you want to now create a bootable USB drive now in Linux from an OS ISO file, use the dd command again here, e.g.

    The pen drive is now bootable, and no further action is needed if this is all you want to do.

    Or, to create a blank pen drive for storage purposes, you could put the drive into a Windows machine and format there, which might be easier/quicker, but to partition the pen drive in Linux, continue below as below

    This goes into the fdisk program. You need to now input specific commands in the following order.

    Option d – this delete partitions (this is not needed if you have used the dd command above on the device). Repeat for each partition if present.

    Option n – create a new partition, just accept all the defaults (unless you need multiple partitions of specific sizes, most people won’t)

    Option w (write changes)

    To create a vFAT partition (readable on Windows)

    Or, to create exFAT partition, use the following command instead:-

    When complete, Linux should auto-mount the device. If not, mount the device as below :-