Hi, why the encrypted backup? Is this a requirement or just "nice to have" or a "you should take it" but not a "must-have"... Answer from pat-e on reddit.com
🌐
Unraid
forums.unraid.net › home › unraid os support › general support › time machine shares / avahi
Time Machine Shares / Avahi - General Support - Unraid
November 30, 2021 - I'm fairly new to UnRAID and attempting to setup a time machine share for backing up the various macOS systems in the house. I've followed the guide to configure a new share with all the appropriate settings. However, it's not being detected by any of the macOS machines as an available time machi...
🌐
Medium
drakeevans.medium.com › setup-networked-time-machine-drive-ff53122d0d9b
Setup Networked Time Machine Drive | by Drake Evans | Medium
October 17, 2021 - Setup Networked Time Machine Drive Install samba and avahi-daemon. Samba shares the drive and avahi makes it work with apple (bonjour, etc) sudo apt-get install samba avahi-daemon Add user for time …
Discussions

HowTo make time machine backups on a samba fileserver without netatalk

They will use samba 4.7.4
In our environment we use a dedicated box only for time machine since it is possible with samba. So the normal file server is not affected and the updgrade process can be sloppy. :-)

More on reddit.com
🌐 r/homelab
76
52
March 14, 2018
HowTo make time machine backups on a samba fileserver without netatalk
Install the Avahi libraries and Avahi support will compile during the build process, then no need to manually specify the Avahi service as Samba will publish it for each Time Machine enabled share. See: http://wa.rwick.com/2018/04/08/minimal-ubuntu-time-machine-backup-service More on reddit.com
🌐 r/selfhosted
8
10
March 14, 2018
🌐
GitHub
gist.github.com › gistub › 6e9734dc1d87307ee453b97a6d9a4dac
[macOS: Set up time machine on linux] Use samba and avahi #macos #linux #setup · GitHub
[macOS: Set up time machine on linux] Use samba and avahi #macos #linux #setup · Raw · timemachine_on_linux.md · Note: change the settings marked with <=== according to your network and user settings · avahi sudo apt install avahi-daemon · samba sudo apt install samba ·
🌐
Stefan Johner
blog.jhnr.ch › 2023 › 01 › 09 › setup-apple-time-machine-network-drive-with-samba-on-ubuntu-22.04
Setup Apple Time Machine network drive with Samba on Ubuntu 22.04 - Stefan Johner
January 9, 2023 - During christmas vacations I added a Time Machine network drive for the backup of my MacBook to my Ubuntu 22.04 based home server. For this you will need samba and avahi-daemon packages. Basically Samba shares the network drive and avahi makes it work with apple devices by implementing Apple’s Zeroconf architecture (also known as “Rendezvous” or “Bonjour”). Finding the right samba configuration took me a while, but with the approach below the network drive automatically showed up in the Time Machine settings and I was able to add it as a Time Machine backup location on my MacBook running MacOS Ventura.
🌐
Reddit
reddit.com › r/homelab › howto make time machine backups on a samba fileserver without netatalk
r/homelab on Reddit: HowTo make time machine backups on a samba fileserver without netatalk
March 14, 2018 -

Hi,
I just wanted to share my experience with the new vfs_fruit extension in samba 4.8

I've got three macbooks at home and want them to have time machine backups. The current way to go is a netatalk implementation, but it is horrible slow and buggy. But with the new vfs_fruit extension in samba 4.8 it works awesomely fine.

This copy+paste howto is just to get it running with some lazy workarounds and a little bit of documentation. Tested with Ubuntu 16.04

