\chapter{boot} Le boot (aka bootstrap) est le processus de démarrage d'un ordinateur depuis la mise sous tension, jusque à l'arrivée du shell. Il varie grandement selon l'architecture matérielle de la machine~: \texttt{amd64} pour les pécés de tous les jours, ou bien \texttt{ARM}\footnote{Acorn Risc Machine}\index{ARM} comme sur le \textsl{Raspeberry Pi}. \begin{quote} \textbf{boot :}\footnote{http://www.catb.org/jargon/html/B/boot.html} \textit{[techspeak; from ‘by one's bootstraps’]} To load and initialize the operating system on a machine. This usage is no longer jargon (having passed into techspeak) but has given rise to some derivatives that are still jargon. \end{quote} \section{BIOS}\index{BIOS} À l'origine, sur les ordinateurs de type \texttt{PC} tels que les a voulu BigBlue\index{IBM}, régnait en maitre absolu le BIOS, \textsl{aka Basic Input/Output System}. Un bout de code minimaliste, bien rangé dans sa ROM, et disponible dès la mise sous tension du bouzin. % ========================================================= \section{PXE} \index{PXE} \label{PXE} PXE est le sigle de \textsl{Pre-boot eXecution Environment}. En gros, ça permet de démarrer un système stocké ailleur sur le réseau, comme une image d'installation d'un Linux ou un système de secours. Ce qui est vraiment pratique, car ça évite la valse des clefs USB. Il nécessite la présence d'un serveur dhcpd \index{dhcpd}. % https://www.geoffray-levasseur.org/tutoriels-2/un-pxe-pour-les-unir-tous/ % ========================================================= \section{amd64}\index{amd64} Voir Grub, le bootloader. \section{ARM} XXX\index{XXX}. \section{rc.local} L'exécution de ce script est la toute dernière étape du démarrage d'un système de la famille Unix\index{Unix} avant le passage au mode multi-utilisateur. \textsl{Spécial dedikass to Fred Fermion} Et dans ce contexte (la fin du boot), que peut-on faire à partir du rc.local ?