The ldconfig service ("Rebuild Dynamic Linker Cache") updates /etc/ld.so.cache when it is
older than some preconfigured age. This increases boot time, especially when airootfs is
on a slower media, like a DVD-ROM drive or NFS. Since System Rescue doesn't change over time,
keeping the original file from release is fine.
You can't easily update the kernel from within a running System Rescue.
Updating the kernel will create conflicts of the new kernel modules and the still running kernel.
This has been a problem in the past, see for example #238. So better prevent it.
This prevents huge dependency downloads by pacman when the SystemRescue version gets older
by using a snapshot repo from the day the SystemRescue version is released.
The classic rolling repos from Arch are also available as option. Activate with the
"--config /etc/pacman-rolling.conf" option to pacman.
To allow switching on a per-command basis, two different sets of remote package databases
are required. But the local package database must be the same for both variants. This
is achived by using two different DBPaths in the pacman config files and bind-mounting
the local part together. pacman does not accept symlinks for this, so it must be a bind mount.
On newer systems /bin is linked to /usr/bin, the same goes for /sbin.
This is called usrmerge. Some distributions seem to have introduced
usrmerge just very recently, like openSUSE in 2021. So SystemRescue
should fully support this for years to come.
So we need /bin, /sbin and /usr/sbin in the default $PATH to make it
easy to use from within a chroot.
Quiet ("hushed") login disables email check, last login printing and message of the
day. Neither of these are useful for SystemRescue. Arch's default configuration
(/etc/login.defs) only allows per user setting (~/.hushlogin).
-p: prepare mode. Only prepares a directory with all files that would go into the SRM,
but does not run mksquashfs. This allows further modifications by the user.
In prepare mode the target file parameter is ignored.
This prevents trying to create the directories twice by removing duplicate
entries from the file list. Saves about 3 seconds of runtime when testing
with the "atom" package.
Create SystemRescueModules (SRM) from pacman packages installed into the COW space
This script is meant to help creating SystemRescueModules (SRM) for SystemRescue.
More info about SRMs and this script can be found at:
https://www.system-rescue.org/Modules/
To use first install all packages you want to have in your SRM with pacman.
Default COW (Copy-On-Write) space is a ramdisk, so you usually don't have to do anything
special except provide enough RAM.
You can also enable any systemd services that are in these packages.
Then call:
cowpacman2srm [-c compalg] [-l complevel] targetfile.srm
Copy the .srm file to archisobasedir (default: "sysresccd") on your boot disk
and add the "loadsrm" boot parameter to SystemRescue.
There is no mechanism to check if a SRM is compatible with the version of SystemRescue
you are trying to run it with. So it is higly recommended to only use this script on
the exact version of SystemRescue you plan to use the SRM with.