Some notes:

  • Samba 4.8 will not be in Ubuntu 18.04.

  • Currently Samba 4.8 is available as RC.

  • Release is currently planned for tomorrow, maybe (https://wiki.samba.org/index.php/Release_Planning_for_Samba_4.8)

  • Ensure you create encrypted backups

  • Tested with high sierra. Feel free to test it with other osx versions.

  • You can even make a full restore when you got a new macbook.

  • Don't blame me for anything. I am not even good at this stuff.

  • Feel free to message me with more input

  • I have very limited time to use reddit, so please be patient when I don't answer directly

Avahia:

apt -y install avahi-daemon

cat <<< _EOF_ > /etc/avahi/services/timemachine.service
<?xml version="1.0" standalone='no'?>
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
 <name replace-wildcards="yes">%h</name>
 <service>
   <type>_smb._tcp</type>
   <port>445</port>
 </service>
 <service>
   <type>_device-info._tcp</type>
   <port>0</port>
   <txt-record>model=RackMac</txt-record>
 </service>
 <service>
   <type>_adisk._tcp</type>
   <txt-record>sys=waMa=0,adVF=0x100</txt-record>
   <txt-record>dk0=adVN=TimeMachine Home,adVF=0x82</txt-record>
 </service>
</service-group>
_EOF_

There is the line <txt-record>dk0=adVN=TimeMachine Home,adVF=0x82</txt-record> where TimeMachine Home is the name your mac will display (https://imgur.com/a/iezWt).

Samba 4.8

prerequisites

apt -y install install acl attr autoconf bind9utils bison build-essential \
  debhelper dnsutils docbook-xml docbook-xsl flex gdb libjansson-dev krb5-user \
  libacl1-dev libaio-dev libarchive-dev libattr1-dev libblkid-dev libbsd-dev \
  libcap-dev libcups2-dev libgnutls28-dev libgpgme11-dev libjson-perl \
  libldap2-dev libncurses5-dev libpam0g-dev libparse-yapp-perl \
  libpopt-dev libreadline-dev nettle-dev perl perl-modules pkg-config \
  python-all-dev python-crypto python-dbg python-dev python-dnspython \
  python3-dnspython python-gpgme python3-gpgme python-markdown python3-markdown \
  python3-dev xsltproc zlib1g-dev

compiling

Get the current RC here: https://download.samba.org/pub/samba/rc/

wget https://download.samba.org/pub/samba/rc/samba-4.8.0rc4.tar.gz; tar -xzf samba-4.8.0rc4.tar.gz; cd samba-4.8.0rc4

./configure --with-systemd --systemd-install-services --with-systemddir=/lib/systemd/system \
  --sysconfdir=/etc/samba --jobs=`nproc --all`
make --jobs=`nproc --all` && make install

This will install samba to /usr/local/samba, puts configs under /etc/samba and installs the systemd services to /lib/systemd/system and it will use all your cpu cores for compiling.

Adjusting start scipt

sed -i 's/Type=notify/Type=simple/g' /lib/systemd/system/smb.service

Fixed some issues while starting the service.

configure samba

/etc/samba/smb.conf

[global]
# Basic Samba configuration
server role = standalone server
passdb backend = tdbsam
obey pam restrictions = yes
security = user
printcap name = /dev/null
load printers = no
socket options = TCP_NODELAY IPTOS_LOWDELAY SO_RCVBUF=524288 SO_SNDBUF=524288
server string = Samba Server %v
map to guest = bad user
dns proxy = no
wide links = yes
follow symlinks = yes
unix extensions = no
acl allow execute always = yes
log file = /var/log/samba/%m.log
max log size = 1000

# Special configuration for Apple's Time Machine
fruit:model = MacPro
fruit:advertise_fullsync = true
fruit:aapl = yes

## Definde your shares here
[TimeMachine Home]
path = /srv/backup/timemachine/%U
valid users = %U
writable = yes
durable handles = yes
kernel oplocks = no
kernel share modes = no
posix locking = no
vfs objects = catia fruit streams_xattr
ea support = yes
browseable = yes
read only = No
inherit acls = yes
fruit:time machine = yes

Backups will be stores under /srv/backup/timemachine/$USERNAME

You will need to create the folders and the user:

mkdir -p /srv/backup/timemachine/

/usr/local/samba/bin/smbpasswd -a $USERNAME

mkdir -m 700 /srv/backup/timemachine/$USERNAME; chown $USERNAME /srv/backup/timemachine/$USERNAME

Quotas

To set quotas you need to put a .com.apple.TimeMachine.quota.plist file:

cat <<< _EOF_ > /srv/backup/timemachine/$USERNAME/.com.apple.TimeMachine.quota.plist
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
  <key>GlobalQuota</key>
    <integer>300000000000</integer>
  </dict>
</plist>
_EOF_

To calculate the interger use MB * 1000000 (300GB in this example).

starting

systemctl enable smb.service; systemctl start smb.service

done

Edit1) Some input from u/g-a-c

🌐
Edrandall
edrandall.uk › posts › time-machine-docker
Time Machine Backups with Docker: A Simple Setup | Ed Randall
April 16, 2024 - This post explains how I run samba and avahi-daemon inside a docker container to act as a time-machine server for all the Mac computers on my home network. Dockerfile I used ubuntu:focal as a base image and created the following Dockerfile: FROM ubuntu:focal #Install samba and avahi-daemon inside the image RUN apt update && apt install samba avahi-daemon -y #Expose the ports which are needed for samba and avahi-daemon EXPOSE 137/udp 138/udp 139 445 5353/udp #Copy config files into the image COPY smb.
🌐
Mudge
mudge.name › 2019 › 11 › 12 › using-a-raspberry-pi-for-time-machine
Using a Raspberry Pi for Time Machine — Paul Mucur
November 12, 2019 - That we have an SMB share point available for Time Machine. As a bonus, we’re also going to advertise our Raspberry Pi as a now-defunct AirPort Time Capsule so that it appears as such in the Finder. <?xml version="1.0" standalone='no'?><!--*-nxml-*--> <!DOCTYPE service-group SYSTEM "avahi-service.dtd"> <service-group> <name replace-wildcards="yes">%h</name> <service> <type>_smb._tcp</type> <port>445</port> </service> <service> <type>_device-info._tcp</type> <port>9</port> <txt-record>model=TimeCapsule8,119</txt-record> </service> <service> <type>_adisk._tcp</type> <port>9</port> <txt-record>dk0=adVN=backups,adVF=0x82</txt-record> <txt-record>sys=adVF=0x100</txt-record> </service> </service-group>
Find elsewhere
🌐
Reddit
reddit.com › r/selfhosted › howto make time machine backups on a samba fileserver without netatalk
r/selfhosted on Reddit: HowTo make time machine backups on a samba fileserver without netatalk
March 14, 2018 -

Hi,
I just wanted to share my experience with the new vfs_fruit extension in samba 4.8

I've got three macbooks at home and want them to have time machine backups. The current way to go is a netatalk implementation, but it is horrible slow and buggy. But with the new vfs_fruit extension in samba 4.8 it works awesomely fine.

This copy+paste howto is just to get it running with some lazy workarounds and a little bit of documentation. Tested with Ubuntu 16.04

Some notes:

  • Samba 4.8 will not be in Ubuntu 18.04.

  • Currently Samba 4.8 is available as RC.

  • Release is currently planned for tomorrow, maybe (https://wiki.samba.org/index.php/Release_Planning_for_Samba_4.8)

  • Ensure you create encrypted backups

  • Tested with high sierra. Feel free to test it with other osx versions.

  • You can even make a full restore when you got a new macbook.

  • Don't blame me for anything. I am not even good at this stuff.

  • Feel free to message me with more input

  • I have very limited time to use reddit, so please be patient when I don't answer directly

Avahia:

apt -y install avahi-daemon

cat <<< _EOF_ > /etc/avahi/services/timemachine.service
<?xml version="1.0" standalone='no'?>
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
 <name replace-wildcards="yes">%h</name>
 <service>
   <type>_smb._tcp</type>
   <port>445</port>
 </service>
 <service>
   <type>_device-info._tcp</type>
   <port>0</port>
   <txt-record>model=RackMac</txt-record>
 </service>
 <service>
   <type>_adisk._tcp</type>
   <txt-record>sys=waMa=0,adVF=0x100</txt-record>
   <txt-record>dk0=adVN=TimeMachine Home,adVF=0x82</txt-record>
 </service>
</service-group>
_EOF_

There is the line <txt-record>dk0=adVN=TimeMachine Home,adVF=0x82</txt-record> where TimeMachine Home is the name your mac will display (https://imgur.com/a/iezWt).

Samba 4.8

prerequisites

apt -y install install acl attr autoconf bind9utils bison build-essential \
  debhelper dnsutils docbook-xml docbook-xsl flex gdb libjansson-dev krb5-user \
  libacl1-dev libaio-dev libarchive-dev libattr1-dev libblkid-dev libbsd-dev \
  libcap-dev libcups2-dev libgnutls28-dev libgpgme11-dev libjson-perl \
  libldap2-dev libncurses5-dev libpam0g-dev libparse-yapp-perl \
  libpopt-dev libreadline-dev nettle-dev perl perl-modules pkg-config \
  python-all-dev python-crypto python-dbg python-dev python-dnspython \
  python3-dnspython python-gpgme python3-gpgme python-markdown python3-markdown \
  python3-dev xsltproc zlib1g-dev

compiling

Get the current RC here: https://download.samba.org/pub/samba/rc/

wget https://download.samba.org/pub/samba/rc/samba-4.8.0rc4.tar.gz; tar -xzf samba-4.8.0rc4.tar.gz; cd samba-4.8.0rc4

./configure --with-systemd --systemd-install-services --with-systemddir=/lib/systemd/system \
  --sysconfdir=/etc/samba --jobs=`nproc --all`
make --jobs=`nproc --all` && make install

This will install samba to /usr/local/samba, puts configs under /etc/samba and installs the systemd services to /lib/systemd/system and it will use all your cpu cores for compiling.

Adjusting start scipt

sed -i 's/Type=notify/Type=simple/g' /lib/systemd/system/smb.service

Fixed some issues while starting the service.

configure samba

/etc/samba/smb.conf

[global]
# Basic Samba configuration
server role = standalone server
passdb backend = tdbsam
obey pam restrictions = yes
security = user
printcap name = /dev/null
load printers = no
socket options = TCP_NODELAY IPTOS_LOWDELAY SO_RCVBUF=524288 SO_SNDBUF=524288
server string = Samba Server %v
map to guest = bad user
dns proxy = no
wide links = yes
follow symlinks = yes
unix extensions = no
acl allow execute always = yes
log file = /var/log/samba/%m.log
max log size = 1000

# Special configuration for Apple's Time Machine
fruit:model = MacPro
fruit:advertise_fullsync = true
fruit:aapl = yes

## Definde your shares here
[TimeMachine Home]
path = /srv/backup/timemachine/%U
valid users = %U
writable = yes
durable handles = yes
kernel oplocks = no
kernel share modes = no
posix locking = no
vfs objects = catia fruit streams_xattr
ea support = yes
browseable = yes
read only = No
inherit acls = yes
fruit:time machine = yes

Backups will be stores under /srv/backup/timemachine/$USERNAME

You will need to create the folders and the user:

mkdir -p /srv/backup/timemachine/

/usr/local/samba/bin/smbpasswd -a $USERNAME

mkdir -m 700 /srv/backup/timemachine/$USERNAME; chown $USERNAME /srv/backup/timemachine/$USERNAME

Quotas

To set quotas you need to put a .com.apple.TimeMachine.quota.plist file:

cat <<< _EOF_ > /srv/backup/timemachine/$USERNAME/.com.apple.TimeMachine.quota.plist
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
  <key>GlobalQuota</key>
    <integer>300000000000</integer>
  </dict>
</plist>
_EOF_

To calculate the interger use MB * 1000000 (300GB in this example).

starting

systemctl enable smb.service; systemctl start smb.service

done

Edit1) Some input from u/g-a-c

🌐
Son of Sun Tzu blog
blog.sonofsuntzu.org.uk › posts › how to configure a samba server to accept time machine backups
How to configure a Samba server to accept Time Machine backups | Son of Sun Tzu blog
July 20, 2025 - [global] host msdfs = no mdns name = mdns multicast dns register = yes name resolve order = bcast host lmhosts wins Whole set of options to make the time machine share work fruit:aapl = yes fruit:advertise_fullsync = true fruit:metadata = stream fruit:veto_appledouble = no fruit:nfs_aces = no fruit:wipe_intentionally_left_blank_rfork = yes fruit:delete_empty_adfiles = yes map to guest = Bad Password guest account = <account with permission to write to the share on the server> guest ok = yes [share-name] path = <directory you're sharing, double check its permissions> public = yes browseable = yes writeable = yes fruit:time machine = yes vfs objects = catia fruit streams_xattr create mask = 0600 directory mask = 0700 force group = <local user with access to path> force user = <local user with access to path> valid users = <local user with access to path> avahi-daemon.conf ·
🌐
GitHub
github.com › odarriba › docker-timemachine › tree › master › avahi
docker-timemachine/avahi at master · odarriba/docker-timemachine
A docker container that compiles the lastest Netatalk to run a Time Machine server. - docker-timemachine/avahi at master · odarriba/docker-timemachine
Author   odarriba
🌐
R-Digital
reifschneider.digital › blog › ultimate-guide-samba-time-machine-backups
Ultimate Guide to Configuring Samba for Time Machine Backups on Debian Servers | Blog | R-Digital
November 1, 2024 - But that depends on the system. On my older Debian 11 host I need avahi, so that the TimeMachine shares are displayed correctly in TimeMachine. But avahi leads to connection problems there when I want to connect to my shares in the Finder. That's only reliably possible with Cmd + K, because using the network area doesn't connect the share correctly all the time.
🌐
Sterba
sterba.dev › posts › raspi-as-time-capsule
Transform your Raspberry Pi into a Apple Time Capsule
November 23, 2021 - You can also add quotas to this ... backup server and the SMB service as an Apple Time Capsule. Avahi is a system which provides service discovery on a local network via the mDNS/DNS-SD protocol suite....
🌐
SmallNetBuilder
smallnetbuilder.com › home › how to make a windows time machine server: part 2
How To Make A Windows Time Machine Server: Part 2 - SmallNetBuilder
October 21, 2022 - Avahi is the open source implementation of what Apple calls Bonjour. It means that your new DIY Time Capsule will be advertised on your network and your Mac will know about it.
Top answer
1 of 2
2

I encountered the same issue, having my Mac refusing to create the initial sparse bundle files on my samba server. After incorporating the hints on https://wiki.samba.org/index.php/Configure_Samba_to_Work_Better_with_Mac_OS_X it finally started the backup.

Although I can only assume, the following comment caught my attention: How to store OS X metadata: fruit:metadata = stream

You could try switching from netatalk to stream. Maybe using netatalk prevents time machine from storing its metadata.

Good luck, Kay

2 of 2
2

Thought I'd post some additional info for people. My currently working smb.conf is as follows. Adding fruit:metadata = stream worked for only a short while for me, so below are the results of hours of additional testing.

Note this is on Debian 10 (Buster) so things like password change command will be different on other distributions. Also note that the order of modules in the setting vfs objects = catia fruit streams_xattr is significant and important.

# NOTE: Whenever you modify this file you should run the command
# "testparm" to check that you have not made any basic syntactic 
# errors. 
[global]
   workgroup = WORKGROUP
   min protocol = SMB2


   log file = /var/log/samba/log.%m
   max log size = 5000
   logging = file
   security = USER
   
   panic action = /usr/share/samba/panic-action %d

   server role = standalone server
   obey pam restrictions = yes
   unix password sync = yes

   passwd program = /usr/bin/passwd %u
   passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
   pam password change = yes
   username map = /etc/samba/users.map
   map to guest = bad user
   guest account = XXXYOURGUESTACCOUNT

# Time Machine settings
   vfs objects = catia fruit streams_xattr
   fruit:model = RackMac
   fruit:advertise_fullsync = true
   fruit:metadata = stream
   fruit:veto_appledouble = no
#default is yes, not necessary to specify fruit:posix_rename = no
#default is yes, not necessary to specify fruit:zero_file_id = yes
   fruit:wipe_intentionally_left_blank_rfork = yes
   fruit:delete_empty_adfiles = yes
   ea support = yes


#default is yes, not necessary to specify   fruit:aapl = yes

   # Make share visible to Windows
#Disabled for a Mac-Only network
#   lanman auth = no
#   ntlm auth = yes
#   wins support = yes
#   local master = yes
#   preferred master = yes

   # Allow symlinks
#   follow symlinks = yes
#   wide links = yes
#   unix extensions = no

#======================= Share Definitions =======================
[SHARED DRIVE]

   path = /PATH/TO/YOUR/SHARED/FOLDER
   valid users = @YOURGUESTUSERGROUP
   writable = yes
   durable handles = yes
   kernel oplocks = no
   kernel share modes = no
   posix locking = no
   vfs objects = catia fruit streams_xattr
#default is yes, not necessary to specify   ea support = yes
#default is yes, not necessary to specify browseable = yes
   read only = no
   inherit acls = yes
   fruit:time machine = yes
   fruit:metadata = stream
   fruit:locking = netatalk
   guest ok = yes

[Time Machine]
   path = /PATH/TO/YOUR/SHARED/FOLDER
   valid users = @YOURGUESTUSERGROUP
   writable = yes
   durable handles = yes
   kernel oplocks = no
   kernel share modes = no
   posix locking = no
   vfs objects = catia fruit streams_xattr
#default is yes, not necessary to specify   ea support = yes
   browseable = no
   read only = no
   inherit acls = yes
   fruit:time machine = yes
   fruit:metadata = stream
   fruit:locking = netatalk
   fruit:time machine max size = 1.9T

**EDIT: Turns out Samba 4.9 on Debian 10 DOES automatically advertise TimeMachine destinations, as long as there are no Samba-related advertisements in /etc/avahi/services. My system wasn't advertising the TimeMachine share because I also had a manual smb share setup for avahi. When I disabled BOTH, Samba properly advertised both.

*** OLD SEE ABOVE Also note that The Samba build with Debian 10 currently does not have built-in support for advertising Time Machine shares. Normally specifying fruit:time machine = yes will trigger Samba to advertise a Time Machine destination via Avahi, but this specific support is not built with the Samba included in Debian 10. You'll need to configure a .service definition in /etc/avahi/services/. I created time_machine_advert.service in that folder. You'll need to restart avahi to be sure it gets applied with sudo systemctl restart avahi. I have two Time Machine destinations. Multiples can be advertised within a single file by simply duplicating the txt record and incrementing dkX, i.e. dk1, dk2 etc.

<?xml version="1.0" standalone='no'?><!--*-nxml-*-->
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
 <name replace-wildcards="yes">%h</name>
 <service>
   <type>_adisk._tcp</type>
   <txt-record>sys=waMa=0,adVF=0x100</txt-record>
   <txt-record>dk0=adVN=SAMBA SHARE NAME EXACTLY,adVF=0x82</txt-record>
   <txt-record>dk1=adVN=SAMBA SHARE NAME #2 EXACTLY,adVF=0x82</txt-record>
 </service>
  <service>
    <type>_smb._tcp</type>
    <port>445</port>
  </service>
</service-group>

There are some additional useful sites for Samba configuration with regards to Time Machine here:

Samba team's official guide to Time Machine configuration, although this alone didn't get a working config for me: https://wiki.samba.org/index.php/Configure_Samba_to_Work_Better_with_Mac_OS_X

smb.conf reference: https://www.samba.org/samba/docs/current/man-html/smb.conf.5.html

vfs_fruit (the Apple compatibility module for Samba) reference https://www.samba.org/samba/docs/current/man-html/vfs_fruit.8.html

Ken Murphy's smb.conf on GitHub that finally pushed me over the edge and got my setup working: https://github.com/KenMurphy/SambaConfigs/blob/master/smb.conf

A general Samba on Debian guide: https://www.antoneliasson.se/journal/time-machine-compatible-samba-on-debian-buster/

🌐
OpenWrt Forum
forum.archive.openwrt.org › viewtopic.php
Topic: Avahi XML file for Time Machine
This section of the XML file is required for the disk to show up under the "Select Disk" dialog in the Time Machine Preferences pane. The MAC address is pretty straightforward, as is "TimeMachine" in the second line (which refers to the name of the volume defined in the netatalk afpd.conf and AppleVolumes.default files).
🌐
Bootc
bootc.net › archives › 2010 › 11 › 07 › apple-time-machine-and-netatalk
Apple Time Machine and Netatalk | Chris's Digital Realm
You have to use AFP for Time Machine to be “supported”. It works with Samba but only in its unsupported configuration, and I ran into many issues when I used Samba – especially with backups becoming corrupted. I can only really recommend the use of Netatalk 2.1 or above for Time Machine. You will also require avahi-daemon to be installed and running, as mDNS / Bonjour is required for the volumes to show up in the Time Machine preference pane.
🌐
Reddit
reddit.com › r/homelab › samba+avahi apple time capsule clone - opening share from finder?
r/homelab on Reddit: Samba+Avahi Apple Time Capsule clone - opening share from Finder?
July 8, 2024 -

I've just set up a clone of an Apple Time Capsule device via the well documented method of setting up a Samba share and advertising it with mDNS.

For the backup itself, it's working just fine. However, I have the icon appearing in the Finder, and it would be nice if double-clicking it could take me to the underlying Samba share. However, I'm not sure if this is possible.

In my case I'm using dnsd through systemd-resolved, so I have:

[Service]
Name=Time Capsule
Type=_adisk._tcp
TxtText=dk0=adVN=Time Capsule,adVF=0x82 sys=waMa=0,adVF=0x100

and also

[Service]
Name={{ services.timeMachine.displayName }}
Type=_device-info._tcp
TxtText=model=TimeCapsule8,119

Samba is set up as standard on port 445. So the question is whether I can customise at least the _adisk._tcp to point to the underlying Samba share for neatness.

Is it possible? If so, how?

Thanks in advance

🌐
Sam Hewitt
samuelhewitt.com › blog › 2015-09-12-debian-linux-server-mac-os-time-machine-backups-how-to
Using a Linux Server for Time Machine Backups — Sam Hewitt
September 12, 2015 - [TimeMachine] # is this machine a time machine? time machine = yes # directory for time machine data on server path = /data/timemachine # the max size of the data folder (in Mb) vol size limit = 980000 # users with access to time machine valid users = timemachine · Next, using the venerable systemd, you can enable the netatalk and avahi-daemon services:
🌐
GitHub
gist.github.com › takumaw › 990919f00e619087fca13f981ae6fc68
TimeMachine using Samba and Avahi · GitHub
TimeMachine using Samba and Avahi. GitHub Gist: instantly share code, notes, and snippets.