luckylz

exFAT for DSM 5.0 & DSM 6.0

Recommended Posts

In the old period, DSM never support exFAT because it's a MicroSoft patent file system. But the memory cards for digital cameras over than 32GB (e.g. 64GB, 128GB), the default format is exFAT. If I want to copy data to DSM, that will be a bigger problem.

 

So from last year I tried to figure out how to support exFAT in DSM 5.0 and finally success. Because DSM is a kind of linux system, so just use the linux exfat packages will be done. Recently, after I tested to install DSM 6.0, also success to mount exFAT without using the $3.99 package "exFAT Access". So I'd like share my method with all.

 

Because this method is not the officially solution, use this at your own risks!

 

Install exFAT support package (tested with XPEnobot 5.2 DS3615x, Jun's loader v1.01 DSM 6.0.2 DS3615x):

1. Enabled root user via ssh:

sudo su -
synouser --setpw root your_new_root_password

2. Login as root user via ssh:

ssh root@nas_ip_address

3. Download and install the exfat-fuse package as the following code:

It seems DSM 5.0 is 32bit linux, and DSM 6.0 is 64bit version, please download different packages.

DSM 5.0

wget -P /tmp/ http://mirrors.kernel.org/ubuntu/pool/universe/f/fuse-exfat/exfat-fuse_1.2.3-1_i386.deb
dpkg -x /tmp/exfat-fuse_1.2.3-1_i386.deb /tmp/exfat-fuse/
cp /tmp/exfat-fuse/sbin/mount.exfat-fuse /usr/bin/

DSM 6.0

wget -P /tmp/ http://mirrors.kernel.org/ubuntu/pool/universe/f/fuse-exfat/exfat-fuse_1.2.3-1_amd64.deb
dpkg -x /tmp/exfat-fuse_1.2.3-1_amd64.deb /tmp/exfat-fuse/
cp /tmp/exfat-fuse/sbin/mount.exfat-fuse /usr/bin/

4. Create a Shared Folder in Control Panal, e.g. usbexfat in Volume1

5. Plug the usb device with exFAT format, and in ssh:

fdisk -l

find out the exFAT device like this:

DSM 5.0

Device     Boot Start     End Sectors  Size Id Type
/dev/sdu1         256 7823654 7823399  3.7G  7 HPFS/NTFS

DSM 6.0

Device     Boot Start     End Sectors  Size Id Type
/dev/sdu1         256 7823654 7823399  3.7G  7 HPFS/NTFS/exFAT

6. Mount the exFAT partition:

mount.exfat-fuse /dev/sdu1 /volume1/usbexfat -o nonempty

7. Then can read & write the exFAT partition in Shared Folder usbexfat.

8. Unmount the exFAT partition:

umount /volume1/usbexfat

9. Eject the usb device in Control Panel or ssh:

eject -F /dev/sdu1

Share this post


Link to post
Share on other sites

Hi Many thanks for your efforts! I am running DSM 6.1.3-15152 Update 1. I followed your guide and when I try to mount the drive, I get the following error:

"FUSE exfat 1.2.3
ERROR: exFAT file system is not found."

 

Any ideas? 

Thanks

Share this post


Link to post
Share on other sites

hi,

 

you have to create the directory before assigning it to the usb folder:

 

mkdir /volume1/usbexfat

 

chmod -w /volume1/usbexfat

 

mount.exfat-fuse /dev/sdu1 /volume1/usbexfat -o nonempty

 

 

 

can you test it ? 

Share this post


Link to post
Share on other sites

Many thanks, it works well.

 

Is there a way to make it automatically? I use the disk in USB for backup and travelling, it should be nice to auto-mount...

 

Share this post


Link to post
Share on other sites

Hi. Great tutorial, thank you. 

 

I manage to mount drive and see all content on it, but when I try to copy something of it to my NAS I get error (this function not supported). 

Any idea why this happen?

Thank for your help

Share this post


Link to post
Share on other sites

I have the same issue - cannot copy from exFat drive in console screen, but SSH works.

 

Is there a work around? or somehow install the offical exFAT Access package ? Willing to pay for the package

Share this post


Link to post
Share on other sites

Hi everyone, registered here just to share my Over Engineered workaround, but its working for me

 

Requirements

  • SSH access to the box
  • Docker (install via package center)

Not Working/Untested

  • Auto copy

Instructions / Steps

  1. Follow the guide to get the scripts installed on https://github.com/luckylz2git/exfat-synology
  2. Install Docker
  3. ssh into the box
    1. Elevate to root (su) 
      sudo su
    2. Create a docker network
      docker network create exfat_nfs_share --subnet 172.31.15.0/24 --gateway 172.31.15.1
    3. Obtain the NFS Server docker image
      docker image pull itsthenetwork/nfs-server-alpine:latest

       

    4. Run the docker container
      docker run -d --net exfat_nfs_share --ip 172.31.15.100 --name exfat_nfs --privileged -v /volume1/usbexfat/usbshare1:/nfsshare -e READ_ONLY -e SHARED_DIRECTORY=/nfsshare itsthenetwork/nfs-server-alpine:latest

       

    5. You can close the ssh session now
    6. Login to DSM
    7. Open File Station
    8. Click in Tools > Mount Remote Folder > NFS Shared Folder
    9. Fill the dialog with the follow values and click mount
      Field Value
      Folder 172.31.15.100:/
      Version v4 <= THIS IS MANDATORY
      Transport TCP
      Mount To Click Browse > usbexfat > Create folder "nfs_usbshare1" > Select "nfs_usbshare_1" > Click OK
      Mount Automatically
      on Startup
      Checked
    10. After mounting there will be a new folder,  nfs_usbshare1, under Remote Folder  on the left sidebar.

This can be used to copy files from the exfat drive into any folder in DSM via the WebUI, I believe that it might also be possible to modify the existing scripts to have a sync running

Regarding the fact that we're running another nfs server and if you're concerned about security, the container is running nfs on a isolated network visible only to the DSM host and containers running on the same network, it SHOULD NOT interfere with DSM NFS shares / Server

 

Note: The new share/mountpoint will be READ ONLY as a preventive measure

Note 2: Wrote this from the top of my head, I might have forgot one or two steps, happy to help if required

  • Thanks 1

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.