PXEBoot Addon SystemRescue

SystemRescue is a platform which provides a boot image for system rescue of any system. This instructions will allow you to add this functionality to your PXEBoot environment

Step 1: Basic Details

SystemRescue is available for information at this site.

SystemRescue (formerly known as SystemRescueCd) is a Linux system rescue toolkit available as a bootable medium for administrating or repairing your system and data after a crash. It aims to provide an easy way to carry out admin tasks on your computer, such as creating and editing the hard disk partitions. It comes with a lot of Linux system utilities such as GParted, fsarchiver, filesystem tools and basic tools (editors, midnight commander, network tools). It can be used for both Linux and windows computers, and on desktops as well as servers. This rescue system requires no installation as it can be booted from a CD/DVD drive or USB stick, but it can be installed on the hard disk if you wish. The kernel supports all important file systems (ext4, xfs, btrfs, vfat, ntfs), as well as network filesystems such as Samba and NFS.

Step 2: Download image

Download the most current image and place it in the PXE boot image environment:

# mkdir -p /srv/tftp/images/rescue
# cd /srv/tftp/images/rescue

< download the image and place it in this directory >

# ln -s systemrescue-9.05-amd64.iso systemrescue-amd64.iso

Step 3: Configure X86 Netboot

Configure the /srv/tftp/boot-screens/menu.cfg  and add a rescue section:

....
include boot-screens/rescue.cfg
....

Create the rescue installer menu/srv/tftp/boot-screens/rescue.cfg

label rescue
    menu label ^Recovery or Rescue
    kernel images/memdisk
    append iso initrd=images/rescue/systemrescue-amd64.iso

Step 4: Configure EFI Netboot

Create the rescue installer menu in /srv/tftp/grub/grub.cfg

menuentry 'System Recovery or Rescue' --class recovery {
    set background_color=black
    set isofile="/images/rescue/systemrescue-amd64.iso"
    loopback loop $isofile
    linux (loop)/sysresccd/boot/x86_64/vmlinuz archisobasedir=sysresccd img_loop=$isofile earlymodules=loop
    initrd (loop)/sysresccd/boot/intel_ucode.img (loop)/sysresccd/boot/amd_ucode.img (loop)/sysresccd/boot/x86_64/sysresccd.img
}