Table of Contents
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 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):
sudo add-apt-repository universe
sudo apt update
sudo apt install exfat-fuse exfat-utils -y
Install fuse-exfat on CentOS or RHEL
exFAT packages are not available in core repositories. You can build the exFAT tools from source.
url="https://filedn.com/lOX1R8Sv7vhpEG9Q77kMbn0/scripts/redhat/exfat.sh"
sudo wget -O "/tmp/exfat.sh" -q $url \
&& sudo chmod +x "/tmp/exfat.sh" \
&& sudo sed -i 's/\r//' "/tmp/exfat.sh" \
&& sudo /bin/bash "/tmp/exfat.sh" \
&& sudo rm -f "/tmp/exfat.sh"
Install fuse-exfat on Fedora
On Fedora, first enable rpmfusion-free repository, and then use the default package manager:
sudo dnf -y install rpmfusion-free-release.noarch
sudo dnf -y install fuse-exfat
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.
sudo mount -t exfat /dev/sda1 /mnt