Synology NAS + external USB drive formatted HFS + read and write | Ryan Bosinger

Ryan Bosinger

Web App Developer, Victoria BC

Synology NAS + external USB drive formatted HFS + read and write

I have a Synology 416j NAS and an external 6TB USB 3.0 hard drive. The plan was to dump the entire contents of the NAS to the 6TB drive once and a while and then keep that drive at my office. That plan worked except that I had hoped to attach the external drive directly to the Synology NAS and transfer that way, but I wasn’t able to write. At the time I didn’t know why so I ended up mounting both the NAS and external drive to my Mac and transferred through the network. It was slower, and more cumbersome, but I figured I’d look into why I couldn’t write another day. I have since discoverd that some Synology models can only read HFS — but there’s more to it.

This article explains it all: (https://zarino.co.uk/post/write-hfs-synology-nas). It also explains how to get around it. In this post I’m going to try these steps and document myself. If you’ve landed here looking for this workaround I might recommend reading that article first. Come back here for additional details I may discover.

Disable Journaling

The first step is to disable HFS+ Journaling on the external drive. This is a safety mechanism that doesn’t work with Linux’s suppport of NFS+. The article above mentions using the Mac “Disk Utility” to disable journaling but I can’t seem to make that work on the latest version MacOS. So I’m going to use the command-line.

Note: At this point the external drive is connected to my Mac and not the NAS. Also note that journaling is a data safety feature (for dealing with power failure) so you may personally not want to disable it. I’m dealing with a back-up of a back-up of a back-up so I’m fine with it for now.

First I use mount to find the volume name/path:

> mount

/dev/disk1s1 on / (apfs, local, journaled)
devfs on /dev (devfs, local, nobrowse)
/dev/disk1s4 on /private/var/vm (apfs, local, noexec, journaled, noatime, nobrowse)
map -hosts on /net (autofs, nosuid, automounted, nobrowse)
map auto_home on /home (autofs, automounted, nobrowse)
/dev/disk1s3 on /Volumes/Recovery (apfs, local, journaled, nobrowse)
/dev/disk2s2 on /Volumes/Bozdrive (hfs, local, nodev, nosuid, journaled, noowners)

/Volumes/Bozdrive is what I’m looking for. Now I can run this command:

> sudo diskutil disableJournal /Volumes/Bozdrive

Journaling has been disabled for volume Bozdrive on disk2s2

Connect the drive back to the NAS

Now the article states that when I connect this drive back to the NAS it still won’t be available for writing, even though it technically supports it. Before I get into the workaround for that I’m just going to try it. Please stand by.

…trying it…

It didn’t work. I’m such a loser.

Mounting the drive via SSH like the article told me to

Now I have to SSH into the NAS. I login to DiskStation and enable SSH via the Settings panel. Here we go.

> ssh admin@boznas.local
# enter password

> mount

# grab my drive ID:
# /dev/sdq2 on /volumeUSB1/usbshare1-2 type hfsplus (ro,relatime,creator=,type=,umask=0,uid=1024,gid=100,nls=utf8,nodecompose,caseless)

# unmount the drive
> sudo umount -f /dev/sdq2

# mount it again
> mount -t hfsplus /dev/sdq2 /volumeUSB1/usbshare1-2

And… it worked! Yeehaw.

Thanks Zarino for your post (https://zarino.co.uk/post/write-hfs-synology-nas). I hope this helps with my copy speeds.

Cheers,
Ryan