A fork of SystemRescue (formerly SystemRescueCd) with ZFS built-in and serial console access enabled for all boot options. Download bootable ISOs from the releases page.
Find a file
Gerd v. Egidy c2060e8a73 implement handling of serial consoles for autoterminal
serial consoles have separate systemd services (serial-getty@.service). We need to adapt
the handling and also need some different options for them than for regular gettys.

To allow sysrescue-initialize.py to differentiate between regular consoles and serial ones
they must be configured with the prefix "serial:" in the yaml, for example like this:

autoterminal:
    "serial:ttyS0": "/usr/bin/bash"
2022-05-12 22:53:57 +02:00
airootfs implement handling of serial consoles for autoterminal 2022-05-12 22:53:57 +02:00
autorun Allow autorun scripts to be located in a folder at the root of the ISO 2022-01-08 17:14:01 +00:00
docker Remove docker container after the build is complete 2022-02-27 11:50:26 +00:00
efiboot/grub Rename variable 2021-12-19 10:14:07 +00:00
isolinux Revert original name when related to boot config 2020-09-13 20:51:08 +01:00
patches execute sysrescue-configuration.lua only once 2022-04-25 20:31:18 +02:00
srm Include any SystemRescueModules files present in srm directory in the produced iso. 2021-05-24 21:43:16 +02:00
syslinux Rename variable 2021-12-19 10:14:07 +00:00
sysrescue.d change yaml config loading logic to full merge 2022-04-23 23:18:23 +02:00
website@714bb60df1 SystemRescue-9.02 2022-04-09 11:55:33 +01:00
.gitignore SystemRescueCd-6.0.0 2019-02-02 11:22:52 +00:00
.gitmodules Use the branch which contains the latest version of the website 2022-04-02 13:27:15 +01:00
build.sh use the same content for /etc/os-release and /usr/lib/os-release 2022-03-08 21:38:22 +01:00
ChangeLog add moreutils and python-pythondialog packages 2022-05-09 22:37:45 +02:00
LICENSE Updated LICENCE to follow archiso 2020-07-30 19:54:19 +01:00
mirrorlist-snapshot-i686 Use snapshot archive repo for pacman in SystemRescue by default 2021-12-06 21:06:23 +01:00
mirrorlist-snapshot-x86_64 Build image based on defined repo snapshot date 2021-12-05 00:10:40 +01:00
mkinitcpio.conf Reduce compression ratio for initramfs on i686 to prevent a crash at build time (#261) 2022-02-26 21:25:07 +00:00
packages add moreutils and python-pythondialog packages 2022-05-09 22:37:45 +02:00
pacman.conf Update website address 2020-09-13 13:42:13 +01:00
README.md explain the use of sysrescuerepo for rebuilding SystemRescue 2022-04-02 15:38:33 +02:00
VERSION SystemRescue-9.02 2022-04-09 11:55:33 +01:00

SystemRescue

Project website

Homepage: https://www.system-rescue.org/

Project sources

This git repository contains SystemRescue sources files. This is based on https://gitlab.archlinux.org/archlinux/archiso/

Building SystemRescue

SystemRescue can be built for x86_64 or i686 architectures. It must be built on archlinux if you want to build a 64bit edition, or archlinux32 if you want to create a 32bit edition. The following packages must be installed on the build system: archiso, grub, mtools, edk2-shell, hugo.

You need to use a modified version of archiso for the build to work. This version is provided in the custom sysrescuerepo repository. See the pacman.conf file in the source. Either copy the sysrescuerepo section into your /etc/pacman.conf or replace the whole /etc/pacman.conf file with the one from the source. Install archiso afterwards.

The package list contains packages which are not part of the official binary package repositories from Arch Linux. These packages are also provided in the sysrescuerepo repository. If you want to rebuild them, see systemrescue-custompkg. Create a local repository out of them with repo-add, host it on a webserver and then adapt pacman.conf.

The build process requires the systemrescue-website repository which is included as git submodule. So when checking out this repository, make sure to check out the submodule too. This can be done for example with git clone --recurse-submodules https://gitlab.com/systemrescue/systemrescue-sources.git

The build process can be started by running the build.sh script. It will create a large "work" sub-directory and the ISO file will be written in the "out" sub-directory.

Building SystemRescue with docker

If you are not running archlinux, you can run the build process in docker containers. You need to have a Linux system running with docker installed and configured. You can use the scripts provided in the docker folder of this repository.

You must export the environment variable named sysrescuearch before you run the two helper scripts. It should be set as either x86_64 or i686 depending on the target architecture for which you want to build the ISO image.

After this, you need to run the script which builds a new docker image, and then the script which uses this docker image to builds the ISO image. The second script will pass the arguments it receives to the main build.sh script.

For example you can build a 64bit version of SystemRescue in docker using these commands:

export sysrescuearch="x86_64"
./docker/build-docker-image.sh
./docker/build-iso-image.sh -v

Including your SystemRescueModules

If you want to include your own SystemRescueModules, place their srm files in the srm directory of the repository before running the build script.