diff options
Diffstat (limited to '')
-rw-r--r-- | init/README.2 | 4 | ||||
-rw-r--r-- | init/README.2~ | 56 |
2 files changed, 58 insertions, 2 deletions
diff --git a/init/README.2 b/init/README.2 index 03ce196..f148d98 100644 --- a/init/README.2 +++ b/init/README.2 @@ -12,12 +12,12 @@ Résumé rapide des commandes les plus courantes : - rd : passe en mode prompt clavier, en affichant le message. Ne retourne jamais d'erreur. Le prompt compte les niveaux pour s'y retrouver avec les {} :-) - - mt : mount ; um : umount + - mt : mount ; re : remount ; um : umount - mv : mount --move ; bi : mount --bind - ex : exécute dans un sous-process (system()) - /path/prog args : idem. - rx xxx yyy : execute yyy dans chroot xxx; - - md : mkdir ; ln : lien + - md : mkdir ; ln : lien ; rm : unlink ; st : stat - bl,ch,fi : devices block, char, fifo - pr xxx yyy : pivot_root : root -> xxx/yyy ; xxx->root diff --git a/init/README.2~ b/init/README.2~ new file mode 100644 index 0000000..03ce196 --- /dev/null +++ b/init/README.2~ @@ -0,0 +1,56 @@ +Résumé rapide des commandes les plus courantes : + + - { ... } : bloc d'instructions + - &<cmd> : n'exécute CMD que si le retour précédent est OK + - |<cmd> : n'exécute CMD que si le retour précédent est ERR + - !<cmd> : inverse le code de retour de CMD, et peut être + combiné à &,| + + - te VAR=VAL => retourne TRUE si VAR=VAL dans l'env. + - in : spécifie l'init auquel on donne la main + - ec : echo + - rd : passe en mode prompt clavier, en affichant le + message. Ne retourne jamais d'erreur. Le prompt + compte les niveaux pour s'y retrouver avec les {} :-) + - mt : mount ; um : umount + - mv : mount --move ; bi : mount --bind + - ex : exécute dans un sous-process (system()) + - /path/prog args : idem. + - rx xxx yyy : execute yyy dans chroot xxx; + - md : mkdir ; ln : lien + - bl,ch,fi : devices block, char, fifo + - pr xxx yyy : pivot_root : root -> xxx/yyy ; xxx->root + + +C'est une conf opérationnelle de boot avec un linuxrc dans un initrd +et un .preinit sur un CD. +Par défaut, le kernel charge /sbin/init à partir de l'initrd. Ce dernier +est un lien qui pointe vers le script /.linuxrc, référençant lui-même +/linuxrc comme interpréteur. Le résultat est que l'on exécute : + /linuxrc < /sbin/init ce qui revient à /linuxrc < /.linuxrc + +Il est possible de forcer le chemin de linuxrc par 'init=/xxxxx' au boot. + +Ensuite, le script linuxrc monte le CD puis exécute soit /sbin/init, soit +le nom en regard de la ligne 'in xxxx' dans la conf, soit xxxx si +'init2=xxxx' est précisé sur la ligne de commande, soit enfin le paramètre +de 'in' fourni au clavier en mode prompt si "RDSHELL=1" est passé au noyau. + +Le /sbin/init du CD utilise par défaut /.preinit (qu'on aurait pu appeler +en direct par 'init=' venant d'un kernel sans initrd, ou 'init2=' venant +d'un initrd équipé du linuxrc décrit ci-dessus). + +Si le paramètre "RAMCOPY=1" est passé au kernel, alors le script recopie +tout le CD en RAM, puis le démonte. + +Si le paramètre "AUTORUN=1" est passé au kernel, alors il tentera de monter +une disquette en ext2 puis en fat, pour y exécuter /autorun dans un +sous-processus. + +Si le paramètre "INITSHELL=1" est passé au kernel, alors l'utilisateur +récupère un prompt. + +Enfin, le script transfère l'exécution à /sbin/init-sysv, ou au binaire +désigné par 'in' dans le script, ou par celui désigné par le paramètre +"INIT=xxx" passé au kernel. + |