... | ... | @@ -78,6 +78,10 @@ i.e. it basically allows you to change the boot order, enable network |
|
|
booting, disable USB booting, disable the serial console (probably
|
|
|
ill-advised), and mess with the other UART ports.
|
|
|
|
|
|
The network boot actually drops you in [iPXE](https://ipxe.org/) which is nice
|
|
|
(version 1.0.0+ (f8e167) from 2016) as it allows you to bootstrap one
|
|
|
rescue host with another (see the installation section below).
|
|
|
|
|
|
## Memory test
|
|
|
|
|
|
The boot menu (<kbd>F10</kbd> then <kbd>4</kbd>) provides a built-in
|
... | ... | @@ -167,13 +171,31 @@ additional day of delay over the weekend, which led to a 6 days (4 |
|
|
business days) shipping time.
|
|
|
|
|
|
One of the machine was connected over serial (see above) and booted
|
|
|
with a GRML "96" (64 and 32 bit). This is tricky, however, because you
|
|
|
need to switch from 115200 to 9600 once grub finishes loading, as GRML
|
|
|
still [defaults to 9600 baud instead of 115200](https://github.com/grml/grml-live/issues/130). It may be possible
|
|
|
to tweak the GRUB commandline to change the speed, but since it's in
|
|
|
the middle of the kernel commandline and that the serial console
|
|
|
editing capabilities are limited, it's actually pretty hard to get
|
|
|
there.
|
|
|
with a GRML "96" (64 and 32 bit) image over USB. Booting GRML from USB
|
|
|
is tricky, however, because you need to switch from 115200 to 9600
|
|
|
once grub finishes loading, as GRML still [defaults to 9600 baud
|
|
|
instead of 115200](https://github.com/grml/grml-live/issues/130). It may be possible to tweak the GRUB
|
|
|
commandline to change the speed, but since it's in the middle of the
|
|
|
kernel commandline and that the serial console editing capabilities
|
|
|
are limited, it's actually pretty hard to get there.
|
|
|
|
|
|
The other box was chain-loaded with iPXE from the first box, as a
|
|
|
stress-test. This was done by enabling the network boot in the BIOS
|
|
|
(<kbd>F10</kbd> to enter the BIOS in the serial console, then
|
|
|
<kbd>5</kbd> to enter setup and <kbd>n</kbd> to enable network boot
|
|
|
and <kbd>s</kbd> to save). Then hit <kbd>n</kbd> to enable network
|
|
|
boot and choose "iPXE shell" when prompted. Assuming both hosts are
|
|
|
connected over their `eth1 storage` interfaces, you should then do:
|
|
|
|
|
|
iPXE> dhcp net1
|
|
|
iPXE> chain autoexec.ipxe
|
|
|
|
|
|
This will drop you in another DHCP sequence, which will try to
|
|
|
configure each interface. You can <kbd>control-c</kbd> to skip `net0`
|
|
|
and then the `net1` interface will self-configure and chain-load the
|
|
|
kernel and GRML. Because the `autoexec.ipxe` stores the kernel
|
|
|
parameters, it will load the proper serial console settings and
|
|
|
doesn't suffer from the 9600 bug mentioned earlier.
|
|
|
|
|
|
From there, SSH was setup and key was added. We had DHCP in the lab so
|
|
|
we just reused that IP configuration.
|
... | ... | |