7

I have an external hard drive where my Time Machine backups are located. My OS is El Capitan.

I would like to permanently archive this entire TM backup and move it to another hard drive, and it would be best to archive these backups to a compressed disk image.

I have tried to archive the Backups.backupdb folder with SuperDuper! and Carbon Copy Cloner. CCC copies files to DMG but Backups.backupdb is only 161 GB in size, and CCC has supposedly copied 190 GB, which has me thinking something is wrong.

I have not yet tried to create a ZIP archive or a DMG (using Disk Utility).

How can I create a DMG to archive Backups.backupdb to another hard drive?

More info:

Thanks for help.

I tried to make DMG using Disk Utility.

After 6 hours, Disk Utility got error: Operation failed with status 2.

Creating "TM BU" dialog, "hide details" window was empty during 6 hours.

I used read/write format because i'm planning to index DMG with Spotlight after DMG is created if that's possible.

sudo mdutil -i on '/Volumes/TM BU' user name "name" password "password" with administrator privileges

Then if possible convert read/write DMG to compressed.

1
  • 2
    Time Machine backups are differential, it stores several versions of every file that changes during the backup retention period. Do you want to archive the entire available backup structure with all the changes or just the latest full copy?
    – Nikita
    Apr 19, 2016 at 14:24

5 Answers 5

3

I would recommend using hdiutil to image the disk.

First, run diskutil list in the Terminal to see the identifiers for each disk. You'll want to note the identifier for your Time Machine drive (format is /dev/disk#).

Then, in the Terminal, use:

/usr/bin/hdiutil create -srcdevice /your/disk/identifier -format UDZO name.dmg

Where /your/disk/identifier is the /dev/disk# corresponding to your Time Machine drive, and name.dmg is the name of the output DMG. The UDZO format is the default compressed disk image format. The disk image will be a replica of the entire USB drive.

2
  • 1
    Would this work to only run on the latest backup image within Backups.backupdb folder, without having previously removed the earlier backups? ...perhaps that was even implied and I missed it?
    – Shwaydogg
    Nov 26, 2018 at 0:18
  • 2
    This solution didn't work for me. The following worked. 1. Unmount the drive (not eject!) 2. Don't forget sudo with the following command 3. hdiutil create /path/to/folder.dmg -stdinpass -srcdevice /path/to/folder. Adapted from the follow SE answer which did work: apple.stackexchange.com/a/354531
    – tgrrr
    Apr 7, 2020 at 8:39
1

I suggest you break it up into two parts: copy the files, then compress them. Apple has the simplest solution to copy files and you can use the Finder to do so; then try the disk compression routine, if you want to go that route.

Faced with this situation a few years ago at home, and having similar problems, I realized I was just jumping through hoops. I bypassed the entire compression and archiving routine by starting a new Time Machine backup on a brand new drive. I then stored the old TM disk off-site (my office.)

I've since extrapolated this concept into primary and secondary TM disks for each computer I now use (my iMac @ home, and the iMac and laptop @ work.) I swap drives weekly, using my home as off-site storage for my work computers, and my office for off-site storage of my home computer. If there was a catastrophe destructive enough to lose both sets of disks, I'd have a lot more to worry about than a loss of data.

For ultra-crucial files, (encrypted PDF files containing my novels, poetry books and scanned financial and other documents; photos & videos, etc,) I use both Dropbox and Google Drive.

1

I use two strategies to archive backups when using Time Machine:

  1. Use more than one drive in Time Machine Preferences. Each time a backup starts, the software picks one drive round-robin style, so with three backups, each connected drive gets one interval every three hours.
  2. Selectively pick one interval from a backup destination and archive that snapshot instead of backing up all intervals.

With the first method, you just take a drive out of the rotation and store it offline. You could ship it offsite if you wish. This lets you maintain the old history without it getting overwritten with new changes. It takes more drive space than the second method.

Time Machine with multiple backup destinations

Time Machine uses hard links (search this site for details on how that works) so when you have 12 backup intervals of one unchanged file - some tools end up making 12 copies instead of 12 pointers to one file which is why the duplication process can "explode" the needed time and space or possible not finish in a reasonable time.

0

Time Machine backup includes all the history of whatever you backup.

So even if you have say 20GB worth of data backed up, provided there are enough changes to the data the overall Time Machine backup can easily fill much more space than those 20GB.

This is because it keeps all the different versions of backed up files, in case you ever need to restore a version from a specific date.

I'm not sure if there is a reliable way to get access to just the latest version of your backup. The procedure described here should be able to purge older versions of each backed up file. Maybe you can reverse the logic and get access to only the latest version of each file and add it to your archive. But that will require some shell scripting.

2
  • Doesn't answer the question of how to image the disk Apr 19, 2016 at 14:19
  • But does answer the question of why the backups may be too big
    – Jan Dusek
    Apr 19, 2016 at 14:45
0

To create a DMG using hdiutil (command line):

hdiutil create /path/to/folder.dmg -srcfolder /path/to/folder

This will archive everything in a directory to /path/to/folder.dmg.
(There's a pretty good guide on using hdiutil found here, along with man hdiutil.)

To create a DMG using Disk Utility (GUI):

  1. Depending on your preference, either press ⌘ Command+⇧ Shift+N or go to File > New Image > Image from Folder
  2. Select the folder you would like to convert into a disk image, and modify the settings in the GUI as necessary.

For your case, I would simply replace /path/to/something or /path/to/folder with /path/to/Backups.backupdb, wherever it is located on your system. It is not necessary to archive to the same path, and this may save you time. For example, as you would like to zip archive your backups to another HD:

hdiutil create /path/to/folder.dmg -srcfolder /path/to/folder

The methods outlined above can be applied to different situations as well.

edit: as Mark pointed out, zip archives do not preserve hard links, and as such, is unsuitable for archiving Time Machine backups, which are essentially many, many hard links.

3
  • To the downvoter, what can be improved in my answer? Apr 19, 2016 at 14:23
  • 2
    This won't work as zip does not keep the hard links and so you will end up with a copy of an unchanged file for every run of ™ in the backup which si what the OPs issue with CCC and SuperDuper is
    – mmmmmm
    Apr 19, 2016 at 14:24
  • I see. I've edited my answer. Apr 19, 2016 at 14:27

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .