Page MenuHomePhabricator

Provide a live Debian image to act as a console
Open, LowPublic

Description

The goal is to have a live Debian image that can be booted over the network and runs in RAM on baremetal. The image is rw via overlay/aufs and thus behaves like a regular system (e.g. packages can be installed). The idea is to boot baremetal hosts with this, as opposed to debian-installer, to provide a ssh-able host both to use interactively via install-console (e.g. for inspection/debugging) and for cookbooks to interact with the system (e.g. configure/provision hardware raid).

Implementation wise the following could work:

  • Build Debian live artifacts (kernel/initramfs/rootfs) via live-build e.g. on build hosts
  • The artifacts are then distributed via volatile like we do for debian-installer kernel/initramfs and end up on apt.w.o
  • Post-boot provisioning (e.g. install root public ssh key) can happen via standard .service files, since systemd runs as normal. Or we can bake some steps at live-build time
  • The sre.hosts.dhcp cookbook is used with --pxe-media console to temporarily boot the debian-live console
    • Currently (Oct 2026) for this to work as a drop-in the artifacts will need to be in <os>-console/debian-installer/amd64/{linux,initrd.gz} since these are fixed in modules/install_server/files/efiboot/autoexec.ipxe
    • Additionally, we require extra kernel cmdline arguments such as the url to load the rootfs from, which can be baked into the initrd via bootconfig mechanism (cfr https://docs.kernel.org/admin-guide/bootconfig.html) so we don't need to specialize or touch autoexec.ipxe. Only bootconfig will need to be appended to autoexec.ipxe

Event Timeline

fgiunchedi claimed this task.
fgiunchedi raised the priority of this task from to Needs Triage.
fgiunchedi updated the task description. (Show Details)
fgiunchedi added a project: acl*sre-team.
fgiunchedi changed Security from none to None.
fgiunchedi added subscribers: fgiunchedi, faidon.

Change 178845 had a related patch set (by Filippo Giunchedi) published:
import debirf 0.34

https://gerrit.wikimedia.org/r/178845

Patch-For-Review

Change 178846 had a related patch set (by Filippo Giunchedi) published:
debirf.conf: adjust options for this environment

https://gerrit.wikimedia.org/r/178846

Patch-For-Review

Change 178847 had a related patch set (by Filippo Giunchedi) published:
add hwraid repository and some utilities

https://gerrit.wikimedia.org/r/178847

Patch-For-Review

Change 178848 had a related patch set (by Filippo Giunchedi) published:
add utility Makefile

https://gerrit.wikimedia.org/r/178848

Patch-For-Review

Change 178849 had a related patch set (by Filippo Giunchedi) published:
ignore build artifacts

https://gerrit.wikimedia.org/r/178849

Patch-For-Review

Change 178845 merged by Filippo Giunchedi:
import debirf 0.34 "rescue" configuration

https://gerrit.wikimedia.org/r/178845

Change 178846 merged by Filippo Giunchedi:
debirf.conf: adjust options for this environment

https://gerrit.wikimedia.org/r/178846

Change 178847 merged by Filippo Giunchedi:
add hwraid repository and some utilities

https://gerrit.wikimedia.org/r/178847

Change 178848 merged by Filippo Giunchedi:
add utility Makefile

https://gerrit.wikimedia.org/r/178848

Change 178849 merged by Filippo Giunchedi:
ignore build artifacts

https://gerrit.wikimedia.org/r/178849

Prerequisite to this work is to add a pxelinux menu (defaulting to d-i) that will also offer to wipe/rescue/etc, tracked in T191018: Provide an option menu when booting via PXE

fgiunchedi renamed this task from provide a pxe-bootable rescue image to Provide a pxe-bootable rescue image.Mar 29 2018, 12:34 PM
fgiunchedi removed fgiunchedi as the assignee of this task.
fgiunchedi removed a project: Patch-For-Review.
fgiunchedi updated the task description. (Show Details)

I found this task while pondering similar functionality, as I have been using SystemRescue to troubleshoot some issues on our Supermicro hosts. I didn't realize this was possible. A couple of questions:

  1. Does this functionality still work for PXE hosts?
  2. Should we consider adding something similar for UEFI HTTP booting?

I found this task while pondering similar functionality, as I have been using SystemRescue to troubleshoot some issues on our Supermicro hosts. I didn't realize this was possible. A couple of questions:

  1. Does this functionality still work for PXE hosts?

I don't know what happened to the image over time, though assuming it is somewhere and servers are pointed to it then yes it should work.

  1. Should we consider adding something similar for UEFI HTTP booting?

I think we should, yes

fgiunchedi renamed this task from Provide a pxe-bootable rescue image to Provide a live Debian image to act as a console.Thu, Sep 17, 10:01 AM
fgiunchedi updated the task description. (Show Details)

I found this task while pondering similar functionality, as I have been using SystemRescue to troubleshoot some issues on our Supermicro hosts. I didn't realize this was possible. A couple of questions:

  1. Does this functionality still work for PXE hosts?
  2. Should we consider adding something similar for UEFI HTTP booting?

I have updated the task description with a similar but different idea of using Debian Live builds to provide a ram-only rw system, please let me know what you think!