Skip to content

v4.0.5

Choose a tag to compare

@doug445 doug445 released this 17 Sep 21:49
· 6 commits to main since this release

4.0.5: bare-metal restore verified on a seventh system — Linux Mint 22.3 on the Acer Predator Triton 500, UKI-only systemd-boot built by the host's own hooks, LVM on LUKS

Restored from the installed system onto a blank 2 TB USB SATA SSD with
testbed/testbed.sh, booted first in a VM (testbed.sh vmboot: PASS, the
passphrase typed at the initramfs prompt), then on the machine from the
firmware menu with Secure Boot on: Wi-Fi, DNS, Bluetooth up, 99.99% of
686,667 files restored with the archived size, testbed.sh collect →
VERDICT: PASS, this machine's disks identical before and after.

The first restore of this machine would not have booted.

Restore:

  • restore-rebuild-boot.sh: on a UEFI host with systemd-boot, a grub.cfg counts
    as GRUB only when the ESP holds a GRUB image ("GNU GRUB", or a bare core's
    "grub rescue> "/grub_mod_init). A Mint host with the grub packages installed
    got grub-install and update-grub: shim → GRUB on the fallback path, and a menu
    with no Linux entry (only os-prober's find on this machine's Windows disk).
  • restore-rebuild-boot.sh: UKIs built by a Debian host's own kernel postinst /
    initramfs post-update hook (ukify) are rebuilt through update-initramfs
    (UKI_TOOL=update-initramfs), one kernel at a time; a kernel is installed when
    dpkg says so (a UKI-only host keeps no /boot/vmlinuz-*), and every UKI must
    have changed afterwards. kernel-install with layout=none had done nothing:
    every UKI kept an initramfs that unlocks the source disk. The update-initramfs
    loop is one function for both paths.
  • restore-rebuild-boot.sh: sbctl sign-all failing only on database entries for
    files that are gone is named as such, not reported as a signing failure.
  • borg-restore.sh: the crypttab entry of an LVM root is also found by the
    volume group its container holds on this system, when the restored LVM
    metadata backup names another device.
  • backintime-restore.sh: the installed-system crypttab pairing of
    borg-restore.sh (containers open under another name, the old disk still
    installed) and the rebuild-only 'initramfs' option, the same code.