How to mount exFAT filesystem

I am suprised that exFAT is not supported out of the box as it is a default filesystem used on SDXC cards. You need to install a FUSE-based implementation to access data on devices using it.

This is a clear indication that you need to install a FUSE-based exFAT filesystem implementation.

$ sudo mount /dev/sdb1 /mnt/storage/
mount: unknown filesystem type 'exfat'

You can identify filesystem before trying to mount it, so you can prevent the above-mentioned error.

$ sudo blkid -o list  /dev/sdb1 
device             fs_type   label      mount point            UUID
/dev/sdb1          exfat                (not mounted)          0200-C860

Install a FUSE-based exFAT filesystem implementation (exfat-fuse package) and additional utilities (exfat-utils package).

$ sudo apt-get install exfat-fuse exfat-utils
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following NEW packages will be installed:
  exfat-fuse exfat-utils
0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
Need to get 73.0 kB of archives.
After this operation, 295 kB of additional disk space will be used.
Get:1 stretch/main amd64 exfat-fuse amd64 1.2.5-2 [28.9 kB]
Get:2 stretch/main amd64 exfat-utils amd64 1.2.5-2 [44.1 kB]
Fetched 73.0 kB in 0s (135 kB/s)  
Selecting previously unselected package exfat-fuse.
(Reading database ... 48427 files and directories currently installed.)
Preparing to unpack .../exfat-fuse_1.2.5-2_amd64.deb ...
Unpacking exfat-fuse (1.2.5-2) ...
Selecting previously unselected package exfat-utils.
Preparing to unpack .../exfat-utils_1.2.5-2_amd64.deb ...
Unpacking exfat-utils (1.2.5-2) ...
Setting up exfat-utils (1.2.5-2) ...
Setting up exfat-fuse (1.2.5-2) ...
Processing triggers for man-db ( ...

Mount exFAT filesystem.

$ sudo mount /dev/sdb1 /mnt/storage/
FUSE exfat 1.2.5
$ df -h /mnt/storage/
Filesystem      Size  Used Avail Use% Mounted on
/dev/sdb1       4.0G  736K  4.0G   1% /mnt/storage

Problem solved.

Additional utilities

These are additional utilities provided by the exfat-utils package.

Define or diplay exFAT filesystem label.

$ sudo exfatlabel /dev/sdb1 "backup"
$ sudo exfatlabel /dev/sdb1

Display details about exFAT filesystem.

$ sudo dumpexfat /dev/sdb1 
Volume label                  backup
Volume serial number      0x0200c860
FS version                       1.0
Sector size                      512
Cluster size                   32768
Sectors count                8386560
Free sectors                 8385088
Clusters count                131022
Free clusters                 131017
First sector                       0
FAT first sector                 128
FAT sectors count               1024
First cluster sector            1152
Root directory cluster             4
Volume state                  0x0000
FATs count                         1
Drive number                    0x80
Allocated space                   0%

Check exFAT filesystem.

$ sudo exfatfsck /dev/sdb1
exfatfsck 1.2.5
Checking file system on /dev/sdb1.
File system version           1.0
Sector size                 512 bytes
Cluster size                 32 KB
Volume size                4095 MB
Used space                  736 KB
Available space            4094 MB
Totally 0 directories and 1 files.
File system checking finished. No errors found.

Format exFAT filesystem.

$ sudo mkfs.exfat /dev/sdb1 
mkexfatfs 1.2.5
Creating... done.
Flushing... done.
File system created successfully.
Milosz Galazka's Picture

About Milosz Galazka

Milosz is a Linux Foundation Certified Engineer working for a successful Polish company as a system administrator and a long time supporter of Free Software Foundation and Debian operating system.