Files
sparsebundlefs-mirror/README.md
Tor Arne Vestbø 516160b5ad Fix spelling
2012-10-02 01:44:51 +02:00

79 lines
3.1 KiB
Markdown

sparsebundlefs
================
FUSE filesystem for reading Mac OS sparse-bundle disk images.
Mac OS X v10.5 (Leopard) introduced the concept of sparse-bundle disk images, where the data is
stored as a collection of small, fixed-size *band*-files instead of as a single monolithic file. This
allows for more efficient backups of the disk image, as only the changed bands need to be
stored.
One common source of sparse-bundles is Mac OS' backup utility, *Time Machine*, which stores
the backup data within a sparse-bundle image on the chosen backup volume.
This software package implements a FUSE virtual filesystem for read-only access to the sparse-bundle, as if it was a single monolithic image.
Installation
------------
Clone the project from GitHub:
git clone git://github.com/torarnv/sparsebundlefs.git
Or download the latest tar-ball:
curl -L https://github.com/torarnv/sparsebundlefs/tarball/master | tar xvz
Install dependencies:
- [OSXFUSE][osxfuse] on *Mac OS X*
- `apt get install libfuse-dev libfuse2 fuse-utils` on Debian-based *GNU/Linux* distros
- Or install the latest FUSE manually from [source][fuse]
Compile:
make
**Note:** If your FUSE installation is in a non-default location you may have to
export `PKG_CONFIG_PATH` before compiling.
Usage
-----
To mount a `.sparsebundle` disk image, execute the following command:
sparsebundlefs [-o options] sparsebundle mountpoint
For example:
sparsebundlefs ~/MyDiskImage.sparsebundle /tmp/my-disk-image
This will give you a directory at the mount point with a single `sparsebundle.dmg` file.
You may then proceed to mount the `.dmg` file using regular means, *eg.*:
mount -o loop -t hfsplus /tmp/my-disk-image/sparsebundle.dmg /mnt/my-disk
This will give you read-only access to the content of the sparse-bundle disk image.
### Reading Time Machine backups
Time Machine builds on a feature of the HFS+ filesystem called *directory hard-links*. This allows multiple snapshots of the backup set to reference the same data, without having to maintain hard-links for every file in the backup set.
Unfortunately this feature is not yet part of `mount.hfsplus`, so when navigating the mounted Time Machine image these directory hard-links will show up as empty files instead of directories. The real data still lives inside a directory named `.HFS+ Private Directory Data\r` at the root of the volume, but making the connection from a a zero-sized file to its corresponding directory inside the secret data location is a bit cumbersome.
Luckily there's another FUSE filesystem available, [tmfs][tmfs], which will allow you to re-mount an existing HFS+ volume and then navigate it as if the directory hard-links were regular directories. The syntax is similar to sparsebundlefs:
tmfs /mnt/tm-hfs-image /mnt/tm-root
License
-------
This software is licensed under the [BSD two-clause "simplified" license][bsd].
[osxfuse]: http://osxfuse.github.com/ "Fuse for OSX"
[fuse]: http://fuse.sourceforge.net/ "FUSE"
[bsd]: http://opensource.org/licenses/BSD-2-Clause "BSD two-clause license"
[tmfs]: https://github.com/abique/tmfs "Time Machine File System"