Sie können eine Kombination dieser beiden verwenden:
FUSE-Dateisystem zum Lesen von Mac OS Sparse-Bundle Disk-Images
- https://github.com/torarnv/sparsebundlefs
Apples Time Machine sichert das schreibgeschützte Dateisystem
- https://github.com/abique/tmfs
Der erste kümmert sich um das .sparsebundle-Format und präsentiert es als dmg-Datei, die dann wie gewohnt gemountet werden kann. Die zweite kümmert sich um die von Time Machine verwendeten Verzeichnis-Hardlinks.
Apples Time Machine sichert das schreibgeschützte Dateisystem
https://github.com/abique/tmfs
Der obige Beitrag von Alexandre Bicque stellt ein Linux (?unix)-Programm bereit, das ein Time Machine-Sparsebundle öffnet, das auf einer Mac-formatierten HFS+-Festplatte oder -Festplattenpartition gespeichert ist und das Lesen der Dateien auf einem Linux-Server ermöglicht.
Die Einrichtung ist nichts für schwache Nerven. Es ist in C++ geschrieben und erfordert 3 C++-Bibliotheken - cmake
, FUSE und Boost, mit bestimmten Mindestversionen (die möglicherweise nicht die neuesten Standardversionen für meinen Ubuntu Server 10.04 sind). Außerdem müssen ein g ++ - Compiler und die oben genannten Bibliotheken gefunden und installiert werden.
Ich verwende Ubuntu Server 10.04 und bin kein großer Programmierer. Nach einiger Arbeit und Zeit habe ich es jedoch geschafft, alle notwendigen Bibliotheken zu installieren, das tmfs-Paket zu kompilieren, zu linken und zu verwenden. Es funktioniert und ermöglicht die Montage einer TimeMachine Time Capsule. JEDOCH ist es erforderlich, dass die Festplatte, auf die das Sparsebundle-Image geschrieben wird, eine HFS+-Festplatte oder -Partition ist. Es funktioniert nicht, wenn das Image auf einem NTFS- oder ext2/ext3/ext4-Dateisystem auf einem Linux-Server geschrieben wurde.
Ab Apple OS X 10.7 (Lion) funktionieren Time Machine (sparsebundle)-Images nicht mehr, wenn sie auf einer Windows (smb/Samba)-Linux-Freigabe bereitgestellt werden, und es ist notwendig, Linux/Unix Netatalk (afpd
plus avahi-daemon
)-Dienste, um Linux als Time Machine-Server zu verwenden.
Ich habe lange nach einer anderen Lösung gesucht. Ich vermute, dass ein Linux/Unix-C++-Programmierer es besser machen könnte als ich, indem er die Arbeit von Alexandre Bicque erweitert, um die Verwendung von ext4- oder ntfs-Dateisystemen zu ermöglichen. Ich versuche herauszufinden, wie es geht, aber ich habe noch einen langen Weg vor mir.
Ich denke, es wird erfordern, dass ich die Sicherung (User-Space-Dateisystem) und vielleicht den boost::filesystem
viel besser verstehe Systementwicklungshelfer, um voranzukommen.