terra: kexec-local hangs hard on real hardware, switch docs to USB installer
Confirmed on real hardware: kexec's device_shutdown() pass runs (SCSI disks sync fine in the log) then the machine goes dark for good — journalctl --list-boots showed a ~15min gap before the next boot, a genuine hang needing a manual power cycle, not a slow jump. Near-certainly amdgpu (RX 6800 XT): discrete AMD GPUs are known to hang during kexec's device-shutdown pass with no clean handoff before the jump, same class of issue as jupiter's reboot=pci warm-reboot workaround, just fatal here instead of slow. README's terra install section now leads with the USB installer path instead (build ISO, dd to USB, rsync the repo over, disko + nixos-install locally). CLAUDE.md's gotchas list gets the same warning. installer-iso is renamed from jupiter-installer to homelab-installer since it's genuinely host-agnostic, and now ships git. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -107,6 +107,14 @@ kept its ssh host key. Run it after ANY change to the kexec paths.
|
||||
- **jupiter**: `boot.kernelParams = [ "reboot=pci" ]` (warm reboot hangs on that board);
|
||||
eMMC initrd modules pinned in `configuration.nix` (generate-config misses them); the
|
||||
16TB×2 **RAID0** data lives on `/mnt/data` with `nofail`, kept OUT of disko (never wiped).
|
||||
- **terra: `./scripts/deploy kexec-local` hangs hard — do not use it there.** Confirmed
|
||||
on real hardware: kexec's `device_shutdown()` pass runs (SCSI disks sync fine in the
|
||||
log), then the machine goes dark and never comes back — `journalctl --list-boots`
|
||||
showed a ~15min gap before the next boot, i.e. a genuine hang needing a manual power
|
||||
cycle, not a slow jump. Near-certainly amdgpu (RX 6800 XT): discrete AMD GPUs are known
|
||||
to hang during kexec's device-shutdown pass with no clean handoff before the jump —
|
||||
same class of issue as jupiter's `reboot=pci` workaround, just fatal here instead of
|
||||
slow. Use the USB installer path instead (README's "First install on terra" section).
|
||||
- **disko wipes only the OS disk** named in `hosts/<h>/disk-config.nix`; data disks are
|
||||
plain `fileSystems` in `configuration.nix`.
|
||||
- `nixos-anywhere`/kexec needs a writable root; **ZimaOS root is read-only**, hence the
|
||||
|
||||
Reference in New Issue
Block a user