Table of Contents

Phase 3A - Differential Backup

Dale Sinder and Steve Zoppi 25/04/18

Tutorial Phases

Tip

The tutorial phases are arranged in a prescribed order, wherein each phase builds upon the previous. Performing these activities out of order will leave the installation in an inconsistent, or perhaps inoperable state.

Objective

After each significant milestone, it is a matter of good practice to perform a checkpoint backup of the changed files. In Phase 0 - Prepare Work Environment, the process for creating a cdc.io Cluster Backup was one of the tasks. Our objective in this phase is to establish a baseline git repository onto which this, and future changes, can be projected.

Procedure

Because we have not made a change to Cluster Backup folder yet, it is an appropriate time to ensure that there is a baseline.

Establish a Source Baseline

  1. If it hasn't been done already, create a git repository at the cdc.io backup target directory.
    1. From the command line, enter the backup target directory location.
    2. Initialize the repository using the git init command
    3. Create a .gitignore file with the line /binary* in that same backup target directory location. This will exclude the PLATO Binary packs from being included in the repository.
    4. Add all other files and commit to the main branch. This will take a while.
  2. Perform the incremental backup using the cdc.io c.backup command.

    > cdc.io c.backup -c "C:\Path\To\Cluster\Disks" -b "C:\Path\To\CDC.IO\Backups" Processing Pack 'binary1'. # Backup Date: Wednesday, 14. May 2025 08:11AM # Origin Path: 'C:\Path\To\Cluster\Disks\DQ20_BINARY' mfname binary1 serial binary1 type b.binary depth 3 max_names 2560 max_parts 3 structure m model 1 STANDARD BACKUP: Writing Changed File 'bgena866' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 'bsyst1463' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 'bsyst1864' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 'bsyst2395' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 'bsyst2784' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 'bsyst3192' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 'bsyst3758' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 'bsyst4527' (Content diff at block 0.) Processing Pack 'binary2'. # Backup Date: Wednesday, 14. May 2025 08:11AM # Origin Path: 'C:\Path\To\Cluster\Disks\DQ20_BINARY' mfname binary2 serial binary2 type b.binary depth 3 max_names 2560 max_parts 3 structure m model 1 STANDARD BACKUP: Writing Changed File 'bdeve2801' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 'bsyst102' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 'bsyst1223' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 'bsyst2300' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 'bsyst2309' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 'bsyst2365' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 'bsyst2700' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 'bsyst2842' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 'bsyst3707' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 'bsyst4410' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 'bsyst4422' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 'bsyst4437' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 'bsyst652' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 'bsyst74' (Content diff at block 0.) Processing Pack 's0files'. # Backup Date: Wednesday, 14. May 2025 08:11AM # Origin Path: 'C:\Path\To\Cluster\Disks\DQ21_CYB0' mfname s0files serial s0files type b.master depth 3 max_names 2560 max_parts 3 structure m model 1 STANDARD BACKUP: Writing Changed File 'acclog1' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 'acclog2' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 'loglog' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 'sysfile' (Content diff at block 14.) STANDARD BACKUP: Writing Changed File 's0common' (Content diff at block 17.) STANDARD BACKUP: Writing Changed File 's0file' (Content diff at block 2.) STANDARD BACKUP: Writing Changed File 's0runrns' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 's0statsns2' (Content diff at block 0.) Processing Pack 's0stuff'. # Backup Date: Wednesday, 14. May 2025 08:11AM # Origin Path: 'C:\Path\To\Cluster\Disks\DQ21_CYB0' mfname s0stuff serial s0stuff type b.master depth 3 max_names 2560 max_parts 3 structure m model 1 STANDARD BACKUP: Writing Changed File 'maintdf' (Content diff at block 1.) STANDARD BACKUP: Writing Changed File 'maintp' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 's0sup' (Content diff at block 1.) Processing Pack 's0sup'. # Backup Date: Wednesday, 14. May 2025 08:12AM # Origin Path: 'C:\Path\To\Cluster\Disks\DQ21_CYB0' mfname s0sup serial s0sup type b.master depth 3 max_names 2560 max_parts 3 structure m model 1 NOTE: Account s0sup had files added to pack s0stuff. Pack s0sup was unchanged. Processing Pack 'system'. # Backup Date: Wednesday, 14. May 2025 08:12AM # Origin Path: 'C:\Path\To\Cluster\Disks\DQ21_CYB0' mfname system serial system type b.master depth 3 max_names 2560 max_parts 3 structure m model 1 STANDARD BACKUP: Writing Changed File 'mem' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 'plato' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 's' (Content diff at block 1.) STANDARD BACKUP: Writing Changed File 'system' (Content diff at block 1.) STANDARD BACKUP: Writing Changed File 's0notes' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 's0terms' (Content diff at block 0.) … (listing abbreviated) … Processing Pack 'system4'. # Backup Date: Wednesday, 14. May 2025 08:13AM # Origin Path: 'C:\Path\To\Cluster\Disks\DQ22_CYB1' mfname system4 serial system4 type b.master depth 3 max_names 2560 max_parts 3 structure m model 1 STANDARD BACKUP: Writing Changed File 'omem' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 'oplato' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 'os0notes' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 'os0terms' (Content diff at block 0.) … (listing abbreviated) … Processing Pack 'develop'. # Backup Date: Wednesday, 14. May 2025 08:25AM # Origin Path: 'C:\Path\To\Cluster\Disks\DQ25_UOL' mfname develop serial develop type b.master depth 3 max_names 2560 max_parts 3 structure m model 1 STANDARD BACKUP: Writing Changed File 'nedit' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 'nmem' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 'nplato' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 'ns0notes' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 'ns0terms' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 'nuser' (Content diff at block 0.) … (listing abbreviated) … Processing Pack 'gena'. # Backup Date: Wednesday, 14. May 2025 08:26AM # Origin Path: 'C:\Path\To\Cluster\Disks\DQ27_GEN1' mfname gena serial gena type b.general depth 3 max_names 2560 max_parts 3 structure m model 1 STANDARD BACKUP: Writing Changed File 'drsa' (Content diff at block 1.) STANDARD BACKUP: Writing Changed File 'fancy' (Content diff at block 0.) STANDARD BACKUP: Writing Changed File 'retro1' (Content diff at block 1.) … (listing abbreviated) … End of Function.

  3. Once the backup is complete, verify that the changed files were detected as expected by issuing the git status command and observing the output:

    On branch master Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git restore <file>..." to discard changes in working directory) modified: develop/BackDir modified: develop/Back_Info modified: develop/n/e/d/nedit.txt modified: develop/n/m/e/nmem.txt modified: develop/n/p/l/nplato.txt modified: develop/n/s/0/ns0notes.txt modified: develop/n/s/0/ns0terms.txt modified: develop/n/u/s/nuser.txt modified: gena/Back_Info modified: gena/f/a/n/fancy.txt modified: genb/Back_Info modified: genc/Back_Info modified: gend/Back_Info modified: gene/Back_Info modified: puba/Back_Info modified: pubb/Back_Info modified: pubc/Back_Info modified: pubd/Back_Info modified: pube/Back_Info modified: pubf/Back_Info modified: pubg/Back_Info modified: pubh/Back_Info modified: pubi/Back_Info modified: pubj/Back_Info modified: rtra/BackDir modified: rtra/Back_Info modified: rtrb/Back_Info modified: rtrc/Back_Info modified: rtrd/Back_Info modified: rtre/Back_Info modified: s0files/Back_Info modified: s0files/s/0/r/s0runrns.txt modified: s0files/s/0/s/s0statsns2.txt modified: s0stuff/BackDir modified: s0stuff/Back_Info modified: s0stuff/m/a/i/maintp.txt modified: s0sup/Back_Info modified: system/BackDir modified: system/Back_Info modified: system/m/e/m/mem.txt modified: system/p/l/a/plato.txt modified: system/s/0/n/s0notes.txt modified: system/s/0/t/s0terms.txt modified: system1/Back_Info modified: system2/Back_Info modified: system3/Back_Info modified: system4/BackDir modified: system4/Back_Info modified: system4/o/m/e/omem.txt modified: system4/o/p/l/oplato.txt modified: system4/o/s/0/os0terms.txt modified: system5/Back_Info Untracked files: (use “git add <file>…” to include in what will be committed) develop/n/s/0/ns0caps.txt rtra/a/ rtra/p/ s0stuff/c/y/b/cybmods001.txt s0stuff/l/1/ s0stuff/p/l/m/plmods000.txt s0stuff/p/l/m/plmods001.txt s0stuff/p/l/m/plmods0011.txt system/s/0/c/s0caps.txt system4/o/s/0/os0caps.txt no changes added to commit (use "git add" and/or "git commit -a")

    1. NOTE: The following files will always change with each backup:
      1. */Back_Info
      2. */BackDir
      3. Do not add these to .gitignore because they are important parts of the backup structure.
    2. Use the git add . command to add the Untracked files.
    3. Verify that they have been added by issuing another git status command:

      On branch master Changes to be committed: (use "git restore --staged <file>..." to unstage) modified: develop/BackDir modified: develop/Back_Info modified: develop/n/e/d/nedit.txt modified: develop/n/m/e/nmem.txt modified: develop/n/p/l/nplato.txt new file: develop/n/s/0/ns0caps.txt modified: develop/n/s/0/ns0notes.txt modified: develop/n/s/0/ns0terms.txt modified: develop/n/u/s/nuser.txt modified: gena/Back_Info modified: gena/f/a/n/fancy.txt modified: genb/Back_Info modified: genc/Back_Info modified: gend/Back_Info modified: gene/Back_Info modified: puba/Back_Info modified: pubb/Back_Info modified: pubc/Back_Info modified: pubd/Back_Info modified: pube/Back_Info modified: pubf/Back_Info modified: pubg/Back_Info modified: pubh/Back_Info modified: pubi/Back_Info modified: pubj/Back_Info modified: rtra/BackDir modified: rtra/Back_Info new file: rtra/a/l/i/alien.txt new file: rtra/p/t/e/ptest.txt modified: rtrb/Back_Info modified: rtrc/Back_Info modified: rtrd/Back_Info modified: rtre/Back_Info modified: s0files/Back_Info modified: s0files/s/0/r/s0runrns.txt modified: s0files/s/0/s/s0statsns2.txt modified: s0stuff/BackDir modified: s0stuff/Back_Info new file: s0stuff/c/y/b/cybmods001.txt new file: s0stuff/l/1/p/l1pmods000.txt new file: s0stuff/l/1/p/l1pmods001.txt modified: s0stuff/m/a/i/maintp.txt new file: s0stuff/p/l/m/plmods000.txt new file: s0stuff/p/l/m/plmods001.txt new file: s0stuff/p/l/m/plmods0011.txt modified: s0sup/Back_Info modified: system/BackDir modified: system/Back_Info modified: system/m/e/m/mem.txt modified: system/p/l/a/plato.txt new file: system/s/0/c/s0caps.txt modified: system/s/0/n/s0notes.txt modified: system/s/0/t/s0terms.txt modified: system1/Back_Info modified: system2/Back_Info modified: system3/Back_Info modified: system4/BackDir modified: system4/Back_Info modified: system4/o/m/e/omem.txt modified: system4/o/p/l/oplato.txt new file: system4/o/s/0/os0caps.txt modified: system4/o/s/0/os0terms.txt modified: system5/Back_Info

  4. Commit the changes:

    > git commit -m "m000.sinder.mods.a Complete" [master 55238eda] m000.sinder.mods.a Complete 63 files changed, 58 insertions(+), 47 deletions(-) create mode 100644 develop/n/s/0/ns0caps.txt create mode 100644 rtra/a/l/i/alien.txt create mode 100644 rtra/p/t/e/ptest.txt create mode 100644 s0stuff/c/y/b/cybmods001.txt create mode 100644 s0stuff/l/1/p/l1pmods000.txt create mode 100644 s0stuff/l/1/p/l1pmods001.txt create mode 100644 s0stuff/p/l/m/plmods000.txt create mode 100644 s0stuff/p/l/m/plmods001.txt create mode 100644 s0stuff/p/l/m/plmods0011.txt create mode 100644 system/s/0/c/s0caps.txt create mode 100644 system4/o/s/0/os0caps.txt

Backup / Source Checkpoint Complete!

Congratulations! You have successfully

  • Created your backup repository.
  • Performed the initial check-in.
  • Performed an incremental backup of your PLATO cluster.
  • Performed the secondary check-in.

… and are now ready to proceed to Phase 4 - Add More Support for L1P Terminals