aboutsummaryrefslogtreecommitdiffstats
path: root/image-builder/fstab.example
diff options
context:
space:
mode:
Diffstat (limited to 'image-builder/fstab.example')
-rw-r--r--image-builder/fstab.example23
1 files changed, 23 insertions, 0 deletions
diff --git a/image-builder/fstab.example b/image-builder/fstab.example
index 79c9473..b0ca1d9 100644
--- a/image-builder/fstab.example
+++ b/image-builder/fstab.example
@@ -43,3 +43,26 @@ UUID=0e5d008d-0ee0-41bc-9222-aedba1e088d0 /var/lib/docker ext4 defaults 0 2
# --format '{{.State.Pid}}')/mountinfo
# and check the device is the system disk, not the docker one.
/opt/registry-data /opt/sbo-testbuild/registry none bind 0 0
+
+# ---------------------------------------------------------------------------
+# Booting: LILO, and it needs re-running by hand
+# ---------------------------------------------------------------------------
+# This host boots BIOS/legacy with LILO in the MBR of /dev/sda. GRUB is also
+# installed, but only as EFI binaries under /boot/efi, and the firmware never
+# boots in EFI mode, so they are inert. There is no ambiguity about which
+# bootloader runs; there is just an unused one lying around.
+#
+# LILO maps the kernel by physical block address, so the map goes stale
+# whenever the blocks move. Run `lilo -v` after:
+#
+# * installing or replacing a kernel or initrd (the usual case)
+# * editing /etc/lilo.conf
+# * moving or defragmenting /boot
+#
+# Forgetting leaves an unbootable machine that looks fine until it reboots,
+# which on a headless VM means a console session to recover. `lilo -t -v`
+# tests without writing, and re-running `lilo -v` when nothing changed is
+# harmless, so when in doubt, run it.
+#
+# Editing the entries above does NOT need it: mounts are userspace, applied
+# long after the kernel loads, and the root device is unchanged.