Le fichier facultatif /etc/sysconfig/rc.site
contient les paramètres
réglés automatiquement pour chaque script de démarrage. Il peut aussi
contrôler les valeurs des fichiers hostname
, console
et
clock
du répertoire /etc/sysconfig/
. Si les variables associées se
trouvent à la fois dans ces fichiers distincts et dans rc.site
, les valeurs des fichiers spécifiques ont
la préséance.
rc.site
contient aussi des paramètres
pour personnaliser d'autres aspects du processus de démarrage. Le
réglage de la variable IPROMPT permettra un lancement sélectif des
scripts de démarrage. D'autres options sont décrites dans les
commentaires du fichier. La version par défaut du fichier est
ci-dessous :
# rc.site # Optional parameters for boot scripts. # Distro Information # These values, if specified here, override the defaults #DISTRO="Linux From Scratch" # The distro name #DISTRO_CONTACT="lfs-dev@linuxfromscratch.org" # Bug report address #DISTRO_MINI="LFS" # Short name used in filenames for distro config # Define custom colors used in messages printed to the screen # Please consult `man console_codes` for more information # under the "ECMA-48 Set Graphics Rendition" section # # Warning: when switching from a 8bit to a 9bit font, # the linux console will reinterpret the bold (1;) to # the top 256 glyphs of the 9bit font. This does # not affect framebuffer consoles # These values, if specified here, override the defaults #BRACKET="\\033[1;34m" # Blue #FAILURE="\\033[1;31m" # Red #INFO="\\033[1;36m" # Cyan #NORMAL="\\033[0;39m" # Grey #SUCCESS="\\033[1;32m" # Green #WARNING="\\033[1;33m" # Yellow # Use a colored prefix # These values, if specified here, override the defaults #BMPREFIX=" " #SUCCESS_PREFIX="${SUCCESS} * ${NORMAL}" #FAILURE_PREFIX="${FAILURE}*****${NORMAL}" #WARNING_PREFIX="${WARNING} *** ${NORMAL}" # Interactive startup #IPROMPT="yes" # Whether to display the interactive boot prompt #itime="3" # The amount of time (in seconds) to display the prompt # The total length of the distro welcome string, without escape codes #wlen=$(echo "Welcome to ${DISTRO}" | wc -c ) #welcome_message="Welcome to ${INFO}${DISTRO}${NORMAL}" # The total length of the interactive string, without escape codes #ilen=$(echo "Press 'I' to enter interactive startup" | wc -c ) #i_message="Press '${FAILURE}I${NORMAL}' to enter interactive startup" # Set scripts to skip the file system check on reboot #FASTBOOT=yes # Skip reading from the console #HEADLESS=yes # Write out fsck progress if yes #VERBOSE_FSCK=no # Speed up boot without waiting for settle in udev #OMIT_UDEV_SETTLE=y # Speed up boot without waiting for settle in udev_retry #OMIT_UDEV_RETRY_SETTLE=yes # Skip cleaning /tmp if yes #SKIPTMPCLEAN=no # For setclock #UTC=1 #CLOCKPARAMS= # For consolelog #LOGLEVEL=5 # For network #HOSTNAME=mylfs # Delay between TERM and KILL signals at shutdown #KILLDELAY=3 # Optional sysklogd parameters #SYSKLOGD_PARMS="-m 0" # Console parameters #UNICODE=1 #KEYMAP="de-latin1" #KEYMAP_CORRECTIONS="euro2" #FONT="lat0-16 -m 8859-15" #LEGACY_CHARSET=
Les scripts de démarrage LFS démarrent et arrêtent un système d'une
façon très efficace, mais vous pouvez faire quelques bidouillages
dans le fichier rc.site pour améliorer encore davantage la vitesse
et ajuster les messages selon vos préférences. Pour cela, ajustez
les paramètres du fichier /etc/sysconfig/rc.site
ci-dessus.
Pendant le script de démarrage udev
, un appel à udev settle demande du
temps pour s'achever. Ce temps peut être ou pas nécessaire
pour des périphériques présents dans votre système. Si vous
n'avez que des partitions simples et une seule carte
ethernet, le processus de démarrage n'aura probablement pas
besoin d'attendre cette commande. Pour la sauter, définissez
la variable OMIT_UDEV_SETTLE=y.
Le script de démarrage udev_retry
lance aussi par défaut
udev settle.
Cette commande n'est nécessaire par défaut que si le
répertoire /var
est monté
séparément. Ceci car la vérification a besoin du fichier
/var/lib/hwclock/adjtime
.
D'autres personnalisations peuvent nécessiter d'attendre
qu'udev se termine mais dans beaucoup d'installations, ce
n'est pas nécessaire. Sautez la commande en définissant la
variable OMIT_UDEV_RETRY_SETTLE=y.
Par défaut, les vérifications des systèmes de fichiers sont sans message. Cela peut être vu comme un délai pendant le processus de démarrage. Pour activer la sortie de fsck, définissez la variable VERBOSE_FSCK=y.
Lors du redémarrage, il se peut que vous vouliez sauter la
vérification du système de fichiers, fsck, complètement. Pour
cela, soit créez le fichier /fastboot
, soit redémarrez le système avec
la commande /sbin/shutdown -f
-r now. Inversement, vous pouvez forcer la
vérification de tous les systèmes de fichiers en créant
/forcefsck
ou en lançant
shutdown avec
le paramètre -F
plutôt que -f
.
La définition de la variable FASTBOOT=y désactivera fsck lors du processus de démarrage jusqu'à ce qu'il soit supprimé. Ce n'est pas recommandé de façon permanente.
En principe, tous les fichiers du répertoire /tmp
sont effacés au moment du démarrage.
Selon le nombre de fichiers ou de répertoires présents, cela
peut provoquer un délai important dans le processus de
démarrage. Pour sauter la suppression de ces fichiers,
définissez la variable SKIPTMPCLEAN=y.
Lors de l'extinction, le programme init envoie un signal TERM à chaque programme qu'il a démarré (comme agetty), il attend un moment de définition (par défaut, 3 secondes), et il envoie à chaque processus un signal KILL puis attend de nouveau. Ce processus se répète dans le script sendsignals pour tous les processus non terminés par leurs propres scripts. Le délai de init peut être défini en passant un paramètre. Par exemple, pour supprimer le délai dans init, passez le paramètre -t0 lors de l'extinction ou du redémarrage (comme /sbin/shutdown -t0 -r now). Le délai du script sendsignals peut être sauté en définissant le paramètre KILLDELAY=0.