How do you create individual 100 GB backup files when you have a full backup of approximately 3 TB of data?

How do you create individual 100 GB backup files when you have a full backup of approximately 3 TB of data?
How do you check each individual 100 GB file at the end to ensure it works before transferring it to external storage?

There were complications when transferring to QubesOS 4.3 because this backup file was 800 GB in size, even though the hard drive only had about 1500 GB of data on it.

I’m not sure to completely understand the problem, but it’s possible and easy to split the big backup file into small parts.

You can do it after the file was created, or during the file creation process. The thing is to use the command split which just split a file (or standard input data) into chunked files that can be reassembled using cat.

For a on-the-fly split, you will need to create a script in the backup destination qube and put the path to the script (marked as executable) in the backup destination.

Is that the complete terminal command line if I want 100 GB files, or is something missing?

Which VMs will be backed up?

split -b 100m archive.tgz archive.tgz.split

How do I specify that all “work” files are backed up and the others are not?

You can back up just the work VM. In fact, this is another (perhaps better) way to split up your files.

The qubes backup utility can be told to just back up one VM:

qvm-backup --dest-vm -y work

will back up just the work qube without any sort of prompting after you supply the password.

Annoyingly it will insist on printing out a list (in red) of every VM you aren’t asking to back up, as if it’s some sort of error. There’s no way to shut that nonsense off.

I have about 2 TB of data to back up, which means I have a lot of VMs.

If I only back up one VM at a time, it becomes very cumbersome to create the backup. The same applies to restoring the backup.

I found this on the internet.

To create a backup with the command split and catTo create a file, first create an archive with tarwhich is then split into smaller parts. To create a compressed archive from a directory such as /home/userthe command tar czf /tmp/archiv.tgz /home/user be used. This archive will then be splitinto parts, for example into 95 MB files, with the command split -b 95m archiv.tgz archiv.tgz.split… This creates files like archiv.tgz.split.aa, archiv.tgz.split.ab, etc., which can be copied to different storage devices.

To restore the original archive, the split files are copied to an empty directory, for example /tmp/restore, and with the command cat archiv.tgz.split.* > archiv.tgzbrought together again.
The shell automatically ensures that the files are processed in alphabetical order, which ensures the correct order. After merging, the archive can be tarunpacked or searched with a graphical archive tool.

In case there is not enough space on the hard disk for the original archive and the split parts, the output of tardirectly via a pipe splitto bypass the creation of the temporary archive file. The command for this is tar cz /home/user | split -b95m - archiv.tgz.split…
This works because tarwithout the option -fwrites the output to the standard output, which is then splitis read via the pipe.

Alternatively, catused to merge the split files without creating a temporary file. The command cat archiv.tgz.split.* | tar xzallows you to unpack the archive directly without merging the files first.
In case the files need to be restored on a Windows system, the DOS command copy /b archiv.tgz.split.aa+archiv.tgz.split.ab+archiv.tgz.split.ac archiv.tgzbe used, whereby the files are manually copied with a ±characters must be connected.