1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405
|
.\" -*- nroff -*-
.\" This man-page is Copyright (C) 1997 John S. Kallal
.\"
.\" Permission is granted to make and distribute verbatim copies of this
.\" manual provided the copyright notice and this permission notice are
.\" preserved on all copies.
.\"
.\" Permission is granted to copy and distribute modified versions of this
.\" manual under the conditions for verbatim copying, provided that the
.\" entire resulting derived work is distributed under the terms of a
.\" permission notice identical to this one
.\"
.\" Since the Linux kernel and libraries are constantly changing, this
.\" manual page may be incorrect or out-of-date. The author(s) assume no
.\" responsibility for errors or omissions, or for damages resulting from
.\" the use of the information contained herein. The author(s) may not
.\" have taken the same level of care in the production of this manual,
.\" which is licensed free of charge, as they might when working
.\" professionally.
.\"
.\" Formatted or processed versions of this manual, if unaccompanied by
.\" the source, must acknowledge the copyright and author(s) of this work.
.\"
.\" If the you wish to distribute versions of this work under other
.\" conditions than the above, please contact the author(s) at the following
.\" for permission:
.\"
.\" John S. Kallal -
.\" email: <kallal@voicenet.com>
.\" mail: 518 Kerfoot Farm RD, Wilmington, DE 19803-2444, USA
.\" phone: (302)654-5478
.\"
.\" $Id: initrd.4,v 0.9 1997/11/07 05:05:32 kallal Exp kallal $
.\" Traduction 31/05/1998 par Christophe Blaess (ccb@club-internet.fr)
.\" LDP-man-pages-1.19
.\" MJ 25/07/2003 LDP-1.56
.TH INITRD 4 "25 juillet 2003" LDP "Manuel du programmeur Linux"
.SH NOM
initrd \- Disque RAM initialis au dmarrage du systme.
.SH DESCRIPTION
Le fichier spcial
.B /dev/initrd
est un priphrique bloc en lecture seule.
Ce priphrique
.B /dev/initrd
est un disque RAM qui est initialis par le chargeur du systme avant le
dmarrage du noyau.
Ainsi, le noyau peut utiliser le contenu de ce priphrique bloc
pour un dmarrage en deux phases.
.PP
Durant la premire phase, le noyau dmarre et monte la racine du systme de fichiers
depuis le contenu de
.B /dev/initrd
(par exemple un disque RAM initialis par le chargeur).
Durant la seconde phase, les drivers supplmentaires, et les autres modules
sont chargs depuis le priphrique racine initial.
Aprs le chargement de ces modules supplmentaires, une nouvelle racine du systme de
fichiers est monte partir d'un priphrique diffrent.
.SH "DMARRAGE DU SYSTME"
Quand il dmarre en utilisant \fBinitrd\fP, le systme procde comme suit:
.RS 0.2i
.PP
1. Le chargeur place une copie du noyau en mmoire, ainsi que le
contenu de \fB/dev/initrd\fP.
.PP
2. Au dmarrage du noyau, celui-ci dcompresse et recopie le contenu du
priphrique
.B /dev/initrd
sur le disque virtuel
.B /dev/ram0
puis libre la mmoire utilise par
.BR /dev/initrd "."
.PP
3. Le noyau monte en lecture-criture le priphrique
.B /dev/ram0
comme racine initiale du systme de fichiers.
.PP
4. Si la racine dsire pour le systme de fichiers est galement
celle que l'on vient de monter (par ex. \fB/dev/ram0\fP), le noyau
passe directement la dernire tape du dmarrage.
.PP
5. Si un fichier excutable \fB/linuxrc\fP est prsent sur le systme
de fichiers racine initial, ce fichier est excut avec l'uid 0.
(Le fichier
.B /linuxrc
doit avoir la permission d'excution. Ce peut tre n'importe quel
excutable, y compris un shell-script.)
.PP
6. Si
.B /linuxrc
n'est pas excut ou lorsqu'il se termine,
la racine normale du systme de fichiers est monte.
(Si
.BR /linuxrc
se termine en ayant mont d'autres systmes de fichiers sur la racine
initiale, alors le comportement du noyau est
.BR INDTERMIN "."
Voir le paragraphe
.BR NOTES
pour le comportement effectif.)
.PP
7. Si la racine normale dispose d'un rpertoire
.BR /initrd ,
le priphrique
.B /dev/ram0
est dplac depuis
.BR / " vers " /initrd "."
Sinon, si le rpertoire
.B /initrd
n'existe pas, le priphrique
.B /dev/ram0
est dmont.
(Lors du dplacement de
.BR / " vers " /initrd ", " /dev/ram0
n'est pas dmont, aussi des processus peuvent continuer s'excuter depuis ce priphrique.
Si le rpertoire
.BR /initrd
n'existe pas sur le systme de fichiers normal, et si des processus continuent s'excuter
depuis
.BR /dev/ram0 " lorsque " /linuxrc
se termine, le comportement du noyau est
.BR INDTERMIN "."
Voir le paragraphe
.BR NOTES
pour le comportement effectif.)
.PP
8. La squence de dmarrage habituelle (invocation de
.BR /sbin/init )
est alors effectue depuis le systme de fichiers normal.
.\"
.SH OPTIONS
Lorsque l'on utilise
.BR initrd ,
les options suivantes du chargeur affectent les opration
de dmarrage du noyau:
.TP
.BI initrd= "nom_de_fichier"
Indique le fichier charger comme contenu de
.BR /dev/initrd "."
Pour \fBLOADLIN\fP, il s'agit d'une option en ligne de commande.
Pour \fBLILO\fP il faut utiliser cette commande dans le fichier
de configuration \fI/etc/lilo.config\fP.
Le fichier mentionn avec cette option sera typiquement une image
compresse par
.BR gzip (1),
du systme de fichiers.
.TP
.B noinitrd
Cette option dsactive le dmarrage en deux tapes. Le noyau se
comporte comme si
.B /dev/initrd
n'tait pas initialis. Avec cette option, le contenu de
.BR /dev/initrd ,
une fois charg en mmoire sera prserv. Ce contenu peut alors
tre n'importe quelle donne, et pas uniquement une image d'un
systme de fichiers.
Nanmoins, le priphrique
.B /dev/initrd
est en lecture seule, et ne peut tre lu qu'une seule fois aprs
le dmarrage du systme.
.TP
.BI root= "nom_de_priphrique"
Indique le nom du priphrique utiliser comme racine normale du systme de fichiers.
Pour \fBLOADLIN\fP, il s'agit d'une option en ligne de commande.
Pour \fBLILO\fP il faut utiliser cette commande dans le fichier
de configuration \fI/etc/lilo.config\fP.
Le priphrique indiqu ici doit tre montable et contenir un systme de fichiers convenable.
.\"
.SH "MODIFICATION DE LA RACINE DU SYSTME DE FICHIERS"
Le systme de fichiers utilis comme racine par dfaut est celui
qui est compil dans le noyau (ou configur avec
.BR rdev ),
ou celui qui est spcifi par une option du chargeur.
Pour accder un systme de fichiers mont par NFS, il faut utiliser les
options de dmarrage
.BR nfs_root_name " et " nfs_root_addrs
pour la configuration NFS.
Pour plus d'information sur les racines de systmes de fichiers montes par NFS,
consultez le fichier
.BR nfsroot.txt ,
dans la documentation du noyau.
Pour plus d'informations sur la configuration de la racine du systme de fichiers,
voyez galement les documentations de
.BR LILO " et " LOADLIN .
.PP
On peut aussi faire effectuer la modification de la racine normale par l'excutable
.BR /linuxrc .
Pour ce faire, le systme
.B /proc
doit tre mont. Ensuite,
.B /linuxrc
modifie le priphrique racine en crivant directement dans les fichiers
.BR /proc/sys/kernel/real-root-dev ", "
.BR /proc/sys/kernel/nfs-root-name ", et "
.BR /proc/sys/kernel/nfs-root-addrs "."
Pour un priphrique physique mont la racine, le changement s'effectue
en crivant le numro de priphrique du nouveau systme de fichiers dans
.BR /proc/sys/kernel/real-root-dev "."
Pour un systme mont par NFS, la modification se fait en crivant la configuration
NFS dans les fichiers
.BR /proc/sys/kernel/nfs-root-name " et "
.BR /proc/sys/kernel/nfs-root-addrs
puis en inscrivant 0xff (c.--d. le numro de pseudo-priphrique NFS) dans le fichier
.BR /proc/sys/kernel/real-root-dev "."
Par exemple, la ligne de commande suivant basculerait le priphrique racine normale
sur
.BR /dev/hdb1 :
.nf
echo 0x365 >/proc/sys/kernel/real-root-dev
.fi
La ligne suivante modifierait le priphrique normal en un rpertoire NFS
.BR /var/nfsroot
sur un serveur local ayant l'adresse IP 193.8.232.7, ceci sur un systme nomm idefix,
se trouvant l'adresse 193.8.232.7:
.nf
echo /var/nfsroot >/proc/sys/kernel/nfs-root-name
echo 193.8.232.2:193.8.232.7::255.255.255.0:idefix \\
>/proc/sys/kernel/nfs-root-addrs
echo 255 >/proc/sys/kernel/real-root-dev
.fi
.\"
.SH "UTILISATION"
L'intrt principal d'implmenter
.BR initrd
tait de permettre une configuration modulaire du noyau lors de l'installation
du systme.
.PP
Un scnario possible d'installation est le suivant:
.RS 0.2i
.PP
1. Le programme de chargement dmarre depuis une disquette, ou un autre support,
avec un noyau minimal (par exemple les supports pour
.BR /dev/ram ", " /dev/initrd ,
et le systme de fichiers ext2). Puis charge
.BR /dev/initrd
depuis une version compresse avec gzip d'un systme de fichiers initial.
.PP
2. L'excutable
.BR /linuxrc
dtermine ce qui est ncessaire pour (1) monter le systme de fichiers
normal (pilotes de priphriques, systmes de fichiers) et (2) utiliser
le support fourni pour la distribution (CD-ROM, rseau, bande magntique).
Cette tape peut tre effectu en interrogeant l'utilisateur, en effectuant
des tests de dtection automatique, ou en utilisant une approche hybride entre
les deux.
.PP
3. L'excutable
.BR /linuxrc
charge les modules ncessaires depuis le systme de fichiers initial.
.PP
4. L'excutable
.BR /linuxrc
cre et remplit le systme de fichiers racine. (A cet instant, le systme
de fichiers racine n'est pas ncessairement complet).
.PP
5. L'excutable
.BR /linuxrc " configure " /proc/sys/kernel/real-root-dev,
dmonte
.BR /proc ", "
le systme de fichiers normal, et tout autre systme de fichiers qu'il
a ventuellement mont, et se termine.
.PP
6. Le noyau monte alors le systme de fichiers racine normal.
.PP
7. Maintenant que le systme de fichiers est accessible,
le chargeur peut tre install.
.PP
8. Le chargeur est configur pour installer dans
.BR /dev/initrd
un systme de fichiers disposant de l'ensemble des modules qui ont t utiliss pour
dmarrer le systme.
(par exemple un priphrique comme
.BR /dev/ram0
peut tre modifi, puis dmont, et finalement l'image est recopie depuis
.BR /dev/ram0
vers un fichier.)
.PP
9. Le systme est maintenant prt redmarrer, et les tches supplmentaires
d'installation peuvent tre effectues.
.RE
.PP
Le principal avantage offert par
.BR /dev/initrd
dans ce scnario est de permettre de rutiliser les donnes de configuration
lors du fonctionnement normal du noyau, sans ncessiter de choisir un noyau
initial, d'utiliser un gros noyau gnrique, ou de recompiler le noyau aprs
l'installation.
.PP
Un second scnario sert l'installation
de Linux sur un rseau constitu de machines configures diffremment.
Dans ce cas, il peut tre prfrable de n'utiliser qu'un nombre minimal
de noyaux (voire un seul dans le meilleur des cas), et de ne stocker
qu'une quantit la plus faible possible d'information de configuration.
Ainsi, on cre un fichier commun contenant tous les modules ncessaires,
et seul le fichier
.BR /linuxrc ,
ou les fichiers qu'il lance,
changent suivant les machines.
.PP
Un troisime scnario permet de disposer de disques de secours les plus
confortables possible. Les informations comme l'emplacement du systme
de fichiers racines, etc. ne sont pas indispensables lors du dmarrage.
Le systme charg par
.B /dev/initrd
peut utiliser des menus de dialogue et/ou des dtections automatiques suivi
de vrification de cohrence du systme.
.PP
Enfin, et c'est peut-tre l'usage le plus important, les distributions de
Linux sur CD-ROM permettent une installation plus aise.
La distribution peut utiliser directement
.BR LOADLIN
pour charger
.BR /dev/initrd
depuis le CD-ROM sans avoir besoin de crer de disquettes.
La distribution peut galement utiliser une disquette de dmarrage avec
.BR LILO
puis charger un disque ram par l'intermdiaire de
.BR /dev/initrd " depuis le CD-ROM."
.\"
.\"
.\"
.SH CONFIGURATION
.B /dev/initrd
est un priphrique bloc en lecture-seule, dont le numro majeur est 1,
et le mineur 250.
Typiquement,
.B /dev/initrd
appartient
.B root.disk
et dispose du mode 0400 (lecture uniquement par root).
Si votre systme Linux n'a pas encore de fichier
.BR /dev/initrd ,
vous pouvez le crer en utilisant les commandes suivantes :
.nf
\fB
mknod -m 400 /dev/initrd b 1 250
chown root:disk /dev/initrd
\fP
.fi
Il faut galement que les options "disque Ram" et "Disque Ram initial"
(par exemple
.BR CONFIG_BLK_DEV_RAM=y " et " CONFIG_BLK_DEV_INITRD=y
) soient compiles directement dans le noyau Linux pour pouvoir utiliser
.BR /dev/initrd "."
Lors de l'utilisation de
.BR /dev/initrd ", "
le pilote de disque Ram ne peut pas tre charg en tant que module.
.\"
.\"
.\"
.SH FICHIERS
.I /dev/initrd
.br
.I /dev/ram0
.br
.I /linuxrc
.br
.I /initrd
.SH "VOIR AUSSI"
.BR chown (1),
.BR mknod (1),
.BR ram (4),
.BR freeramdisk (8),
.BR rdev (8),
Le fichier
.I initrd.txt
dans les sources du noyau, la documentation de LILO, celle de LOADLIN,
et la documentation SYSLINUX.
.\"
.SH NOTES
1. Avec le noyau actuel, tout systme de fichier reste mont lors du dplacement
de
.BR /dev/ram0 " depuis " / " vers " /initrd ,
et continue tre accessible. Nanmoins, les entres de
.BR /proc/mounts
ne sont pas mises jour.
.PP
2. Avec le noyau actuel, si le rpertoire
.BR /initrd " n'existe pas, alors " /dev/ram0
ne sera PAS compltement dmont si
.BR /dev/ram0
est utilis par un processus ou si un systme de fichiers a t mont dessus.
Si
.BR /dev/ram0 " n'est PAS compltement dmont, "
alors
.BR /dev/ram0
restera charg en mmoire.
.PP
3. Les utilisateurs de
.BR /dev/initrd
ne doivent pas compter sur les comportements dcrits dans les deux notes
prcdentes. Ces comportements peuvent changer dans les versions futures
du noyau Linux.
.\"
.SH AUTEURS
Le code du noyau pour le priphrique
.BR initrd
a t crit par Werner Almesberger <almesber@lrc.epfl.ch> et
Hans Lermen <lermen@elserv.ffm.fgan.de>.
Le code de
.BR initrd
a t introduit dans le noyau Linux de base dans la version de dveloppement 1.3.73.
.SH TRADUCTION
Christophe Blaess, 1998-2003.
|