Sharing HFS+ Drives [MacOS/OS X, non-APFS] (e.g. Time Machine, Shared Folder, ..) Omnia/Apple/Mac/NAS

Hello, i could find a few topics on HFS+ mounting here and a tutorial on specific HFS+ sharing in OpenWRT but nothing gathered under one topic about a simple a HFS+ share with Omnia.

Maybe we can concentrate the necessary steps and guidelines here (specifically for HFS+) as having spent most of the past two days trying to make sense of different bits and topics i know it would help anyone interested to have it all in one place, and i definitely need this at this point.

From other topics and OpenWRT iv gathered:

  • creating a ‘Mount Point’ in ‘System’ (LuCI) with device identifiable by ssh ‘blkid’ in many ways but likely the ‘/dev/sda2’ in the case of a HFS+ drive normally formatted by Apple’s ‘DIsk Utility’.
    recommended mount point is ‘/mnt/‘drive name’’ in my case /mnt/cloud9
    suggested advanced settings are identifying the HFS+ filesystem and running a filesystem pre-check; of all indicated possible options everywhere, the following appears more complete: ‘force,rw,sync’

  • making sure to install ‘hfsfsck’, ‘kmod-fs-hfsplus’, and ‘mkhfs’ packages available in ‘System’ ‘Software’ and confirming it is mountable by ssh with ‘mount -t hfsplus /dev/sda2 /mnt/cloud9’ - where /dev/sda2 is our desired mount and ‘cloud9’ is our own drive name. this all works for me, then we can find a tutorial here on how to proceed with a ‘NTFS’ formatted drive, so here we could go onto distributing this for HFS+?

  • packages ‘netatalk’ for the Apple ‘AFP’ protocol and the ‘avahi-daemon’ for advertising the share are recommended, and the OpenWRT TimeMachine tutorial explains this all in great length, but in cases where simple guest login is sufficient it seems that it could be made simpler. in my case my OS X system connects to the Omnia and asks for account login, accepts guest login but ultimately says no cloud9 share exists. connecting via samba successfully mounts /dev/sda1 which is good to know but not what i need.

can you help make this a definitive thread, and me go back to work?:slight_smile: cheers and thanks in advance

2 Likes

Just shortly about necessary (pre-)requisities about networked TM:

  1. You don’t need HFS+ formatted disk on Omnia to make a network share for macOS device. Disk filesystem is important only for device which has directly connected disk (e.g. Synology uses standard ext4/btrfs for the same scenario). Simply use the best filesystem for device/OS which has the disk directly attached (i.e. Omnia) and don’t try to overcomplicate that with non-native filesystem.
  2. For network Time Machine Apple switched from AFP to “standard” SMB thus any guides mentioning AFP is obsolete now.

Only Avahi remains as required component (macOS requires that SMB share has to be announced as TM share by Zeroconf - Bonjour/Avahi).

EDIT: Not sure, but it seems “fruit” VFS feature is necessary in Samba (i.e. it should be version 4).

1 Like

TL;DR thank you @kmarty. thanks to you iv finally got my shared ‘cloud9’ mounted on OS X - it is not yet writeable in spite of force,rw option - would you have an idea on how to make this so?

continuing how-to,

  • in this case HFS+ is needed to be able to quickly grab the drive and use it directly off-site (saving native filesystems reminder).

  • TL;DR disabling mountd (legacy) solved mac mounting of HFS+ share.
    mountd was somehow interfering with accessing sda2 and this thread here solved this Vfat partition always mounts.

  • As pointed out by @kmarty, available online OpenWRT tutorials on this subject are at least partly outdated and easier SMB is to be used as Apple standard.

One tutorial specifically addresses mounting HFS+ shares as writeable Mount read-write HFS+ drive in OpenWRT but the given solutions (force,rw option & hfsfsck,kmod-fs-hfs, kmod-fs-hfsplus, mkhfs, and sshfs packages install) arent solving this in my case yet.

1 Like

bump: Anyone sharing HFS+ successfully with the Omnia? thanks!

Sorry it’s a long time ago I’ve setup this. I’m not gonna do a homework for you. So no step by step solution. But you can have a functional Time Machine.
I have both SAMBA/CIFS on ext4, but also Time Machine on HFS+.

TC

I still use samba 3.6. You need to solve the permissions in both variants (samba, time machine). On some versions of OS X/macOS It is better to use cifs://instead of smb://for connecting in Finder. You still need to set up a user for samba: https://doc.turris.cz/doc/en/howto/nas#advanced_shares_settings.

Time Capsule Tutorial from OpenWRT Forum worked. You just have to opt for AVAHI dbus or nodbus: https://oldwiki.archive.openwrt.org/doc/howto/timemachine. I have a dbus because I found in LUCI that dbus is already running. I do not have this line in Avahi-daemon.conf: enable-dbus = no.

I’ve just file DISK_NOT_PRESENT or DRIVE_NOT_PRESENT: https://oldwiki.archive.openwrt.org/doc/howto/timemachine#formatting_mounting_and_configuring_an_external_usb_drive. I don’t need a script but nobody want’s fill whole Omnia with copied files: https://oldwiki.archive.openwrt.org/doc/howto/usb.storage#disable_writing_when_not_mounted.

When you set it up, macOS tells you what it needs to Allow in the Firewall, if you’re using it. But you definitely need a System > Library > CoreServices > NetAuthAgent.app > Contents > MacOS > NetAuthSysAgent.

Hi @Perry appreciate your feedback. im hoping to compile a step by step here with the info i get, i am at the point where everything is working fine except that the mount is not writeable. didnt know about the cifs:// possibility, still didnt work but apparently further confirms a possible issue with guest write permissions. if you remember anything or have any intuition please share, thanks for helping. all the best

1 Like

Well TimeMachine first.
You can try connect drive to a mac. Write in Terminal chown -R youruser:nogroup /Volumes/yourdrive

Than bring it back to Turris
Follow guide „Time Capsule on OpenWRT…“
From: Mount the drive.
chown -R tmuser:timemachine /mnt/TimeMachine
Do at least init.d steps. If you have all config files finished before.