I can’t find any reference to Apple Timemachine in the Duplicati Server, so I assume this is not possible (yet ). Seems a great feature to me, running TM on a Proxmox LXC with a bind-mount to sufficient storage.
Hi @Drallas, welcome to the forum.
Not sure what you would want to do with Timemachine here? Do you want to make a backup of a Timemachine sparsebundle? Send Duplicati backups to Timemachine storage? Run Duplicati in a Time capsule?
@kenkendk Apologies for not being specific enough. What I’d like to see is the ability to set up the Duplicate Server as a Time Machine server, storing TM backups in a sparsebundle.
Sorry, still not clear to me what you want
The Time Machine software is a client-only application that mounts a sparse bundle somewhere, and then creates the backup in there.
The Duplicati Server is a client-only application that stores compressed (optionally encrypted) chunks at a remote destination.
Both applications are “backup tools” but I don’t see how they can interoperate?
“The server itself is intended to be a long-running process, usually running as a service-like process that starts automatically.”
Given this I assumed, it could be an ideal candidate for handling Timemachine too, specially when running on a Linux server or always on desktop.
In essence, the Duplicati server could act as a Timemachine (relay) target, receiving backups from macOS devices and relaying them either to local storage on the server or directly to cloud storage.
Workstation (macOS) → Duplicati Server (Timemachine Target) → Local/Cloud Storage
Combining Timemachine’s native backup capabilities with Duplicati’s storage options!
I hope this explains it better?
Yes, I understand now.
I am not that deep into the details of the Timemachine inner workings, but from what I could read and probe, it essentially mounts a sparse bundle file (like a filesystem inside a file), and then stores each file in there. Because the bundle is sparse it grows with space usage.
If Timemachine should be able to connect to Duplicati, it would require that Duplicati presents itself as a network filesystem/fileshare, and then fake a sparse bundle file.
When Timemachine reads or writes files into the fake sparse bundle file, Duplicati needs to intercept that and relay it to whatever storage.
It could perhaps technically work, but the Timemachine protocol is not designed for high-latency network links (i.e., no internet), it is meant for low-latency local networks.
On top of this, Duplicati would need to store enough information about each file to sufficiently match whatever Timemachine is asking, and do so locally, so it does not need to fetch the remote file, as that would slow the whole process to unusable speeds.
In short, I think that this is a lot of work and likely to break if Apple changes their implementation. But contributions are always welcome
I’m not the biggest fan of Apple Time Machine; aside from the system restore part. But I think that, instead of relying solely on local backup targets, enabling it to use off-site storage could be great for Mac Users.
For now, I’ll try mounting an S3 bucket via JuiceFS directly on my workstation(s) for offsite Mac backups (On infinite Storage ). Hopefully, one day, Apple will give us a proper, more modern way to back up our Macs with deduplication to their Cloud or online storage providers!