A guide for adding SystemRescue (systemrescue.iso) directly to your EFI System Partition and booting it via systemd-boot — no USB needed.
- EFI system with systemd-boot
- A large ESP (EFI System Partition) — ≥2 GB (ISO + kernel + initrd ≈ 1.5 GB)
- Downloaded ISO from: https://www.system-rescue.org/Download/
Use bsdtar
or 7z
to extract the ISO contents:
mkdir systemrescue-extracted
bsdtar -xf systemrescue-[Version]-amd64.iso -C systemrescue-extracted
Or:
7z x systemrescue-[Version]-amd64.iso -osystemrescue-extracted
Assuming your ESP is mounted at /boot
:
sudo mkdir -p /boot/EFI/sysrescue
sudo cp systemrescue-*-amd64.iso /boot/EFI/sysrescue/
sudo cp systemrescue-extracted/sysresccd/boot/x86_64/vmlinuz /boot/EFI/sysrescue/
sudo cp systemrescue-extracted/sysresccd/boot/x86_64/sysresccd.img /boot/EFI/sysrescue/
Label your EFI System Partition as ESP
:
sudo fatlabel /dev/sdXY ESP
Replace /dev/sdXY
with your ESP device (check with lsblk
or blkid
).
Create a new entry file:
# /boot/loader/entries/sysrescue.conf
title SystemRescue
linux /EFI/sysrescue/vmlinuz
initrd /EFI/sysrescue/sysresccd.img
options img_label=ESP img_loop=/EFI/sysrescue/systemrescue-[Version]-amd64.iso archisobasedir=sysresccd copytoram=y
Option | Description |
---|---|
img_label=ESP |
Label of the ESP containing the ISO |
img_loop=… |
Path to the ISO file relative to the ESP |
archisobasedir=… |
Base directory inside ISO; for SystemRescue always sysresccd |
copytoram=y |
Loads everything into RAM; allows unmounting/removing ESP after boot |
Reboot and select SystemRescue from the systemd-boot menu. You now have a rescue OS stored permanently on your internal disk.