QRecall Community Forum
  [Search] Search   [Recent Topics] Recent Topics   [Hottest Topics] Hottest Topics   [Top Downloads] Top Downloads   [Groups] Back to home page 
[Register] Register /  [Login] Login 

How do I exclude a folder from being restored? RSS feed
Forum Index » Cookbook and FAQ
Author Message
Norbert Karls


Joined: Feb 21, 2013
Messages: 13
Offline
Hi fellow forum folks,

After getting back my Mac with a replaced hard drive (you can't open new iMacs yourself anymore) I'm planning on ripping the fusion drive apart and use it as SSD + HDD instead, so next time one of them crashes I can still use the other and avoid maintenance at all or at least postpone it to a more convenient date.

My QRecall archive is a full system snapshot. One folder in my User Home has all the media files, photos, documents etc. inside a collection of sparse disk bundles which clearly don't need to reside on the SSD and also won't fit there.
I'm aware that after booting into internet recovery using ??R I can use a shell to dissolve the fusion drive, format my SSD as HFS+, mount my backup box and use QRecall's command line utility conveniently waiting there with
qrecall restore osx.longterm.quanta ':OSX' --tovolume /Volumes/SSD

to pull everything from the archive to the newly created volume without having to install a temporary OS first.
But how would I go about restoring everything except that one big folder? Is there a hidden switch or option to achieve this? The man page doesn't say so, but I hope that's just because it tries not to drown people in text.

If QRecall by itself doesn't offer such an option I could still make a copy of the archive, delete the big folder from it and restore the result. That seems an awful lot of i/o for a fairly intuitive transaction request, though.

Thanks in advance,
Norbert
James Bucanek


Joined: Feb 14, 2007
Messages: 1572
Offline
Norbert Karls wrote:I'm aware that after booting into internet recovery using ??R I can use a shell to dissolve the fusion drive, format my SSD as HFS+, mount my backup box and use QRecall's command line utility conveniently waiting there with
qrecall restore osx.longterm.quanta ':OSX' --tovolume /Volumes/SSD

to pull everything from the archive to the newly created volume without having to install a temporary OS first.

While that's technically true, it's a lot of work. If you have an external, bootable, drive it's much easier to install macOS & QRecall there first, then use that to reformat, reconfigure, partition, install, and restore your new internal drive(s). I keep a 16Gb thumb drive around just for that purpose.

You may have purposefully glossed over some of the command-line details details, but if you didn't be aware that running the qrecall tool from a recovery partition is a little more complicated than that. You can refer to the Help > Guide > Troubleshooting > Restore OS X section for all of the gory details. In fact, I'd suggest having this page loaded on a tablet or smart phone before you begin.

But how would I go about restoring everything except that one big folder? Is there a hidden switch or option to achieve this? The man page doesn't say so, but I hope that's just because it tries not to drown people in text.


Sorry, there is no such option. Your original idea of first duplicating the archive an then deleting the one big document folder will work. If you still had your original drive, I would have suggested taking a final capture, deleting the one massive folder, then taking one more capture. You could have then restored your SSD from the last layer, then rolled back one layer to recall your documents folder to some other location.

And just for there record, the whole purpose of a man page is to drown users in text.

That seems an awful lot of i/o for a fairly intuitive transaction request, though.

You say "intuitive," but I say "this is there first time anyone has asked for this."

I'll add it to the wish list. It might not be that difficult to implement. There's already a to-do item to add an exclusion mechanism to the restore command. This is to solve an unusual problem where you've captured the volume that contains the archive itself. During the restore, QRecall will attempt to delete the archive (since the archive always excludes itself from any capture). It's actually the opposite problem (not deleting an item that wasn't captured), but the mechanics of not recalling an item that was captures would be, more or less, the same.

- QRecall Development -
[Email]
Norbert Karls


Joined: Feb 21, 2013
Messages: 13
Offline
Hi James,
thanks for your quick response.

I'm still waiting for repairs to complete (the repair guys are in turn waiting for the spare drive, installation itself would take just about 20min if only they had the part), so I've had ample time to prepare. The archive is copied, the copy verified, the delete operation is underway and done soon, and over the weekend I'll even manage a merge --layers=all and a compact action (all on the command line, thank you so much for that utility). The backup unit has to work over USB2.0 as my old MBP doesn't yet have a Thunderbolt or USB3.0 port, which adds a little ? viscosity to everything.

In my code quote I have indeed left out a lot of switches (-l ? -m --helper ? -k ? -p ?) in order to show just my basic intention. I very much live on the command line, so I really can't see there to be any work at all, let alone "a lot of work". On the contrary, it all seems a lot easier for me if I can type rather than click. You can not split up a fusion drive using Disk Utility at all, so a shell is needed in any case, and if there's an open shell already, why bother firing up a GUI tool?

The help section "Restoring a volume using qrecall and a recovery partition" and the complete $(man qrecall) output lie ready here on real paper. I may be crazy, but I'm no fool.

I plan on altering my partition layout and data storage habits in such a way that this problem will never arise again, so I won't have a use for such a feature unless it already exists now. If there's nobody except myself ever asking for this, please don't bother building a feature for an empty list of active users. If it feels "more complete" that way, don't let me keep you from working on it anyway, but be in no hurry about it, I'm all good here.

Thanks again,
Norbert

post scriptum:
Thank you for a tool that's actually helping its users get stuff done and not not its creators get rich. But, do make a paid upgrade sometime. I'd so hate it if you had to abandon this fine piece of software because it doesn't pay for itself. I know you can't stop me from buying extra licenses I don't need, but you really should look out for yourself more. Just 5$ for registered users, even per user if per licence seems too much for you.
Norbert Karls


Joined: Feb 21, 2013
Messages: 13
Offline
Quick addition: I'm restoring without writing a logfile now because it kept refusing, saying "? cannot bind socket to path". I created a directory on the backup drive, touched a logfile to write to, all to no avail. Restoring without logging seems to work (still underway), I really would have liked a log file, though. Did I miss a switch? Could I have set permissions "better"?
My full command line was like this:

/Volumes/Drobo02/QRecall.app/Contents/Resources/qrecall \
restore /Volumes/Drobo02/osx.temp.quanta/ "imac02:OS X" \
--tovolume /Volumes/macOS \
--helper /Volumes/Drobo02/QRecall.app/Contents/Resources/QRecallHelper \
--logfile /Volumes/Drobo02/log/qrecall.logfile
--monitor
James Bucanek


Joined: Feb 14, 2007
Messages: 1572
Offline
On the face of it, that should have worked (assuming that Drobo02 was mounted and writable). The only thing that comes to mind is there might be something odd about duplicating/binding file descriptors on the Drobo02 when running as root, in single user mode, or from the recovery partition.

It's a bit late now, but you could try:

.../qrecall restore osx.temp ... --logfile stderr ... 2>>/Volumes/Drobo02/log/qrecall.logfile

That would let the shell create the file descriptor and then pass that the helper, rather than having the helper create its own.

- QRecall Development -
[Email]
 
Forum Index » Cookbook and FAQ
Go to:   
Mobile view
Powered by JForum 2.8.2 © 2022 JForum Team • Maintained by Andowson Chang and Ulf Dittmer