1

When setting up a VM in Parallels 11 (and previous versions) one can enable "SmartGuard" and then further "Optimize for Time Machine"

What's not clear is exactly what's happening "under the covers" when Time Machine executes it's regularly scheduled backup, while the VM is running.

I'd be happy with Time Machine just backing up the snapshots such that if I do have to restore, I could go back to the last known good snapshot, but I've not been able to find any step by step on that. (in fact I can't even find where the snapshot files are!)

1

Time Machine makes two passes on each file. If your file is open/locked/changing, then Time Machine will skip that file for that interval. Basically, it collects a list of all files needing backup and when it gets to the file - it might skip it and save it to try again once the first pass is complete. If the second pass fails, you miss that file.

Ideally, you would quit Parallels (or at least shut down the storage / finalize all the writes) and then make a backup to avoid missing files or having a file being saved in an "unusable" state.

It looks like the vendor is changing the default behavior to accommodate Time Machine according to:

It also gets complicated based on which other storage settings you use for the virtual disk technology - and I'll leave that for Parallels support to answer in a knowledge base article - but how Time Machine works is easily tested.

Run a backup and then run tmutil compare to see what files are different than the ones saved in a snapshot. Try restoring the Parallels VM to a new location and booting it. The problem with timing issues is you might get a sane backup 9 times out of 10 or 99,999 out of 100,000 - but it's really about how much data you can afford to lose.

Most people I know skip backing up virtual machines and implement an alternative method of saving user files off image (or syncing them) and/or setting a reminder to periodically make a snapshot backup of the state of the VM by scripting a shut down and then scripting a copy of the data files to a place where Time Machine will back up that periodic snapshot.

Once you have that set up, you can exclude the running VM files from Time Machine backup and save time/space on the backup media of incremental backups that might not actually be workable.

It looks like Smart Guard marks all the files excluded from Time Machine except the backup snapshots and the optimize scheduled snapshots automatically every 48 hours. You should be able to look at your Time Machine backups with a tool like BackupLoupe after running for a week and confirm that you are only getting backup snapshots and that they are happening every 48 hours.

  • So that's a good start to the answer. But the question remains "what does Optimize for Time Machine" really mean? And if it is what I guess it is, that Time Machine only backs up the snapshots then great --- where are those so that I can pick a snapshot to restore. – Ralph Shillington Dec 2 '15 at 16:29
  • @RalphShillington Basically I'm punting what that one thing means to Parallels support. They should document that IMO. I thought you were asking about Time Machine under the hood and not that item under the hood. "What's not clear is exactly what's happening "under the covers" when Time Machine executes it's regularly scheduled backup, while the VM is running."* It looks like 3 minutes of STFW shows parallels has quite adequately documented the two items you asked about. – bmike Dec 2 '15 at 17:45
  • after some more STFW (thanks for those kinds words btw) I found that the .pvm file is in fact not a single file as Finder would have you believe. Now it all makes sense. – Ralph Shillington Dec 2 '15 at 18:21
  • 1
    F is always for "friendly", right :-) Also, the command tmutil isexcluded /path/to/the/file/in/question.whatever is your friend :-) I'm glad things are making sense. It's a bit of a complicated beast - packages, virtual file systems, periodic access to files to back them up when they might be changing moment to moment or worse, if the other OS hasn't flushed changes to disk in a coherent manner. – bmike Dec 2 '15 at 18:41
1

There is not much to add to bmike's answer except some aspects of what's happening under the hood:

The .pvm as well ass the .hdd file are in fact folders similar to apps. You may access them using the context menu -> Show package contents.

Example:

After configuring the SmartGuard feature, Parallels will save an initial snapshot of some files (in the dark blue box: .mem, .png etc all starting with {356...) in a subsequent Snapshots folder and a snapshot of the hdd with a corresponding name in the hdd package here starting with CentOS Linux 7.0.1-0.hdd.0.{356....

First snapshot:

enter image description here

enter image description here

All changes made in the VM afterwards are written to other files. In the screenshot above all the hdd changes are written to the file CentOS Linux 7.0.1-0.hdd.0.{5fb....

Second snapshot (I set the VM to create a snapshot every hour)

enter image description here

enter image description here

The second snapshot (in the light blue box) is created after one hour. All changes written to the temporary file CentOS Linux 7.0.1-0.hdd.0.{5fb... are saved to a second hdd snapshot: the file CentOS Linux 7.0.1-0.hdd.0.{8ca.... The temporary hdd file is reinitiated then.

None of the snapshot files will be changed afterwards and therefore they are backed up easily with Time Machine. Since they are much smaller than the whole pvm (except the initial hdd file of course) they consume less space and time backing them up.

  • That's great additional information. Now the only thing left unclear for me, is should the need arise, and I have to restore to the last good snapshot, is it simply a matter of restoring the .PVM from the time machine backup, and then selecting the appropriate snapshot from Parelles Manage Snapshots? – Ralph Shillington Dec 2 '15 at 21:18
  • @RalphShillington I will try to add that tomorrow. – klanomath Dec 2 '15 at 21:21

You must log in to answer this question.

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