SystemRescue+ZFS is a fork of the SystemRescue distribution (based on Arch Linux) with the following improvements:
- ZFS supported out of the box
- Serial console enabled for all boot options, including Memtest86+
- EFI boot progress indicators for the kernel/initramfs/system stages
- Headers and done vs. skipped indicators for each build step
- Extra polish
A serial terminal is enabled out of the box on ttyS0
/COM1
at 115,200 baud. If these settings are unsuitable, adjust the configuration of the appropriate bootloader and the kernel, then build a new image.
GRUB (EFI boot) | SYSLINUX (legacy boot) |
---|---|
📍 efiboot/grub/grubsrcd.cfg serial --unit=0 --speed=115200 … |
📍 syslinux/sysresccd_head.cfg SERIAL 0 115200 |
📍 build.sh
consoles='console=ttyS0,115200 …'
$ sudo ./build.sh [-d] [-v]
-d
: Turn off compression, significantly speeding up development builds.-v
: Print more information while building (strongly recommended).
Arch Linux with the following packages installed:
arch-install-scripts
archiso
from the custom SystemRescue repository⚠️ base-devel
edk2-shell
grub
hugo
isomd5sum
mtools
The state of successful build steps is persisted in work/build.make_*
files. If such a file exists for a given build step, build.sh
skips that step indefinitely. State files must be manually deleted for any steps that one wants reexecuted.
$ sudo rm work/build.make_*
Delete the state file for the desired step and any downstream steps. For example, if you have customized the GRUB configuration, you must remove build.make_efi
and its successors build.make_efiboot
and build.make_iso
.
make_pacman_conf
make_basefs
make_documentation
make_packages
make_customize_airootfs
make_setup_mkinitcpio
make_boot
make_boot_extra
make_syslinux
make_isolinux
make_efi
make_efiboot
make_prepare
make_imageinfo
make_iso