Subversion Repositories svn LFS-FR

Compare Revisions

Ignore whitespace Rev 1425 → Rev 1426

/branches/lfs-7.0-fr/chapter01/whatsnew.xml
150,9 → 150,9
<!--<listitem>
<para>Mktemp &mktemp-version;</para>
</listitem>-->
<!--<listitem>
<listitem>
<para>Module-Init-Tools &module-init-tools-version;</para>
</listitem>-->
</listitem>
<listitem>
<para>MPC &mpc-version;</para>
</listitem>
172,9 → 172,6
<para>Procps &procps-version;</para>
</listitem>-->
<listitem>
<para>Pkg-config &pkg-config-version;</para>
</listitem>
<listitem>
<para>Psmisc &psmisc-version;</para>
</listitem>
<!--<listitem>
248,7 → 245,7
<para>&gcc-startfiles-patch;</para>
</listitem>
<listitem>
<para>Glib-&glib-version;</para>
<para>&gcc-locale-patch;</para>
</listitem>
<listitem>
<para>&glibc-fixes-patch;</para>
263,7 → 260,7
<para>libpipeline-&libpipeline-version;</para>
</listitem>
<listitem>
<para>PCRE-&pcre-version;</para>
<para>&module-init-tools-man-patch;</para>
</listitem>
<listitem>
<para>perl-5.14.1-libc-1.patch</para>
295,6 → 292,9
<listitem>
<para>perl-5.12.3-libc-1.patch</para>
</listitem>
<listitem>
<para>Pkg-Config-0.25</para>
</listitem>
 
</itemizedlist>
 
/branches/lfs-7.0-fr/chapter01/changelog.xml
38,6 → 38,291
 
-->
<listitem>
<para>13-10-2011</para>
<itemizedlist>
<listitem>
<para>[bdubbs] - Ajout d'Xz aux prérequis car Coreutils n'est désormais
plus fourni qu'au format .xz.</para>
</listitem>
<listitem>
<para>[bdubbs] - Modification de l'emplacement du fichier pour kbd, udev,
util-linux et moduule-utils en anduin jusqu'à ce que lernel.org se
repeuple.</para>
</listitem>
<listitem>
<para>[bdubbs] - Passage à Coreutils-8.14. Corrige
<ulink url="&lfs-ticket-root;2945">#2945</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
 
<listitem>
<para>12-10-2011</para>
<itemizedlist>
<listitem>
<para>[matthew] - Correction effective du correctif Coreutils i18n
pour qu'il lance et saute de nouveau tous les tests.</para>
</listitem>
<listitem>
<para>[matthew] - Passage à MPFR-3.1.0. Corrige
<ulink url="&lfs-ticket-root;2934">#2934</ulink>.</para>
</listitem>
 
<listitem>
<para>[matthew] - Passage à Module-Init-Tools-3.16. Corrige
<ulink url="&lfs-ticket-root;2882">#2882</ulink>.</para>
</listitem>
<listitem>
<para>[matthew] - Passage à Glibc-2.14.1. Corrige
<ulink url="&lfs-ticket-root;2940">#2940</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
 
<listitem>
<para>10-10-2011</para>
<itemizedlist>
<listitem>
<para>[bdubbs] - Ajout d'un correctif à gcc pour corriger quelques
tests de locales. Corrige
tests.
<ulink url="&lfs-ticket-root;2938">#2938</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Ajout d'un paragraphe au chapitre 3.1 sur
l'obtention et l'utilisation des sommes de contrôle MD5 des paquets
du livre.</para>
</listitem>
</itemizedlist>
</listitem>
 
<listitem>
<para>08-10-2011</para>
<itemizedlist>
<listitem>
<para>[bdubbs] - Passage à man-pages-3.35. Corrige
<ulink url="&lfs-ticket-root;2936">#2936</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Add additional environment variable
to man-db.</para>
</listitem>
</itemizedlist>
</listitem>
 
<listitem>
<para>07-10-2011</para>
<itemizedlist>
<listitem>
<para>[bdubbs] - Petite mise à jour du Makefile des scripts de
démarrage. Corrige
<ulink url="&lfs-ticket-root;2939">#2939</ulink>.
</para>
</listitem>
 
<listitem>
<para>[matthew] - Suppression de Pkg-Config et de ses dépendances,
PCRE et Glib. On peut construire E2fsprogs, Man-DB et Udev sans
Pkg-Config, et les dernières versions de Glib représentent un peu
trop pour LFS.</para>
</listitem>
</itemizedlist>
</listitem>
 
<listitem>
<para>06-10-2011</para>
<itemizedlist>
<listitem>
<para>[bryan] - Correction du script udev_retry et ajout d'une
explication sur la manière de le configurer.</para>
</listitem>
</itemizedlist>
</listitem>
 
<listitem>
<para>10-05-2011</para>
<itemizedlist>
<listitem>
<para>[bdubbs] - Ajout d'un petit changement fait en amont à gmp.
Corrige
<ulink url="&lfs-ticket-root;2935">#2935</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
 
<listitem>
<para>02-10-2011</para>
<itemizedlist>
<listitem>
<para>[matthew] - Correction du correctif d'internationalisation de
Coreutils pour qu'il lance et saute de nouveau les tests.</para>
</listitem>
</itemizedlist>
</listitem>
 
<listitem>
<para>29-09-2011</para>
<itemizedlist>
<listitem>
<para>[matthew] - Ajout d'un correctif pour corriger plusieurs bogues
de MPFR. Corrige
<ulink url="&lfs-ticket-root;2918">#2918</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
 
<listitem>
<para>26-09-2011</para>
<itemizedlist>
<listitem>
<para>[matthew] - Passage à Perl-5.14.2. Corrige
<ulink url="&lfs-ticket-root;2933">#2933</ulink>.</para>
</listitem>
 
<listitem>
<para>[matthew] - Passage à File-5.09. Corrige
<ulink url="&lfs-ticket-root;2932">#2932</ulink>.</para>
</listitem>
 
<listitem>
<para>[matthew] - Passage à Coreutils-8.13. Corrige
<ulink url="&lfs-ticket-root;2928">#2928</ulink>.</para>
</listitem>
 
<listitem>
<para>[matthew] - Ajout d'une correction de bogue pour Glibc, qui
faisait tomber en erreur de segmentation les programmes qui étaient
liés à SDL. Corrige
<ulink url="&lfs-ticket-root;2920">#2920</ulink>.</para>
</listitem>
 
<listitem>
<para>[matthew] - Passage à Diffutils-3.2. Corrige
<ulink url="&lfs-ticket-root;2919">#2919</ulink>.</para>
</listitem>
<listitem>
<para>[bdubbs] - Correction de la syntaxe dans le script de démarrage
modules.</para>
</listitem>
</itemizedlist>
</listitem>
 
<listitem>
<para>23-09-2011</para>
<itemizedlist>
<listitem>
<para>[bdubbs] - Permission que des variables de rc.site prennent
le dessus sur celles par défaut.</para>
</listitem>
</itemizedlist>
</listitem>
 
<listitem>
<para>22-09-2011</para>
<itemizedlist>
<listitem>
<para>[bdubbs] - Mise à jour du script console de
lfs-bootscripts.</para>
</listitem>
</itemizedlist>
</listitem>
 
<listitem>
<para>21-09-2011</para>
<itemizedlist>
<listitem>
<para>[bdubbs] - Mise à jour du Makefile de lfs-bootscripts.</para>
</listitem>
</itemizedlist>
</listitem>
 
<listitem>
<para>18-09-2011</para>
<itemizedlist>
<listitem>
<para>[bdubbs] - Relecture et répercution des changements récents sur
les scripts de démarrage.</para>
<itemizedlist>
<listitem><para>Renommage de /etc/sysconfig/init_params en /etc/sysconfig/rc.site.</para>
</listitem>
<listitem><para>Déplacement de network services vers /lib/services.</para></listitem>
<listitem><para>Déplacement d'init-functions vers /lib/lsb.</para></listitem>
<listitem><para>/lib/lsb devient un lien symbolique vers /lib/services.</para></listitem>
<listitem><para>Création d'un lien symbolique commode /etc/init.d->/etc/rc.d/init.d
</para></listitem>
<listitem><para>Ajout d'une aide et de pages de man à ifup/ifdown.
</para></listitem>
<listitem><para>Renvoi de /run/var/bootlog vers /var/log/boot.log
à la fin de la séquence d'amorçage.</para></listitem>
<listitem><para>Ajout de la possibilité de retracer pas à pas
les scripts de démarrage au moment de l'amorçage.
</para></listitem>
<listitem><para>Possibilité facultative de mettre les variables
d'environnement des fichiers console, network, et clock
du répertoire sysconfig dans rc.site.
</para></listitem>
<listitem><para>Ajout d'un paramètre FASTBOOT facultatif pour
régler /fastboot lors du redémarrage.
</para></listitem>
</itemizedlist>
</listitem>
<listitem>
<para>[bdubbs] - Suppression d'un léger message d'avertissement d'udev
provoqué par le script de démarrage udev_retry.</para>
</listitem>
<listitem>
<para>[bdubbs] - Ajout de SKIPTMPCLEAN comme paramètre facultatif
pour passer le nettoyage de /tmp au moment du démarrage.</para>
</listitem>
<listitem>
<para>[bdubbs] - Ajout d'une page au chapitre 7 documentant rc.site.</para>
</listitem>
</itemizedlist>
</listitem>
 
<listitem>
<para>04-09-2011</para>
<itemizedlist>
<listitem>
<para>[bdubbs] - Correction d'une fonction popt cassée dans
pkg-config.</para>
</listitem>
 
<listitem>
<para>[bdubbs] - Suppression de la substitution de mountpoint de
sysvinit à celui d'util-linux.</para>
</listitem>
</itemizedlist>
</listitem>
 
<listitem>
<para>03-09-2011</para>
<itemizedlist>
<listitem>
<para>[bdubbs] - Correction de la version du répertoire extrait de
binutils dans les instructions de construction de binutils. Ceci
sera inversé dès la prochaine version en amont, lorsque la version
de l'archive tar sera de nouveau synchronisée avec le nom du
répertoire.</para>
</listitem>
<listitem>
<para>[bdubbs] - Correction des scripts de démarrage pour exporter
correctement la variable IN_BOOT.</para>
</listitem>
</itemizedlist>
</listitem>
 
<listitem>
<para>31-08-2011</para>
<itemizedlist>
<listitem>
<para>[bdubbs] - Suppression de la création d'un fichier malicieux
dans la suite de tests de grep.</para>
</listitem>
</itemizedlist>
</listitem>
 
<listitem>
<para>29-08-2011</para>
<itemizedlist>
<listitem>
/branches/lfs-7.0-fr/chapter03/introduction.xml
28,7 → 28,7
(<ulink url="http://www.google.com/"/>) offre un moteur de recherche
utile pour la plupart des paquets. Si cette recherche est
infructueuse, essayez un des autres moyens de téléchargement
disponible sur url="&lfs-root;lfs/packages.html#packages"/>.</para>
disponible sur <ulink url="&lfs-root;lfs/packages.html#packages"/>. </para>
 
<para>Les paquets et les correctifs téléchargés doivent être stockés
quelque part où ils seront facilement disponibles pendant toute la
58,6 → 58,16
est d'utiliser <ulink url="../wget-list">wget-list</ulink> comme entrée
pour <command>wget</command>. Par exemple&nbsp;:</para>
<screen role="nodump"><userinput>wget -i wget-list -P $LFS/sources</userinput></screen>
<screen role="nodump"><userinput>wget -i wget-list -P $LFS/sources</userinput></screen>
 
<para>En outre, à partir de LFS-7.0, il existe un fichier séparé,
<ulink url="../md5sums">md5sums</ulink>, can be utilisé pour vérifier que
tous les paquets sont disponibles avant de continuer. Mettez ce fichier
dans <filename class="directory">$LFS/sources</filename> et lancez&nbsp;:</para>
 
<screen role="nodump"><userinput>pushd $LFS/sources
md5sum -c md5sums
popd</userinput></screen>
 
 
</sect1>
/branches/lfs-7.0-fr/chapter03/patches.xml
99,6 → 99,14
</listitem>
</varlistentry>
 
<varlistentry>
<term>GCC correctif Locale - <token>&gcc-locale-patch-size;</token>&nbsp;:</term>
<listitem>
<para>Téléchargement&nbsp;: <ulink url="&patches-root;&gcc-locale-patch;"/></para>
<para>Somme de contrôle MD5&nbsp;: <literal>&gcc-locale-patch-md5;</literal></para>
</listitem>
</varlistentry>
 
<!--<varlistentry>
<term>GRUB Correctif de Géométrie du disque - <token>&grub-geometry-patch-size;</token>:</term>
<listitem>
123,6 → 131,13
</listitem>
</varlistentry>
 
<varlistentry>
<term>Module Init Tools - <token>&module-init-tools-man-patch-size;</token>&nbsp;:</term>
<listitem>
<para>Téléchargement&nbsp;: <ulink url="&patches-root;&module-init-tools-man-patch;"/></para>
<para>Somme de contrôle MD5&nbsp;: <literal>&module-init-tools-man-patch-md5;</literal></para>
</listitem>
</varlistentry>
 
<varlistentry>
<term>Patch Correctif suite de tests - <token>&patch-test-patch-size;</token>&nbsp;:</term>
/branches/lfs-7.0-fr/chapter03/packages.xml
69,6 → 69,15
</varlistentry>
 
<varlistentry>
<term>Check (&check-version;) - <token>&check-size;</token>&nbsp;:</term>
<listitem>
<para>Page d'accueil&nbsp;: <ulink url="&check-home;"/></para>
<para>Téléchargement&nbsp;: <ulink url="&check-url;"/></para>
<para>Somme de contrôle MD5&nbsp;: <literal>&check-md5;</literal></para>
</listitem>
</varlistentry>
 
<varlistentry>
<term>Coreutils (&coreutils-version;) - <token>&coreutils-size;</token>:</term>
<listitem>
<para>Page d'accueil&nbsp;: <ulink url="&coreutils-home;"/></para>
187,15 → 196,6
</varlistentry>
 
<varlistentry>
<term>Glib (&glib-version;) - <token>&glib-size;</token>&nbsp;:</term>
<listitem>
<para>Page d'accueil&nbsp;: <ulink url="&glib-home;"/></para>
<para>Téléchargement&nbsp;: <ulink url="&glib-url;"/></para>
<para>Somme de contrôle MD5&nbsp;: <literal>&glib-md5;</literal></para>
</listitem>
</varlistentry>
 
<varlistentry>
<term>Glibc (&glibc-version;) - <token>&glibc-size;</token>&nbsp;:</term>
<listitem>
<para>Page d'accueil&nbsp;: <ulink url="&glibc-home;"/></para>
452,15 → 452,6
</varlistentry>
<varlistentry>
<term>PCRE (&pcre-version;) - <token>&pcre-size;</token>&nbsp;:</term>
<listitem>
<para>Page d'accueil&nbsp;: <ulink url="&pcre-home;"/></para>
<para>Téléchargement&nbsp;: <ulink url="&pcre-url;"/></para>
<para>Somme de contrôle MD5&nbsp;: <literal>&pcre-md5;</literal></para>
</listitem>
</varlistentry>
 
<varlistentry>
<term>Perl (&perl-version;) - <token>&perl-size;</token>:</term>
<listitem>
<para>Page d'accueil&nbsp;: <ulink url="&perl-home;"/></para>
470,15 → 461,6
</varlistentry>
 
<varlistentry>
<term>Pkg-config (&pkg-config-version;) - <token>&pkg-config-size;</token>&nbsp;:</term>
<listitem>
<para>Page d'accueil&nbsp;: <ulink url="&pkg-config-home;"/></para>
<para>Téléchargement&nbsp;: <ulink url="&pkg-config-url;"/></para>
<para>Somme de contrôle MD5&nbsp;: <literal>&pkg-config-md5;</literal></para>
</listitem>
</varlistentry>
 
<varlistentry>
<term>Procps (&procps-version;) - <token>&procps-size;</token>:</term>
<listitem>
<para>Page d'accueil&nbsp;: <ulink url="&procps-home;"/></para>
497,15 → 479,6
</varlistentry>
 
<varlistentry>
<term>Pkg-config (&pkg-config-version;) - <token>&pkg-config-size;</token>&nbsp;:</term>
<listitem>
<para>Page d'accueil&nbsp;: <ulink url="&pkg-config-home;"/></para>
<para>Téléchargement&nbsp;: <ulink url="&pkg-config-url;"/></para>
<para>Somme de contrôle MD5&nbsp;: <literal>&pkg-config-md5;</literal></para>
</listitem>
</varlistentry>
 
<varlistentry>
<term>Readline (&readline-version;) - <token>&readline-size;</token>:</term>
<listitem>
<para>Page d'accueil&nbsp;: <ulink url="&readline-home;"/></para>
/branches/lfs-7.0-fr/chapter05/tcl.xml
40,9 → 40,10
<sect2 role="installation">
<title>Installation de Tcl</title>
 
<para>Ce paquet et les deux suivants (Expect et DejaGNU) sont installés
uniquement pour supporter les suites de tests de GCC et Binutils.
Installer ces trois paquets dans un but de tests pourrait sembler
<para>Ce paquet et les trois suivants (Expect, DejaGNU et Check) sont installés
uniquement pour supporter les suites de tests de GCC, Binutils et d'autres
paquets.
Installer quatre paquets dans un but de tests pourrait sembler
excessif mais c'est très rassurant, voire essentiel, de savoir que les
outils les plus importants fonctionnent correctement. Même si les suites
de tests ne sont pas exécutées dans ce chapitre (elles ne sont pas
/branches/lfs-7.0-fr/chapter05/chapter05.xml
24,6 → 24,7
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="tcl.xml"/>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="expect.xml"/>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="dejagnu.xml"/>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="check.xml"/>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="ncurses.xml"/>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="bash.xml"/>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="bzip2.xml"/>
/branches/lfs-7.0-fr/chapter05/glibc.xml
81,7 → 81,7
<screen><userinput remap="configure">../glibc-&glibc-version;/configure --prefix=/tools \
--host=$LFS_TGT --build=$(../glibc-&glibc-version;/scripts/config.guess) \
--disable-profile --enable-add-ons \
--enable-kernel=2.6.22.5 --with-headers=/tools/include \
--enable-kernel=2.6.25 --with-headers=/tools/include \
libc_cv_forced_unwind=yes libc_cv_c_cleanup=yes</userinput></screen>
 
<variablelist>
114,10 → 114,11
</varlistentry>
 
<varlistentry>
<term><parameter>--enable-kernel=2.6.22.5</parameter></term>
<term><parameter>--enable-kernel=2.6.25</parameter></term>
<listitem>
<para>Ceci indique à Glibc de compiler la bibliothèque avec le support
des noyaux Linux 2.6.18 et supérieurs. Les environnements pour des noyaux plus anciens ne sont pas activés.</para>
des noyaux Linux 2.6.25 et supérieurs. Les contournements pour les
noyaux plus anciens ne sont pas activés.</para>
</listitem>
</varlistentry>
 
/branches/lfs-7.0-fr/chapter05/gcc-pass1.xml
77,7 → 77,9
--disable-libmudflap --disable-libssp \
--disable-libgomp --disable-libquadmath \
--disable-target-libiberty --disable-target-zlib \
--enable-languages=c --without-ppl --without-cloog</userinput></screen>
--enable-languages=c --without-ppl --without-cloog \
--with-mpfr-include=$LFS/sources/gcc-&gcc-version;/mpfr/src \
--with-mpfr-lib=$LFS/sources/gcc-build/mpfr/src/.libs</userinput></screen>
 
<variablelist>
<title>Voici la signification des options de configure&nbsp;:</title>
/branches/lfs-7.0-fr/chapter05/gcc-pass2.xml
163,7 → 163,9
--enable-__cxa_atexit --enable-languages=c,c++ \
--disable-libstdcxx-pch --disable-multilib \
--disable-bootstrap --disable-libgomp \
--without-ppl --without-cloog</userinput></screen>
--without-ppl --without-cloog \
--with-mpfr-include=$LFS/sources/gcc-&gcc-version;/mpfr/src \
--with-mpfr-lib=$LFS/sources/gcc-build/mpfr/src/.libs</userinput></screen>
 
<variablelist>
<title>Voici la signification des nouvelles options de configure&nbsp;:</title>
/branches/lfs-7.0-fr/chapter05/check.xml
0,0 → 1,98
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
 
<sect1 id="ch-tools-check" role="wrap">
<?dbhtml filename="check.html"?>
 
<sect1info condition="script">
<productname>check</productname>
<productnumber>&check-version;</productnumber>
<address>&check-url;</address>
</sect1info>
 
<title>Check-&check-version;</title>
 
<indexterm zone="ch-tools-check">
<primary sortas="a-Check">Check</primary>
</indexterm>
 
<sect2 role="package">
<title/>
 
<para>Check est un environnement de test d'unités de C.</para>
 
<segmentedlist>
<segtitle>&buildtime;</segtitle>
<segtitle>&diskspace;</segtitle>
 
<seglistitem>
<seg>&check-ch5-sbu;</seg>
<seg>&check-ch5-du;</seg>
</seglistitem>
</segmentedlist>
 
</sect2>
 
<sect2 role="installation">
<title>Installation de Check</title>
 
<para>Préparez la compilation de Check&nbsp;:</para>
 
<screen><userinput remap="configure">./configure --prefix=/tools</userinput></screen>
 
<para>Construisez le paquet&nbsp;:</para>
 
<screen><userinput remap="make">make</userinput></screen>
 
<para>La compilation est maintenant terminée. Comme indiqué plus haut, le
lancement de la suite de tests n'est pas obligatoire pour les outils temporaires
de ce chapitre. Pour lancer quand même la suite de tests de Check, exécutez
la commande suivante&nbsp;:</para>
 
<screen><userinput remap="test">make check</userinput></screen>
 
<para>Remarquez que la suite de tests de Check peut mettre pas mal de temps
(jusqu'à 4 SBU).</para>
 
<para>Installez le paquet&nbsp;:</para>
 
<screen><userinput remap="install">make install</userinput></screen>
 
</sect2>
 
<sect2 id="contents-check" role="content">
<title>Contenu de Check</title>
 
<segmentedlist>
<segtitle>Bibliothèque installée</segtitle>
 
<seglistitem>
<seg>libcheck.{a,so}</seg>
</seglistitem>
</segmentedlist>
 
<variablelist>
<bridgehead renderas="sect3">Descriptions courtes</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
 
<varlistentry id="libcheck">
<term><filename class="libraryfile">libcheck.{a,so}</filename></term>
<listitem>
<para>Contient les fonctions permettant à Check d'être appelé depuis
un programme de test</para>
<indexterm zone="ch-tools-check libcheck">
<primary sortas="c-libcheck">libcheck</primary>
</indexterm>
</listitem>
</varlistentry>
 
</variablelist>
 
</sect2>
 
</sect1>
/branches/lfs-7.0-fr/chapter05/binutils-pass1.xml
77,7 → 77,8
 
<para>Maintenant, préparez la compilation de Binutils&nbsp;:</para>
 
<screen><userinput remap="configure">../binutils-&binutils-version;/configure \
<!-- <screen><userinput remap="configure">../binutils-&binutils-version;/configure \ -->
<screen><userinput remap="configure">../binutils-&binutils-dir;/configure \
--target=$LFS_TGT --prefix=/tools \
--disable-nls --disable-werror</userinput></screen>
<variablelist>
/branches/lfs-7.0-fr/chapter05/binutils-pass2.xml
53,9 → 53,11
 
<screen><userinput remap="configure">CC="$LFS_TGT-gcc -B/tools/lib/" \
AR=$LFS_TGT-ar RANLIB=$LFS_TGT-ranlib \
../binutils-&binutils-version;/configure --prefix=/tools \
../binutils-&binutils-dir;/configure --prefix=/tools \
--disable-nls --with-lib-path=/tools/lib</userinput></screen>
 
<!-- ../binutils-&binutils-version;/configure - -prefix=/tools \ -->
 
<variablelist>
<title>Voici la signification des nouvelles options de configure&nbsp;:</title>
 
/branches/lfs-7.0-fr/prologue/why.xml
480,7 → 480,7
 
<para>Ce paquet contient des programmes de compression et de
décompression de fichiers. Il offre la compression la plus haute
disponible et ce qui est utile pour la décompression des paquets XZ ou
disponible et il est utile pour la décompression des paquets XZ ou
du format LZMA.</para>
</listitem>
 
/branches/lfs-7.0-fr/prologue/hostreqs.xml
82,19 → 82,20
</listitem>
 
<listitem>
<para><emphasis role="strong">Noyau Linux 2.6.22.5</emphasis>
<para><emphasis role="strong">Noyau Linux 2.6.25</emphasis>
(compilé avec GCC-4.1.2 ou supérieur)</para>
 
<para>Cette version du noyau est requise car nous spécifions cette version-là lors de la construction de
<application>glibc</application> au chapitre 6, suivant ainsi une recommandation
des développeurs.</para>
<para>Cette version du noyau est requise car nous spécifions cette
version-là lors de la construction de
<application>glibc</application> au chapitre 6, suivant ainsi une
recommandation des développeurs. Elle est aussi exigée par Udev</para>
 
<para>Si le noyau hôte est plus ancien que le 2.6.22.5, ou s'il n'a pas
<para>Si le noyau hôte est plus ancien que le 2.6.25, ou s'il n'a pas
été compilé avec le compilateur GCC-4.1.2 (ou supérieur),
vous devrez remplacer le noyau par un nouveau qui satisfait ces
spécifications. Vous pouvez employer deux méthodes pour cela.
Vous pouvez d'abord voir si votre distribution Linux fournit un paquet
pour le noyau 2.6.22.5 ou supérieur. Si tel est le cas, vous pouvez l'installer. Si
pour le noyau 2.6.25 ou supérieur. Si tel est le cas, vous pouvez l'installer. Si
votre distribution n'offre pas un paquet acceptable pour le noyau, ou si vous
préférez l'installer, vous pouvez compiler un noyau 2.6 vous-même.
Les instructions pour la compilation du noyau et la configuration du
129,6 → 130,9
<listitem>
<para><emphasis role="strong">Texinfo-4.9</emphasis></para>
</listitem>
<listitem>
<para><emphasis role="strong">Xz-5.0.3</emphasis></para>
</listitem>
 
</itemizedlist>
177,6 → 181,7
sed --version | head -n1
tar --version | head -n1
echo "Texinfo: `makeinfo --version | head -n1`"
xz --version | head -n1
echo 'main(){}' > dummy.c &amp;&amp; gcc -o dummy dummy.c
if [ -x dummy ]; then echo "Compilation OK";
else echo "Compilation failed"; fi
/branches/lfs-7.0-fr/chapter06/gmp.xml
50,6 → 50,11
<screen role="nodump"><userinput><parameter>ABI=32</parameter> ./configure ...</userinput></screen></para>
</note>
 
<para>Tout d'abord, corrigez un léger bogue mentionné sur la page Internet
du projet en amont&nbsp;:</para>
 
<screen><userinput remap="pre"> sed -i 's/np + dn, qn/&amp; - dn/' mpn/generic/dcpi1_bdiv_q.c</userinput></screen>
 
<para>Préparez la compilation de GMP&nbsp;:</para>
 
<screen><userinput remap="configure">./configure --prefix=/usr --enable-cxx --enable-mpbsd</userinput></screen>
/branches/lfs-7.0-fr/chapter06/module-init-tools.xml
42,11 → 42,10
<sect2 role="installation">
<title>Installation de Module-Init-Tools</title>
 
<para>Pour éviter un problème avec la regénération des pages de man alors
qu'elles ne sont pas nécessaires, réécrivez tout d'abord un fichier qui pointe simplement vers une
autre page de man&nbsp;:</para>
<para>Appliquez un correctif qui contient les pages de man générées qui
manquaient à l'archive tar des sources publiée&nbsp;:</para>
<screen><userinput remap="pre">echo '.so man5/modprobe.conf.5' > modprobe.d.5</userinput></screen>
<screen><userinput remap="pre">patch -Np1 -i ../&module-init-tools-man-patch;</userinput></screen>
 
<para>La suite de tests du paquet est tournée vers les besoins du
mainteneur. La commande <command>make check</command> compile une version
55,14 → 54,15
commande <command>make clean</command> est requise pour nettoyer l'arberescence
du source avant une recompilation pour un usage normal)&nbsp;:</para>
 
<screen><userinput remap="test">./configure
<screen><userinput remap="test">DOCBOOKTOMAN=/bin/true ./configure
make check
sed -i -e 's@../../configure@DOCBOOKTOMAN=/bin/true &amp;@' tests/runtests
./tests/runtests
make clean</userinput></screen>
 
<para>Préparez la compilation de Module-Init-Tools&nbsp;:</para>
 
<screen><userinput remap="configure">./configure --prefix=/ --enable-zlib-dynamic --mandir=/usr/share/man</userinput></screen>
<screen><userinput remap="configure">DOCBOOKTOMAN=/bin/true ./configure --prefix=/ --enable-zlib-dynamic --mandir=/usr/share/man</userinput></screen>
 
<para>Compilez le paquet&nbsp;:</para>
 
/branches/lfs-7.0-fr/chapter06/udev.xml
39,8 → 39,13
</sect2>
 
<sect2 role="installation">
<title>Installation de Udev</title>
<title>Installation d'Udev</title>
 
<para>Éventuellement, supprimez un message d'avertissement inutile affiché
dans cette version d'udev lors du démarrage.</para>
 
<screen><userinput remap="pre">sed -i -e '/deprecated/d' udev/udevadm-trigger.c</userinput></screen>
 
<para>L'archive tar udev-config contient des fichiers spécifiques à
LFS-specific utilisés pour configurer Udev. Déballez-la dans le
répertoire des sources Udev&nbsp;:</para>
66,7 → 71,7
--sysconfdir=/etc --sbindir=/sbin \
--with-rootlibdir=/lib --libexecdir=/lib/udev \
--disable-hwdb --disable-introspection \
--disable-keymap</userinput></screen>
--disable-keymap --disable-gudev</userinput></screen>
 
<variablelist>
<title>Voici la signification des nouvelles options de configure</title>
/branches/lfs-7.0-fr/chapter06/util-linux.xml
114,7 → 114,7
fsck.cramfs, fsck.minix, fsfreeze, getopt, hexdump, hwclock, i386,
ionice, ipcmk, ipcrm, ipcs, isosize, ldattach, line, linux32, linux64,
logger, look, losetup, lscpu, mcookie, mkfs, mkfs.bfs, mkfs.cramfs,
mkfs.minix, mkswap, more, mount, namei, partx, pg, pivot_root,
mkfs.minix, mkswap, more, mount, mountpoint, namei, partx, pg, pivot_root,
readprofile, rename, renice, rev, rtcwake, script, scriptreplay,
setarch, setsid, setterm, sfdisk, swaplabel, swapoff (link to swapon),
swapon, switch_root, tailf, taskset, tunelp, ul, umount, unshare,
678,6 → 678,17
</listitem>
</varlistentry>
 
<varlistentry id="mountpoint">
<term><command>mountpoint</command></term>
<listitem>
<para>Vérifie si le répertoire est un point de montage</para>
<indexterm zone="ch-system-util-linux mountpoint">
<primary sortas="b-mountpoint">mountpoint</primary>
</indexterm>
</listitem>
</varlistentry>
 
<varlistentry id="namei">
<term><command>namei</command></term>
<listitem>
/branches/lfs-7.0-fr/chapter06/sysvinit.xml
57,12 → 57,16
<screen><userinput remap="pre">sed -i 's@Sending processes@&amp; configured via /etc/inittab@g' \
src/init.c</userinput></screen>
 
<para>Une version maintenue du programme <command>wall</command> a été
installée plus haut par Util-linux. Supprimez
l'installation de la version de Sysvinit de ce programme et de sa page de man&nbsp;:</para>
<para>Les versions maintenues des programmes <command>wall</command> et
<command>mountpoint</command> ont été
installées plus haut par Util-linux. Supprimez
l'installation de la version de Sysvinit de ces programmes et de leur page
de man&nbsp;:</para>
<screen><userinput remap="make">sed -i -e 's/utmpdump wall/utmpdump/' \
-e 's/mountpoint.1 wall.1/mountpoint.1/' src/Makefile</userinput></screen>
-e '/= mountpoint/d' \
-e 's/mountpoint.1 wall.1//' src/Makefile</userinput></screen>
 
<para>Compilez le paquet&nbsp;:</para>
 
<screen><userinput remap="make">make -C src</userinput></screen>
187,16 → 191,6
</listitem>
</varlistentry>
 
<varlistentry id="mountpoint">
<term><command>mountpoint</command></term>
<listitem>
<para>Vérifie si le répertoire est un point de montage</para>
<indexterm zone="ch-system-sysvinit mountpoint">
<primary sortas="b-mountpoint">mountpoint</primary>
</indexterm>
</listitem>
</varlistentry>
 
<varlistentry id="pidof">
<term><command>pidof</command></term>
<listitem>
/branches/lfs-7.0-fr/chapter06/gcc.xml
72,6 → 72,11
 
<screen><userinput remap="pre">sed -i 's@\./fixinc\.sh@-c true@' gcc/Makefile.in</userinput></screen>
 
<para>Enfin, appliquez un correctif qui corrige le code du test des
modifications de locale qui se pratique dans glibc-2.14 et supérieur.</para>
 
<screen><userinput remap="pre">patch -Np1 -i ../gcc-4.6.1-locale-1.patch</userinput></screen>
 
<para>La documentation de GCC recommande de construire GCC en dehors
du répertoire source, c'est-à-dire dans un répertoire
dédié&nbsp;:</para>
/branches/lfs-7.0-fr/chapter06/man-db.xml
42,7 → 42,11
<title>Installation de Man-DB</title>
 
<para>Préparez la compilation de man-DB&nbsp;:</para>
<screen><userinput remap="configure">./configure --prefix=/usr --libexecdir=/usr/lib \
 
<screen><userinput remap="configure">PKG_CONFIG=/tools/bin/true \
libpipeline_CFLAGS='' \
libpipeline_LIBS='-lpipeline' \
./configure --prefix=/usr --libexecdir=/usr/lib \
--docdir=/usr/share/doc/man-db-&man-db-version; --sysconfdir=/etc \
--disable-setuid --with-browser=/usr/bin/lynx \
--with-vgrind=/usr/bin/vgrind --with-grap=/usr/bin/grap</userinput></screen>
51,6 → 55,15
<title>Voici la signification des options de configuration&nbsp;:</title>
 
<varlistentry>
<term><parameter>PKG_CONFIG=, libpipeline_ ...</parameter></term>
<listitem>
<para>Ces variables d'environnement permettent au processus de
configuration de se terminer sans programme externe
<command>pkg-config</command>.</para>
</listitem>
</varlistentry>
 
<varlistentry>
<term><parameter>--disable-setuid</parameter></term>
<listitem>
<para>Ceci empêche que le programme <command>man</command> se voit
82,12 → 95,8
 
<para>Pour tester les résultats, lancez&nbsp;:</para>
<screen><userinput remap="test">make -k check</userinput></screen>
<screen><userinput remap="test">make check</userinput></screen>
 
<para>Remarquez que 2 tests sont connus pour échouer car ils se basent sur
la sortie des avertissements de Groff, qui a légèrement changé dans
Groff-1.21.</para>
 
<para>Installez le paquet&nbsp;:</para>
 
<screen><userinput remap="install">make install</userinput></screen>
/branches/lfs-7.0-fr/chapter06/binutils.xml
79,7 → 79,8
 
<para>Préparez la compilation de Binutils&nbsp;:</para>
 
<screen><userinput remap="configure">../binutils-&binutils-version;/configure --prefix=/usr \
<!-- <screen><userinput remap="configure">../binutils-&binutils-version;/configure - -prefix=/usr \ -->
<screen><userinput remap="configure">../binutils-&binutils-dir;/configure --prefix=/usr \
--enable-shared</userinput></screen>
 
<para>Compilez le paquet&nbsp;:</para>
/branches/lfs-7.0-fr/chapter06/vim.xml
81,7 → 81,8
<para>Néanmoins, cette suite de tests affiche à l'écran beaucoup de
caractères binaires qui peuvent causer
des soucis sur votre terminal. Ceci peut se résoudre en redirigeant
la sortie vers un journal de traces.</para>
la sortie vers un journal de traces. Un test réussi donnera les mots
"ALL DONE" lors de la complétion.</para>
 
<para>Installez le paquet&nbsp;:</para>
 
/branches/lfs-7.0-fr/chapter06/chapter06.xml
30,9 → 30,6
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="gcc.xml"/>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="sed.xml"/>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="bzip2.xml"/>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="pcre.xml"/>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="glib.xml"/>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="pkg-config.xml"/>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="ncurses.xml"/>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="util-linux.xml"/>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="e2fsprogs.xml"/>
/branches/lfs-7.0-fr/chapter06/libpipeline.xml
43,13 → 43,29
 
<para>Préparez la compilation de Libpipeline&nbsp;:</para>
 
<screen><userinput remap="configure">./configure --prefix=/usr</userinput></screen>
<screen><userinput remap="configure">./configure CHECK_CFLAGS=-I/tools/include \
CHECK_LIBS="-L/tools/lib -lcheck" --prefix=/usr</userinput></screen>
 
<variablelist>
<title>Voici la signification des options de configure&nbsp;:</title>
 
<varlistentry>
<term><parameter>CHECK_CFLAGS=, CHECK_LIBS=</parameter></term>
<listitem>
<para>Ces variables d'environnement spécifient l'emplacement de la
bibliothèque de test construite au <xref linkend="ch-tools-check"/>.</para>
</listitem>
</varlistentry>
 
</variablelist>
 
<para>Compilez le paquet&nbsp;:</para>
 
<screen><userinput remap="make">make</userinput></screen>
 
<para>Ce paquet n'est pas fourni avec une suite de tests.</para>
<para>Pour tester les résultats, lancez&nbsp;:</para>
<screen><userinput remap="test">make check</userinput></screen>
 
<para>Installez le paquet&nbsp;:</para>
 
/branches/lfs-7.0-fr/chapter06/grep.xml
1,3 → 1,4
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../general.ent">
22,7 → 23,7
<sect2 role="package">
<title/>
 
<para>Le paquet Grep contient des programmes de recherche à l'intérieur de fichiers.</para>
<para>Le paquet Grep contient des programmes de recherche à l'intérieur de fichiers.</para>
 
<segmentedlist>
<segtitle>&buildtime;</segtitle>
39,16 → 40,19
<sect2 role="installation">
<title>Installation de Grep</title>
 
<para>Préparez la compilation de Grep&nbsp;:</para>
<para>Tout d'abord, corrigez un petit problème avec un script de test&nbsp;:</para>
 
<screen><userinput remap="configure">./configure --prefix=/usr \
--bindir=/bin</userinput></screen>
<screen><userinput>sed -i 's/cp/#&amp;/' tests/unibyte-bracket-expr</userinput></screen>
 
<para>Préparez la compilation de Grep&nbsp;:</para>
 
<screen><userinput remap="configure">./configure --prefix=/usr --bindir=/bin</userinput></screen>
 
<para>Compilez le paquet&nbsp;:</para>
 
<screen><userinput remap="make">make</userinput></screen>
 
<para>Pour tester les résultats, lancez&nbsp;:</para>
<para>Pour tester les résultats, lancez&nbsp;:</para>
 
<screen><userinput remap="test">make check</userinput></screen>
 
62,7 → 66,7
<title>Contenu de Grep</title>
 
<segmentedlist>
<segtitle>Programmes installés</segtitle>
<segtitle>Programmes installés</segtitle>
 
<seglistitem>
<seg>egrep, fgrep et grep</seg>
77,7 → 81,7
<varlistentry id="egrep">
<term><command>egrep</command></term>
<listitem>
<para>Affiche les lignes correspondant à une expression rationnelle étendue</para>
<para>Affiche les lignes correspondant à une expression rationnelle étendue</para>
<indexterm zone="ch-system-grep egrep">
<primary sortas="b-egrep">egrep</primary>
</indexterm>
87,7 → 91,7
<varlistentry id="fgrep">
<term><command>fgrep</command></term>
<listitem>
<para>Affiche des lignes correspondant à une liste de chaînes fixes</para>
<para>Affiche des lignes correspondant à une liste de chaînes fixes</para>
<indexterm zone="ch-system-grep fgrep">
<primary sortas="b-fgrep">fgrep</primary>
</indexterm>
97,7 → 101,7
<varlistentry id="grep">
<term><command>grep</command></term>
<listitem>
<para>Affiche des lignes correspondant à une expression rationnelle
<para>Affiche des lignes correspondant à une expression rationnelle
basique</para>
<indexterm zone="ch-system-grep grep">
<primary sortas="b-grep">grep</primary>
/branches/lfs-7.0-fr/chapter06/glibc.xml
129,7 → 129,7
 
<screen><userinput remap="configure">../glibc-&glibc-version;/configure --prefix=/usr \
--disable-profile --enable-add-ons \
--enable-kernel=2.6.22.5 --libexecdir=/usr/lib/glibc</userinput></screen>
--enable-kernel=2.6.25 --libexecdir=/usr/lib/glibc</userinput></screen>
 
<variablelist>
<title>Voici la signification des options de configure&nbsp;:</title>
198,6 → 198,12
aidant à éliminer ces erreurs (par exemple <command>TIMEOUTFACTOR=16
make -k check</command>).</para>
</listitem>
<listitem>
<para>D'autres tests qui sont connus pour échouer sur certaines
architectures sont posix/bug-regex32,
misc/tst-writev, elf/check-textrel, nptl/tst-getpid2, et stdio-common/bug22.</para>
</listitem>
 
</itemizedlist>
 
<para>Bien que ce ne soit qu'un simple message, l'étape d'installation de
/branches/lfs-7.0-fr/chapter06/pkg-config.xml
50,7 → 50,8
 
<para>Corrigez un problème avec un des tests de Pkg-config&nbsp;:</para>
 
<screen><userinput remap="pre">sed -i -e '21s/EXPECT_RETURN=1/EXPECT_RETURN=0/' check/check-cmd-options</userinput></screen>
<screen><userinput remap="pre">sed -i -e '/!done/a\
longArg = NULL;' popt/popt.c</userinput></screen>
 
<para>Préparez la compilation de Pkg-config&nbsp;:</para>
 
/branches/lfs-7.0-fr/chapter06/e2fsprogs.xml
52,7 → 52,8
 
<para>Préparez la compilation d'E2fsprogs&nbsp;:</para>
 
<screen><userinput remap="configure">../configure --prefix=/usr --with-root-prefix="" \
<screen><userinput remap="configure">PKG_CONFIG=/tools/bin/true LDFLAGS=-lblkid \
../configure --prefix=/usr --with-root-prefix="" \
--enable-elf-shlibs --disable-libblkid --disable-libuuid \
--disable-uuidd --disable-fsck</userinput></screen>
 
60,6 → 61,14
<title>Voici la signification des options de configure&nbsp;:</title>
 
<varlistentry>
<term><parameter>PKG_CONFIG...</parameter></term>
<listitem>
<para>Ceci permet à E2fsprogs de se construire sans besoin de
construire et d'installer préalablement Pkg-config.</para>
</listitem>
</varlistentry>
 
<varlistentry>
<term><parameter>--with-root-prefix=""</parameter></term>
<listitem>
<para>Certains programmes (comme <command>e2fsck</command>
/branches/lfs-7.0-fr/chapter07/udev.xml
130,10 → 130,10
car certains périphériques, répertoires et liens symboliques sont
requis avant que les processus de gestion du périphérique
dynamique ne soient disponibles pendant les premières étapes du
démarrage d'un système, ou car <command>udevd</command> lui-même
les exige. La création des n&oelig;uds statiques dans
démarrage d'un système.
La création des n&oelig;uds statiques dans
<filename class="directory">/lib/udev/devices</filename> fournit
aussi un environnement de travail facile pour les périphériques
aussi un contournement facile pour les périphériques
qui ne sont pas supportés par l'infrastructure de gestion des
périphériques en dynamique. Ensuite le script de démarrage lance
le démon Udev, <command>udevd</command>, qui agira sur tous les
142,6 → 142,20
déjà enregistré puis attend que <command>udevd</command> les
gère.</para>
 
<para>Le script de démarrage <command>/etc/rc.d/init.d/udev_retry</command>
s'occupe de ratraper les événements pour les sous-systèmes dont les règles
se basent sur des systèmes de fichiers non montés jusqu'à ce que le
scp:pt <command>mountfs</command> se lance (en particulier, il se peut que
/usr et /var provoquent cela). Ce script se lance après que le script
<command>mountfs</command>, pour que ces règles réussissent le
contournement (si elles sont retardées). Le fichier
<filename>/etc/sysconfig/udev_retry</filename> configure cela&nbsp;;
tous les mots de ce fichier qui ne sont pas des commentaires sont
considérés comme des noms de sous-systèmes qu'il faut ratraper au moment
du nouvel essai. (Pour trouver le sous-système d'un périphérique,
utilisez <command>udevadm info --attribute-walk</command>.)</para>
 
</sect3>
 
<sect3>
/branches/lfs-7.0-fr/chapter07/usage.xml
72,7 → 72,7
 
id:3:initdefault:
 
si::sysinit:/etc/rc.d/init.d/rc sysinit
si::sysinit:/etc/rc.d/init.d/rc S
 
l0:0:wait:/etc/rc.d/init.d/rc 0
l1:S1:wait:/etc/rc.d/init.d/rc 1
106,7 → 106,7
est spécifié par la valeur initdefault.</para>
 
<para>Par commodité, le script <command>rc</command> lit une bibliothèque
de fonctions dans <filename class="directory">/lib/boot/functions</filename>.
de fonctions dans <filename class="directory">/lib/lsb/init-functions</filename>.
Cette bibliothèque lit aussi un fichier de configuration facultatif,
<filename>/etc/sysconfig/init_params</filename>. Tous les paramètres du
fichier de configuration du système décrits dans les sections suivantes peuvent
/branches/lfs-7.0-fr/chapter07/site.xml
0,0 → 1,36
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../general.ent">
<!ENTITY site SYSTEM "../appendices/rc.site.script">
%general-entities;
]>
 
<sect1 id="ch-scripts-site">
<?dbhtml filename="site.html"?>
 
<title>Le fichier rc.site</title>
 
<indexterm zone="ch-scripts-site">
<primary sortas="a-rc.site">rc.site</primary>
</indexterm>
 
<para>Le fichier facultatif <filename>/etc/sysconfig/rc.site</filename>
contient les paramètres réglés automatiquement pour chaque script de démarrage.
Il peut aussi régler les valeurs spécifiées dans les fichiers <filename>hostname</filename>,
<filename>console</filename> et <filename>clock</filename> du répertoire
<filename class='directory'>/etc/sysconfig/</filename>. Si les variables
associées se trouvent à la fois dans ces fichiers distincts et dans
<filename>rc.site</filename>, les valeurs des fichiers spécifiques au script
prennent le dessus. </para>
 
<para><filename>rc.site</filename> 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 comme suit&nbsp;:</para>
 
<screen role="auto">&site;</screen>
 
</sect1>
 
/branches/lfs-7.0-fr/chapter07/setclock.xml
72,6 → 72,6
<envar>TZ</envar>.</para>
 
<note><para>Vous pouvez régler soit le paramètre CLOCKPARAMS soit UTC dans
le fichier <filename>/etc/sysconfig/init_params</filename>.</para></note>
le fichier <filename>/etc/sysconfig/rc.site</filename>.</para></note>
 
</sect1>
/branches/lfs-7.0-fr/chapter07/network.xml
177,7 → 177,7
pour obtenir une adresse IP. Les scripts de démarrage LFS ont un
format d'affectation IP modulaire. Créer les fichier supplémentaires
dans le répertoire
<filename class="directory">/lib/boot/</filename>
<filename class="directory">/lib/services/</filename>
autorise d'autres méthodes d'affectation d'IP. Ceci est habituellement
utilisé pour le DHCP (<foreignphrase>Dynamic Host Configuration
Protocol</foreignphrase>, NdT&nbsp;:protocole de configuration de
/branches/lfs-7.0-fr/chapter07/bootscripts.xml
59,7 → 59,8
ifup, localnet, modules, mountfs, mountkernfs, network, rc, reboot,
sendsignals, setclock, static, swap, sysctl, sysklogd, template,
udev et udev_retry</seg>
<seg>/etc/rc.d, /etc/sysconfig, /lib/boot</seg>
<seg>/etc/rc.d, /etc/init.d (symbolic link), /etc/sysconfig,
/lib/services, /lib/lsb (symbolic link)</seg>
</seglistitem>
</segmentedlist>
 
/branches/lfs-7.0-fr/chapter07/chapter07.xml
22,6 → 22,7
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="setclock.xml"/>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="console.xml"/>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="sysklogd.xml"/>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="site.xml"/>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="profile.xml"/>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="inputrc.xml"/>
 
/branches/lfs-7.0-fr/chapter07/sysklogd.xml
20,7 → 20,7
<parameter>-m 0</parameter>. Cette option désactive la marque
périodique que <command>syslogd</command> écrit par défaut dans les fichiers
journaux toutes les 20 minutes. Si vous voulez activer cette marque périodique,
créez ou éditez <filename>/etc/sysconfig/init_params</filename> et définissez
d'horodatage, éditez <filename>/etc/sysconfig/rc.site</filename> et définissez
la variable SYSKLOGD_PARMS sur la valeur désirée. Par exemple, pour supprimer
tous les paramètres, réglez la variable à la valeur null&nbsp;:</para>
 
/branches/lfs-7.0-fr/general.ent
1,7 → 1,7
<?xml version="1.0" encoding="ISO-8859-1"?>
 
<!ENTITY version "SVN-20110830">
<!ENTITY releasedate "30 août 2011">
<!ENTITY version "SVN-20111013">
<!ENTITY releasedate "13 octobre 2011">
<!ENTITY copyrightdate "1999&ndash;2011">
<!ENTITY milestone "7.0">
<!ENTITY generic-version "development"> <!-- Use "development", "testing", or "x.y[-pre{x}]" -->
/branches/lfs-7.0-fr/packages.ent
34,6 → 34,7
<!ENTITY bash-ch6-sbu "1.4 SBU">
 
<!ENTITY binutils-version "2.21.1a">
<!ENTITY binutils-dir "2.21.1">
<!ENTITY binutils-size "18,553 Kio">
<!ENTITY binutils-url "&gnu;binutils/binutils-&binutils-version;.tar.bz2">
<!ENTITY binutils-md5 "bde820eac53fa3a8d8696667418557ad">
67,10 → 68,18
<!ENTITY bzip2-ch6-du "6.4 Mio">
<!ENTITY bzip2-ch6-sbu "moins de 0.1 SBU">
 
<!ENTITY coreutils-version "8.12">
<!ENTITY coreutils-size "11,228 Kio">
<!ENTITY coreutils-url "&gnu;coreutils/coreutils-&coreutils-version;.tar.gz">
<!ENTITY coreutils-md5 "fce7999953a67243d00d75cc86dbcaa6">
<!ENTITY check-version "0.9.8">
<!ENTITY check-size "546 Kio">
<!ENTITY check-url "http://sourceforge.net/projects/check/files/check/&check-version;/check-&check-version;.tar.gz">
<!ENTITY check-md5 "5d75e9a6027cde79d2c339ef261e7470">
<!ENTITY check-home "http://check.sourceforge.net/">
<!ENTITY check-ch5-du "4.8 Mio">
<!ENTITY check-ch5-sbu "0.1 SBU">
 
<!ENTITY coreutils-version "8.14">
<!ENTITY coreutils-size "4,842 Kio">
<!ENTITY coreutils-url "&gnu;coreutils/coreutils-&coreutils-version;.tar.xz">
<!ENTITY coreutils-md5 "bcb135ce553493a45aba01b39eb3920a">
<!ENTITY coreutils-home "&gnu-software;coreutils/">
<!ENTITY coreutils-ch5-du "88 Mio">
<!ENTITY coreutils-ch5-sbu "0.7 SBU">
85,10 → 94,10
<!ENTITY dejagnu-ch5-du "6.1 Mio">
<!ENTITY dejagnu-ch5-sbu "moins de 0.1 SBU">
 
<!ENTITY diffutils-version "3.1">
<!ENTITY diffutils-size "1,943 Kio">
<!ENTITY diffutils-version "3.2">
<!ENTITY diffutils-size "1,976 Kio">
<!ENTITY diffutils-url "&gnu;diffutils/diffutils-&diffutils-version;.tar.gz">
<!ENTITY diffutils-md5 "29c15b2de8bf33685029e035fa680a6e">
<!ENTITY diffutils-md5 "22e4deef5d8949a727b159d6bc65c1cc">
<!ENTITY diffutils-home "&gnu-software;diffutils/">
<!ENTITY diffutils-ch5-du "6.1 Mio">
<!ENTITY diffutils-ch5-sbu "0.1 SBU">
118,10 → 127,10
<!ENTITY expect-ch5-du "4.1 Mio">
<!ENTITY expect-ch5-sbu "0.1 SBU">
 
<!ENTITY file-version "5.08">
<!ENTITY file-size "591 Kio">
<!ENTITY file-version "5.09">
<!ENTITY file-size "593 Kio">
<!ENTITY file-url "ftp://ftp.astron.com/pub/file/file-&file-version;.tar.gz">
<!ENTITY file-md5 "6a2a263c20278f01fe3bb0f720b27d4e">
<!ENTITY file-md5 "6fd7cd6c4281e68fe9ec6644ce0fac6f">
<!ENTITY file-home "http://www.darwinsys.com/file/">
<!ENTITY file-ch5-du "9.5 Mio">
<!ENTITY file-ch5-sbu "0.2 SBU">
192,18 → 201,10
<!ENTITY gettext-ch6-du "125 Mio">
<!ENTITY gettext-ch6-sbu "5.8 SBU">
 
<!ENTITY glib-version "2.28.8">
<!ENTITY glib-size "6,854 Kio">
<!ENTITY glib-url "http://ftp.gnome.org/pub/gnome/sources/glib/2.28/glib-&glib-version;.tar.bz2">
<!ENTITY glib-md5 "789e7520f71c6a4bf08bc683ec764d24">
<!ENTITY glib-home "http://developer.gnome.org/glib/">
<!ENTITY glib-ch6-du "157 Mio">
<!ENTITY glib-ch6-sbu "1.3 SBU">
 
<!ENTITY glibc-version "2.14">
<!ENTITY glibc-size "15,265 Kio">
<!ENTITY glibc-version "2.14.1">
<!ENTITY glibc-size "15,284 Kio">
<!ENTITY glibc-url "&gnu;glibc/glibc-&glibc-version;.tar.bz2">
<!ENTITY glibc-md5 "1588cc22e796c296223744895ebc4cef">
<!ENTITY glibc-md5 "5869a2620c6917dd392289864c6ce595">
<!ENTITY glibc-home "&gnu-software;libc/">
<!ENTITY glibc-ch5-du "501 Mio">
<!ENTITY glibc-ch5-sbu "5.5 SBU">
282,7 → 283,7
 
<!ENTITY kbd-version "1.15.2">
<!ENTITY kbd-size "1,520 Kio">
<!ENTITY kbd-url "&kernel;linux/utils/kbd/kbd-&kbd-version;.tar.gz">
<!ENTITY kbd-url "&anduin-sources;kbd/kbd-&kbd-version;.tar.gz">
<!ENTITY kbd-md5 "77d0b51454522bc6c170bbdc6e31202a">
<!ENTITY kbd-home " ">
<!ENTITY kbd-ch6-du "16.0 Mio">
296,7 → 297,7
<!ENTITY less-ch6-du "3.5 Mio">
<!ENTITY less-ch6-sbu "moins de 0.1 SBU">
 
<!ENTITY lfs-bootscripts-version "20110830"> <!-- Scripts depend on this format -->
<!ENTITY lfs-bootscripts-version "20111008"> <!-- Scripts depend on this format -->
<!ENTITY lfs-bootscripts-size "BOOTSCRIPTS-SIZE Kio"> <!-- Updated in Makefile -->
<!ENTITY lfs-bootscripts-url "&downloads-root;lfs-bootscripts-&lfs-bootscripts-version;.tar.bz2">
<!ENTITY lfs-bootscripts-md5 "BOOTSCRIPTS-MD5SUM"> <!-- Updated in Makefile -->
365,18 → 366,18
<!ENTITY man-db-ch6-du "22 Mio">
<!ENTITY man-db-ch6-sbu "0.4 SBU">
 
<!ENTITY man-pages-version "3.32">
<!ENTITY man-pages-size "1,108 Kio">
<!ENTITY man-pages-url "&kernel;linux/docs/manpages/man-pages-&man-pages-version;.tar.bz2">
<!ENTITY man-pages-md5 "1278c5289660e42a597fefd30d9bdcf0">
<!ENTITY man-pages-home "http://www.kernel.org/doc/man-pages/">
<!ENTITY man-pages-version "3.35">
<!ENTITY man-pages-size "1,650 Kio">
<!ENTITY man-pages-url "http://man7.org/linux/man-pages/download/man-pages-&man-pages-version;.tar.gz">
<!ENTITY man-pages-md5 "e41432ee35a49036bbaf8d4598506e9c">
<!ENTITY man-pages-home "http://man7.org/linux/man-pages/index.html">
<!ENTITY man-pages-ch6-du "21 Mio">
<!ENTITY man-pages-ch6-sbu "moins de 0.1 SBU">
 
<!ENTITY module-init-tools-version "3.12">
<!ENTITY module-init-tools-size "917 Kio">
<!ENTITY module-init-tools-url "http://www.kernel.org/pub/linux/utils/kernel/module-init-tools/module-init-tools-&module-init-tools-version;.tar.bz2">
<!ENTITY module-init-tools-md5 "8b2257ce9abef74c4a44d825d23140f3">
<!ENTITY module-init-tools-version "3.16">
<!ENTITY module-init-tools-size "224 Kio">
<!ENTITY module-init-tools-url "&anduin-sources;module-init-tools/module-init-tools-&module-init-tools-version;.tar.bz2">
<!ENTITY module-init-tools-md5 "bc44832c6e41707b8447e2847d2019f5">
<!ENTITY module-init-tools-home "https://modules.wiki.kernel.org/index.php/Module_init_tools_3_12">
<!ENTITY module-init-tools-ch6-du "8.6 Mio">
<!ENTITY module-init-tools-ch6-sbu "0.1 SBU">
392,10 → 393,10
<!ENTITY mpc-ch6-du "10.5 Mio suites de test comprise">
<!ENTITY mpc-ch6-sbu "0.3 SBU suistes de test comprises">
 
<!ENTITY mpfr-version "3.0.1">
<!ENTITY mpfr-size "1,127 Kio">
<!ENTITY mpfr-version "3.1.0">
<!ENTITY mpfr-size "1,176 Kio">
<!ENTITY mpfr-url "http://www.mpfr.org/mpfr-&mpfr-version;/mpfr-&mpfr-version;.tar.bz2">
<!ENTITY mpfr-md5 "bfbecb2eacb6d48432ead5cfc3f7390a">
<!ENTITY mpfr-md5 "238ae4a15cc3a5049b723daef5d17938">
<!ENTITY mpfr-home "http://www.mpfr.org/">
<!ENTITY mpfr-ch5-du "27.1 Mio">
<!ENTITY mpfr-ch5-sbu "1.0 SBU">
422,19 → 423,10
<!ENTITY patch-ch6-du "1.9 Mio">
<!ENTITY patch-ch6-sbu "moins de 0.1 SBU">
 
<!ENTITY pcre-version "8.12">
<!ENTITY pcre-size "969 Kio">
<!ENTITY pcre-url "&sourceforge;pcre/pcre-&pcre-version;.tar.bz2">
<!ENTITY pcre-url "">
<!ENTITY pcre-md5 "f14a9fef3c92f3fc6c5ac92d7a2c7eb3">
<!ENTITY pcre-home "http://www.pcre.org/">
<!ENTITY pcre-ch6-du "12 Mio">
<!ENTITY pcre-ch6-sbu "0.4 SBU">
 
<!ENTITY perl-version "5.14.1">
<!ENTITY perl-size "12,956 Kio">
<!ENTITY perl-version "5.14.2">
<!ENTITY perl-size "12,917 Kio">
<!ENTITY perl-url "http://www.cpan.org/src/5.0/perl-&perl-version;.tar.bz2">
<!ENTITY perl-md5 "97cd306a2c22929cc141a09568f43bb0">
<!ENTITY perl-md5 "04a4c5d3c1f9f19d77daff8e8cd19a26">
<!ENTITY perl-home "http://www.perl.org/">
<!ENTITY perl-ch5-du "223 Mio">
<!ENTITY perl-ch5-sbu "1.8 SBU">
441,16 → 433,6
<!ENTITY perl-ch6-du "235 Mio">
<!ENTITY perl-ch6-sbu "7.6 SBU">
 
<!ENTITY pkg-config-version "0.26">
<!ENTITY pkg-config-size "387 Kio">
<!ENTITY pkg-config-url "http://pkgconfig.freedesktop.org/releases/pkg-config-&pkg-config-version;.tar.gz">
<!ENTITY pkg-config-md5 "47525c26a9ba7ba14bf85e01509a7234">
<!ENTITY pkg-config-home "http://pkg-config.freedesktop.org/">
<!ENTITY pkg-config-ch5-du " Mio">
<!ENTITY pkg-config-ch5-sbu " SBU">
<!ENTITY pkg-config-ch6-du "11.5 Mio">
<!ENTITY pkg-config-ch6-sbu "0.3 SBU">
 
<!ENTITY procps-version "3.2.8">
<!ENTITY procps-size "279 Kio">
<!ENTITY procps-url "http://procps.sourceforge.net/procps-&procps-version;.tar.gz">
540,7 → 522,7
 
<!ENTITY udev-version "173">
<!ENTITY udev-size "594 Kio">
<!ENTITY udev-url "&kernel;linux/utils/kernel/hotplug/udev-&udev-version;.tar.bz2">
<!ENTITY udev-url "&anduin-sources;udev/udev-&udev-version;.tar.bz2">
<!ENTITY udev-md5 "91a88a359b60bbd074b024883cc0dbde">
<!ENTITY udev-home "&kernel;linux/utils/kernel/hotplug/udev.html">
<!ENTITY udev-ch6-du "9.3 Mio">
559,7 → 541,7
 
<!ENTITY util-linux-version "2.20">
<!ENTITY util-linux-size "4,507 Kio">
<!ENTITY util-linux-url "&kernel;linux/utils/util-linux/v2.20/util-linux-&util-linux-version;.tar.bz2">
<!ENTITY util-linux-url "&anduin-sources;util-linux/util-linux-&util-linux-version;.tar.bz2">
<!ENTITY util-linux-md5 "4dcacdbdafa116635e52b977d9d0e879">
<!ENTITY util-linux-home "http://userweb.kernel.org/~kzak/util-linux/">
<!--<!ENTITY util-linux-ch5-du "19 MB">-->
/branches/lfs-7.0-fr/bootscripts/lfs/sysconfig/network-devices/ifup
File deleted
/branches/lfs-7.0-fr/bootscripts/lfs/sysconfig/network-devices/services/ipv4-static-route
File deleted
/branches/lfs-7.0-fr/bootscripts/lfs/sysconfig/network-devices/services/ipv4-static
File deleted
/branches/lfs-7.0-fr/bootscripts/lfs/sysconfig/network-devices/ifdown
File deleted
/branches/lfs-7.0-fr/bootscripts/lfs/sysconfig/rc
7,7 → 7,7
#
# Version : 00.00
#
# Notes :
# Notes : Not used by LFS, but present for BLFS compatibility
#
########################################################################
 
/branches/lfs-7.0-fr/bootscripts/lfs/sysconfig/createfiles
8,21 → 8,24
# Version : 00.00
#
# Notes : The syntax of this file is as follows:
# if type is equal to "file" or "dir"
# <filename> <type> <permissions> <user> <group>
# if type is equal to "dev"
# <filename> <type> <permissions> <user> <group> <devtype> <major> <minor>
# if type is equal to "file" or "dir"
# <filename> <type> <permissions> <user> <group>
# if type is equal to "dev"
# <filename> <type> <permissions> <user> <group> <devtype>
# <major> <minor>
#
# <filename> is the name of the file which is to be created
# <type> is either file, dir, or dev.
# file creates a new file
# dir creates a new directory
# dev creates a new device
# <devtype> is either block, char or pipe
# block creates a block device
# char creates a character deivce
# pipe creates a pipe, this will ignore the <major> and <minor> fields
# <major> and <minor> are the major and minor numbers used for the device.
# <filename> is the name of the file which is to be created
# <type> is either file, dir, or dev.
# file creates a new file
# dir creates a new directory
# dev creates a new device
# <devtype> is either block, char or pipe
# block creates a block device
# char creates a character deivce
# pipe creates a pipe, this will ignore the <major> and
# <minor> fields
# <major> and <minor> are the major and minor numbers used for
# the device.
########################################################################
 
# End /etc/sysconfig/createfiles
/branches/lfs-7.0-fr/bootscripts/lfs/sysconfig/rc.site
0,0 → 1,61
# rc.site
# Optional parameters for boot scripts.
 
# Distro Information
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
# 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
 
# Interactive startup
#IPROMPT="yes" # Whether to display the interactive boot promp
itime="10" # The ammount 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
 
# Skip cleaning /tmp
#SKIPTMPCLEAN=yes
 
# 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=
 
/branches/lfs-7.0-fr/bootscripts/lfs/init.d/sysctl
7,6 → 7,7
#
# Authors : Nathan Coulson (nathan@linuxfromscratch.org)
# Matthew Burgress (matthew@linuxfromscratch.org)
# DJ Lucas - dj@linuxfromscratch.org
# Update : Bruce Dubbs - bdubbs@linuxfromscratch.org
#
# Version : LFS 7.0
27,12 → 28,12
# X-LFS-Provided-By: LFS
### END INIT INFO
 
. /lib/boot/functions
. /lib/lsb/init-functions
 
case "${1}" in
start)
if [ -f "/etc/sysctl.conf" ]; then
boot_mesg "Setting kernel runtime parameters..."
log_info_msg "Setting kernel runtime parameters..."
sysctl -q -p
evaluate_retval
fi
48,4 → 49,6
;;
esac
 
exit 0
 
# End sysctl
/branches/lfs-7.0-fr/bootscripts/lfs/init.d/udev_retry
5,7 → 5,9
# Description : Udev cold-plugging script (retry)
#
# Authors : Alexander E. Patrakov
# DJ Lucas - dj@linuxfromscratch.org
# Update : Bruce Dubbs - bdubbs@linuxfromscratch.org
# Bryan Kadzban -
#
# Version : LFS 7.0
#
26,17 → 28,17
# X-LFS-Provided-By: LFS
### END INIT INFO
 
. /lib/boot/functions
. /lib/lsb/init-functions
 
case "${1}" in
start)
boot_mesg "Retrying failed uevents, if any..."
log_info_msg "Retrying failed uevents, if any..."
 
RUNDIR=$(/sbin/udevadm info --run)
rundir=$(/sbin/udevadm info --run)
# From Debian: "copy the rules generated before / was mounted
# read-write":
for file in ${RUNDIR}/tmp-rules--*; do
for file in ${rundir}/tmp-rules--*; do
dest=${file##*tmp-rules--}
[ "$dest" = '*' ] && break
cat $file >> /etc/udev/rules.d/$dest
43,8 → 45,14
rm -f $file
done
 
# Re-trigger the failed uevents in hope they will succeed now
/sbin/udevadm trigger --type=failed --action=add
# Re-trigger the uevents that may have failed,
# in hope they will succeed now
/bin/sed -e 's/#.*$//' /etc/sysconfig/udev_retry | /bin/grep -v '^$' | \
while read line ; do
for subsystem in $line ; do
/sbin/udevadm trigger --subsystem-match=$subsystem --action=add
done
done
 
# Now wait for udevd to process the uevents we triggered
/sbin/udevadm settle
57,4 → 65,6
;;
esac
 
exit 0
 
# End udev_retry
/branches/lfs-7.0-fr/bootscripts/lfs/init.d/halt
5,6 → 5,7
# Description : Halt Script
#
# Authors : Gerard Beekmans - gerard@linuxfromscratch.org
# DJ Lucas - dj@linuxfromscratch.org
# Update : Bruce Dubbs - bdubbs@linuxfromscratch.org
#
# Version : LFS 7.0
/branches/lfs-7.0-fr/bootscripts/lfs/init.d/network
7,6 → 7,7
# Authors : Gerard Beekmans - gerard@linuxfromscratch.org
# Nathan Coulson - nathan@linuxfromscratch.org
# Kevin P. Fleming - kpfleming@linuxfromscratch.org
# DJ Lucas - dj@linuxfromscratch.org
# Update : Bruce Dubbs - bdubbs@linuxfromscratch.org
#
# Version : LFS 7.0
33,7 → 34,7
do
interface=${file##*/ifconfig.}
 
# skip if $file is * (because nothing was found)
# Skip if $file is * (because nothing was found)
if [ "${interface}" = "*" ]
then
continue
45,18 → 46,18
 
stop)
# Reverse list
FILES=""
net_files=""
for file in /etc/sysconfig/ifconfig.*
do
FILES="${file} ${FILES}"
net_files="${file} ${net_files}"
done
 
# Stop all network interfaces
for file in ${FILES}
for file in ${net_files}
do
interface=${file##*/ifconfig.}
 
# skip if $file is * (because nothing was found)
# Skip if $file is * (because nothing was found)
if [ "${interface}" = "*" ]
then
continue
78,4 → 79,6
;;
esac
 
exit 0
 
# End network
/branches/lfs-7.0-fr/bootscripts/lfs/init.d/reboot
5,6 → 5,7
# Description : Reboot Scripts
#
# Authors : Gerard Beekmans - gerard@linuxfromscratch.org
# DJ Lucas - dj@linuxfromscratch.org
# Update : Bruce Dubbs - bdubbs@linuxfromscratch.org
#
# Version : LFS 7.0
24,11 → 25,11
# X-LFS-Provided-By: LFS
### END INIT INFO
 
. /lib/boot/functions
. /lib/lsb/init-functions
 
case "${1}" in
stop)
boot_mesg "Restarting system..."
log_info_msg "Restarting system..."
reboot -d -f -i
;;
 
/branches/lfs-7.0-fr/bootscripts/lfs/init.d/mountfs
5,6 → 5,7
# Description : File System Mount Script
#
# Authors : Gerard Beekmans - gerard@linuxfromscratch.org
# DJ Lucas - dj@linuxfromscratch.org
# Update : Bruce Dubbs - bdubbs@linuxfromscratch.org
#
# Version : LFS 7.0
27,11 → 28,11
# X-LFS-Provided-By: LFS
### END INIT INFO
 
. /lib/boot/functions
. /lib/lsb/init-functions
 
case "${1}" in
start)
boot_mesg "Remounting root file system in read-write mode..."
log_info_msg "Remounting root file system in read-write mode..."
mount -n -o remount,rw / >/dev/null
evaluate_retval
 
38,7 → 39,7
# Remove fsck-related file system watermarks.
rm -f /fastboot /forcefsck
 
boot_mesg "Recording existing mounts in /etc/mtab..."
log_info_msg "Recording existing mounts in /etc/mtab..."
> /etc/mtab
 
mount -f / || failed=1
50,15 → 51,19
 
# This will mount all filesystems that do not have _netdev in
# their option list. _netdev denotes a network filesystem.
boot_mesg "Mounting remaining file systems..."
 
log_info_msg "Mounting remaining file systems..."
mount -a -O no_netdev >/dev/null
evaluate_retval
exit $failed
;;
 
stop)
boot_mesg "Unmounting all other currently mounted file systems..."
# Don't unmount tmpfs like /run
log_info_msg "Unmounting all other currently mounted file systems..."
umount -a -d -r -t notmpfs >/dev/null
evaluate_retval
exit 0
;;
 
*)
/branches/lfs-7.0-fr/bootscripts/lfs/init.d/sysklogd
5,6 → 5,7
# Description : Sysklogd loader
#
# Authors : Gerard Beekmans - gerard@linuxfromscratch.org
# DJ Lucas - dj@linuxfromscratch.org
# Update : Bruce Dubbs - bdubbs@linuxfromscratch.org
#
# Version : LFS 7.0
25,29 → 26,35
# X-LFS-Provided-By: LFS
### END INIT INFO
 
. /lib/boot/functions
. /lib/lsb/init-functions
 
case "${1}" in
start)
boot_mesg "Starting system log daemon..."
PARMS=${SYSKLOGD_PARMS-'-m 0'}
loadproc syslogd $PARMS
log_info_msg "Starting system log daemon..."
parms=${SYSKLOGD_PARMS-'-m 0'}
start_daemon /sbin/syslogd $parms
evaluate_retval
 
boot_mesg "Starting kernel log daemon..."
loadproc klogd
log_info_msg "Starting kernel log daemon..."
start_daemon /sbin/klogd
evaluate_retval
;;
 
stop)
boot_mesg "Stopping kernel log daemon..."
killproc klogd
log_info_msg "Stopping kernel log daemon..."
killproc /sbin/klogd
evaluate_retval
 
boot_mesg "Stopping system log daemon..."
killproc syslogd
log_info_msg "Stopping system log daemon..."
killproc /sbin/syslogd
evaluate_retval
;;
 
reload)
boot_mesg "Reloading system log daemon config file..."
reloadproc syslogd
log_info_msg "Reloading system log daemon config file..."
pid=`pidofproc syslogd`
kill -HUP "${pid}"
evaluate_retval
;;
 
restart)
56,15 → 63,12
${0} start
;;
 
status)
statusproc syslogd
statusproc klogd
;;
 
*)
echo "Usage: ${0} {start|stop|reload|restart|status}"
echo "Usage: ${0} {start|stop|reload|restart}"
exit 1
;;
esac
 
exit 0
 
# End sysklogd
/branches/lfs-7.0-fr/bootscripts/lfs/init.d/mountvirtfs
5,6 → 5,7
# Description : Mount proc, sysfs, and run
#
# Authors : Gerard Beekmans - gerard@linuxfromscratch.org
# DJ Lucas - dj@linuxfromscratch.org
# Update : Bruce Dubbs - bdubbs@linuxfromscratch.org
#
# Version : LFS 7.0
26,32 → 27,30
# X-LFS-Provided-By: LFS
### END INIT INFO
 
. /lib/boot/functions
. /lib/lsb/init-functions
 
case "${1}" in
start)
# Make sure /run/var is available before logging any messages
mkdir -p /run
mount -n /run || failed=1
mkdir -p /run/{var,lock,shm}
 
log_info_msg "Mounting virtual file systems: /run"
 
boot_mesg -n "Mounting virtual file systems:" ${INFO}
boot_mesg -n " /run" ${NORMAL}
 
if ! mountpoint /proc >/dev/null; then
boot_mesg -n " /proc" ${NORMAL}
log_info_msg2 " /proc"
mount -n /proc || failed=1
fi
 
if ! mountpoint /sys >/dev/null; then
boot_mesg -n " /sys" ${NORMAL}
log_info_msg2 " /sys"
mount -n /sys || failed=1
fi
 
boot_mesg "" ${NORMAL}
 
(exit ${failed})
evaluate_retval
exit $failed
;;
 
*)
60,4 → 59,4
;;
esac
 
# End mountvertfs
# End mountvirtfs
/branches/lfs-7.0-fr/bootscripts/lfs/init.d/localnet
5,6 → 5,7
# Description : Loopback device
#
# Authors : Gerard Beekmans - gerard@linuxfromscratch.org
# DJ Lucas - dj@linuxfromscratch.org
# Update : Bruce Dubbs - bdubbs@linuxfromscratch.org
#
# Version : LFS 7.0
25,23 → 26,23
# X-LFS-Provided-By: LFS
### END INIT INFO
 
. /lib/boot/functions
. /etc/sysconfig/network
. /lib/lsb/init-functions
[ -r /etc/sysconfig/network ] && . /etc/sysconfig/network
 
case "${1}" in
start)
boot_mesg "Bringing up the loopback interface..."
log_info_msg "Bringing up the loopback interface..."
ip addr add 127.0.0.1/8 label lo dev lo
ip link set lo up
evaluate_retval
 
boot_mesg "Setting hostname to ${HOSTNAME}..."
log_info_msg "Setting hostname to ${HOSTNAME}..."
hostname ${HOSTNAME}
evaluate_retval
;;
 
stop)
boot_mesg "Bringing down the loopback interface..."
log_info_msg "Bringing down the loopback interface..."
ip link set lo down
evaluate_retval
;;
63,4 → 64,6
;;
esac
 
exit 0
 
# End localnet
/branches/lfs-7.0-fr/bootscripts/lfs/init.d/console
6,6 → 6,7
#
# Authors : Gerard Beekmans - gerard@linuxfromscratch.org
# Alexander E. Patrakov
# DJ Lucas - dj@linuxfromscratch.org
# Update : Bruce Dubbs - bdubbs@linuxfromscratch.org
#
# Version : LFS 7.0
12,8 → 13,6
#
########################################################################
 
. /lib/boot/functions
 
### BEGIN INIT INFO
# Provides: console
# Required-Start:
28,37 → 27,43
# X-LFS-Provided-By: LFS
### END INIT INFO
 
. /lib/lsb/init-functions
 
# Native English speakers probably don't have /etc/sysconfig/console at all
if [ -r /etc/sysconfig/console ]; then
. /etc/sysconfig/console
else
exit 0
fi
[ -r /etc/sysconfig/console ] && . /etc/sysconfig/console
 
is_true() {
function is_true()
{
[ "$1" = "1" ] || [ "$1" = "yes" ] || [ "$1" = "true" ]
}
 
# See if we need to do anything
if [ -z "${KEYMAP}" ] && [ -z "${KEYMAP_CORRECTIONS}" ] &&
[ -z "${FONT}" ] && [ -z "${LEGACY_CHARSET}" ] &&
! is_true "${UNICODE}"; then
exit 0
fi
 
failed=0
 
case "${1}" in
start)
boot_mesg "Setting up Linux console..."
# There should be no bogus failures below this line!
log_info_msg "Setting up Linux console..."
 
# Figure out if a framebuffer console is used
[ -d /sys/class/graphics/fb0 ] && USE_FB=1 || USE_FB=0
[ -d /sys/class/graphics/fb0 ] && use_fb=1 || use_fb=0
 
# Figure out the command to set the console into the
# desired mode
is_true "${UNICODE}" &&
MODE_COMMAND="${ECHO} -en '\033%G' && kbd_mode -u" ||
MODE_COMMAND="${ECHO} -en '\033%@\033(K' && kbd_mode -a"
MODE_COMMAND="echo -en '\033%G' && kbd_mode -u" ||
MODE_COMMAND="echo -en '\033%@\033(K' && kbd_mode -a"
 
# On framebuffer consoles, font has to be set for each vt in
# UTF-8 mode. This doesn't hurt in non-UTF-8 mode also.
 
! is_true "${USE_FB}" || [ -z "${FONT}" ] ||
! is_true "${use_fb}" || [ -z "${FONT}" ] ||
MODE_COMMAND="${MODE_COMMAND} && setfont ${FONT}"
 
# Apply that command to all consoles mentioned in
66,8 → 71,6
# happen before setfont, otherwise a kernel bug will
# show up and the unicode map of the font will not be
# used.
# FIXME: Fedora Core also initializes two spare consoles
# - do we want that?
 
for TTY in `grep '^[^#].*respawn:/sbin/agetty' /etc/inittab |
grep -o '\btty[[:digit:]]*\b'`
77,12 → 80,12
done
 
# Set the font (if not already set above) and the keymap
is_true "${USE_FB}" || [ -z "${FONT}" ] ||
setfont $FONT ||
failed=1
[ "${use_fb}" == "1" ] || [ -z "${FONT}" ] || setfont $FONT || failed=1
 
[ -z "${KEYMAP}" ] ||
loadkeys ${KEYMAP} >/dev/null 2>&1 ||
failed=1
[ -z "${KEYMAP_CORRECTIONS}" ] ||
loadkeys ${KEYMAP_CORRECTIONS} >/dev/null 2>&1 ||
failed=1
89,19 → 92,21
 
# Convert the keymap from $LEGACY_CHARSET to UTF-8
[ -z "$LEGACY_CHARSET" ] ||
dumpkeys -c "$LEGACY_CHARSET" |
loadkeys -u >/dev/null 2>&1 ||
dumpkeys -c "$LEGACY_CHARSET" | loadkeys -u >/dev/null 2>&1 ||
failed=1
 
# If any of the commands above failed, the trap at the
# top would set $failed to 1
( exit $failed )
( exit $failed )
evaluate_retval
;;
*)
echo $"Usage:" "${0} {start}"
exit 1
;;
 
exit $failed
;;
 
*)
echo $"Usage:" "${0} {start}"
exit 1
;;
esac
 
# End console
/branches/lfs-7.0-fr/bootscripts/lfs/init.d/udev
5,6 → 5,7
# Description : Udev cold-plugging script
#
# Authors : Zack Winkles, Alexander E. Patrakov
# DJ Lucas - dj@linuxfromscratch.org
# Update : Bruce Dubbs - bdubbs@linuxfromscratch.org
#
# Version : LFS 7.0
25,19 → 26,19
# X-LFS-Provided-By: LFS
### END INIT INFO
 
. /lib/boot/functions
. /lib/lsb/init-functions
 
case "${1}" in
start)
boot_mesg "Populating /dev with device nodes..."
log_info_msg "Populating /dev with device nodes... "
if ! grep -q '[[:space:]]sysfs' /proc/mounts; then
echo_failure
boot_mesg -n "FAILURE:\n\nUnable to create" ${FAILURE}
boot_mesg -n " devices without a SysFS filesystem"
boot_mesg -n "\n\nAfter you press Enter, this system"
boot_mesg -n " will be halted and powered off."
boot_mesg -n "\n\nPress Enter to continue..." ${INFO}
boot_mesg "" ${NORMAL}
log_failure_msg2
msg="FAILURE:\n\nUnable to create "
msg="${msg}devices without a SysFS filesystem\n\n"
msg="${msg}After you press Enter, this system "
msg="${msg}will be halted and powered off.\n\n"
log_info_msg "$msg"
log_info_msg "Press Enter to continue..."
wait_for_user
/etc/rc.d/init.d/halt stop
fi
49,14 → 50,15
if ! mountpoint /dev > /dev/null; then
mount -n -t tmpfs tmpfs /dev -o mode=755
fi
 
if [ ${?} != 0 ]; then
echo_failure
boot_mesg -n "FAILURE:\n\nCannot mount a tmpfs" ${FAILURE}
boot_mesg -n " onto /dev, this system will be halted."
boot_mesg -n "\n\nAfter you press Enter, this system"
boot_mesg -n " will be halted and powered off."
boot_mesg -n "\n\nPress Enter to continue..." ${INFO}
boot_mesg "" ${NORMAL}
log_failure_msg2
msg="FAILURE:\n\nCannot mount a tmpfs "
msg="${msg}onto /dev, this system will be halted.\n\n"
msg="${msg}After you press Enter, this system "
msg="${msg}will be halted and powered off.\n\n"
log_failure_msg "$msg"
log_info_msg "Press Enter to continue..."
wait_for_user
/etc/rc.d/init.d/halt stop
fi
82,7 → 84,7
 
# Now wait for udevd to process the uevents we triggered
/sbin/udevadm settle
evaluate_retval
log_success_msg2
;;
 
*)
91,4 → 93,6
;;
esac
 
exit 0
 
# End udev
/branches/lfs-7.0-fr/bootscripts/lfs/init.d/consolelog
5,7 → 5,8
# Description : Set the kernel log level for the console
#
# Authors : Dan Nicholson - dnicholson@linuxfromscratch.org
# Authors : Gerard Beekmans - gerard@linuxfromscratch.org
# Gerard Beekmans - gerard@linuxfromscratch.org
# DJ Lucas - dj@linuxfromscratch.org
# Update : Bruce Dubbs - bdubbs@linuxfromscratch.org
#
# Version : LFS 7.0
27,25 → 28,28
# X-LFS-Provided-By: LFS
### END INIT INFO
 
. /lib/boot/functions
. /lib/lsb/init-functions
 
# set the default loglevel
LOGLEVEL=7
# set the default loglevel if needed
LOGLEVEL=${LOGLEVEL:-7}
 
[ -r /etc/sysconfig/console ] && . /etc/sysconfig/console
[ -r /etc/sysconfig/console ] && . /etc/sysconfig/console
 
case "${1}" in
start)
case "$LOGLEVEL" in
[1-8])
boot_mesg "Setting the console log level to ${LOGLEVEL}..."
log_info_msg "Setting the console log level to ${LOGLEVEL}..."
dmesg -n $LOGLEVEL
evaluate_retval
exit 0
;;
 
*)
boot_mesg "Console log level '${LOGLEVEL}' is invalid" ${FAILURE}
echo_failure
log_failure_msg "Console log level '${LOGLEVEL}' is invalid"
exit 1
;;
esac
;;
 
54,13 → 58,14
if [ -r /proc/sys/kernel/printk ]; then
read level line < /proc/sys/kernel/printk
else
boot_mesg "Can't read the current console log level" ${FAILURE}
echo_failure
log_failure_msg "Can't read the current console log level"
exit 1
fi
 
# Print the value
if [ -n "$level" ]; then
${ECHO} -e "${INFO}The current console log level is ${level}${NORMAL}"
log_info_msg "The current console log level is ${level}\n"
exit 0
fi
;;
 
/branches/lfs-7.0-fr/bootscripts/lfs/init.d/rc
1,4 → 1,4
#!/bin/sh
#!/bin/bash
########################################################################
# Begin rc
#
5,6 → 5,7
# Description : Main Run Level Control Script
#
# Authors : Gerard Beekmans - gerard@linuxfromscratch.org
# : DJ Lucas - dj@linuxfromscratch.org
# Update : Bruce Dubbs - bdubbs@linuxfromscratch.org
#
# Version : LFS 7.0
11,46 → 12,82
#
########################################################################
 
. /lib/boot/functions
. /lib/lsb/init-functions
 
print_error_msg()
function print_error_msg()
{
echo_failure
log_failure_msg
# $i is set when called
boot_mesg -n "FAILURE:\n\nYou should not be reading this error message.\n\n" ${FAILURE}
boot_mesg -n " It means that an unforeseen error took"
boot_mesg -n " place in ${i}, which exited with a return value of"
boot_mesg " ${error_value}.\n"
boot_mesg_flush
boot_mesg -n "If you're able to track this"
boot_mesg -n " error down to a bug in one of the files provided by"
boot_mesg -n " the LFS book, please be so kind to inform us at"
boot_mesg " lfs-dev@linuxfromscratch.org.\n"
boot_mesg_flush
boot_mesg -n "Press Enter to continue..." ${INFO}
boot_mesg "" ${NORMAL}
MSG="FAILURE:\n\nYou should not be reading this error message.\n\n"
MSG="${MSG}It means that an unforeseen error took place in\n"
MSG="${MSG}${i},\n"
MSG="${MSG}which exited with a return value of ${error_value}.\n"
MSG="${MSG}If you're able to track this error down to a bug in one of\n"
MSG="${MSG}the files provided by the files provided by\n"
MSG="${MSG}the ${DISDRI_MINI} book, please be so kind to inform us at\n"
MSG="${MSG}${DISTRO_CONTACT}.\n"
log_failure_msg "${MSG}"
 
log_info_msg "Press Enter to continue..."
wait_for_user
}
 
check_script_status()
function check_script_status()
{
# $i is set when called
if [ ! -f ${i} ]; then
boot_mesg "${i} is not a valid symlink." ${WARNING}
echo_warning
log_warning_msg "${i} is not a valid symlink."
continue
fi
 
if [ ! -x ${i} ]; then
boot_mesg "${i} is not executable, skipping." ${WARNING}
echo_warning
log_warning_msg "${i} is not executable, skipping."
continue
fi
}
 
# This sets a few default terminal options.
stty sane
function run()
{
if [ -z $interactive ]; then
${1} ${2}
return $?
fi
 
while true; do
read -p "Run ${1} ${2} (Yes/no/continue)? " -n 1 runit
echo
 
case ${runit} in
c | C)
interactive=""
${i} ${2}
ret=${?}
break;
;;
 
n | N)
return 0
;;
 
y | Y)
${i} ${2}
ret=${?}
break
;;
esac
done
 
return $ret
}
 
# Read any local settings/overrides
[ -r /etc/sysconfig/rc.site ] && source /etc/sysconfig/rc.site
 
DISTRO=${DISTRO:-"Linux From Scratch"}
DISTRO_CONTACT=${DISTRO_CONTACT:-"lfs-dev@linuxfromscratch.org (Registration required)"}
DISTRO_MINI=${DISTRO_MINI:-"LFS"}
 
# These 3 signals will not cause our script to exit
trap "" INT QUIT TSTP
 
65,10 → 102,29
[ "${previous}" = "" ] && previous=N
 
if [ ! -d /etc/rc.d/rc${runlevel}.d ]; then
boot_mesg "/etc/rc.d/rc${runlevel}.d does not exist."
log_info_msg "/etc/rc.d/rc${runlevel}.d does not exist.\n"
exit 1
fi
 
if [ "$runlevel" == "6" ] || [ "$runlevel" == "0" ]; then IPROMPT="no"; fi
 
if [ "${IPROMPT}" == "yes" ]; then
# dcol and icol are spaces before the message to center the
# message on screen.
 
wcol=$(( ( ${COLUMNS} - ${wlen} ) / 2 ))
icol=$(( ( ${COLUMNS} - ${ilen} ) / 2 ))
 
echo -e "\\033[${wcol}G${welcome_message}"
echo -e "\\033[${icol}G${i_message}${NORMAL}"
echo ""
read -t "${itime}" -n 1 interactive 2>&1 > /dev/null
 
# Make lower case
[ "${interactive}" == "I" ] && interactive="i"
[ "${interactive}" != "i" ] && interactive=""
fi
 
# Attempt to stop all services started by the previous runlevel,
# and killed in this runlevel
if [ "${previous}" != "N" ]; then
78,31 → 134,34
 
suffix=${i#/etc/rc.d/rc$runlevel.d/K[0-9][0-9]}
prev_start=/etc/rc.d/rc$previous.d/S[0-9][0-9]$suffix
sysinit_start=/etc/rc.d/rcsysinit.d/S[0-9][0-9]$suffix
sysinit_start=/etc/rc.d/rcS.d/S[0-9][0-9]$suffix
 
if [ "${runlevel}" != "0" ] && [ "${runlevel}" != "6" ]; then
if [ "${runlevel}" != "0" ] && [ "${runlevel}" != "6" ]; then
if [ ! -f ${prev_start} ] && [ ! -f ${sysinit_start} ]; then
boot_mesg -n "WARNING:\n\n${i} can't be" ${WARNING}
boot_mesg -n " executed because it was not"
boot_mesg -n " not started in the previous"
boot_mesg -n " runlevel (${previous})."
boot_mesg "" ${NORMAL}
boot_mesg_flush
MSG="WARNING:\n\n${i} can't be "
MSG="${MSG}executed because it was not "
MSG="${MSG}not started in the previous "
MSG="${MSG}runlevel (${previous})."
log_warning_msg "$MSG"
continue
fi
fi
${i} stop
 
run ${i} stop
error_value=${?}
 
if [ "${error_value}" != "0" ]; then
print_error_msg
fi
if [ "${error_value}" != "0" ]; then print_error_msg; fi
done
fi
 
[ "${previous}" = "N" ] && IN_BOOT=1
if [ "${previous}" == "N" ]; then export IN_BOOT=1; fi
 
#Start all functions in this runlevel
if [ "$runlevel" == "6" ] && [ -n "${FASTBOOT}" ]; then
touch /fastboot
fi
 
 
# Start all functions in this runlevel
for i in $( ls -v /etc/rc.d/rc${runlevel}.d/S* 2> /dev/null)
do
if [ "${previous}" != "N" ]; then
117,17 → 176,22
 
case ${runlevel} in
0|6)
${i} stop
run ${i} stop
;;
*)
${i} start
run ${i} start
;;
esac
 
error_value=${?}
 
if [ "${error_value}" != "0" ]; then
print_error_msg
fi
if [ "${error_value}" != "0" ]; then print_error_msg; fi
done
 
# Copy the boot log on initial boot only
if [ "${previous}" == "N" ]; then
cat /run/var/bootlog >> /var/log/boot.log
echo "--------" >> /var/log/boot.log # Mark the end of boot
fi
 
# End rc
/branches/lfs-7.0-fr/bootscripts/lfs/init.d/checkfs
6,6 → 6,7
#
# Authors : Gerard Beekmans - gerard@linuxfromscratch.org
# A. Luebke - luebke@users.sourceforge.net
# DJ Lucas - dj@linuxfromscratch.org
# Update : Bruce Dubbs - bdubbs@linuxfromscratch.org
#
# Version : LFS 7.0
37,101 → 38,102
# X-LFS-Provided-By: LFS
### END INIT INFO
 
. /lib/boot/functions
. /lib/lsb/init-functions
 
case "${1}" in
start)
if [ -f /fastboot ]; then
boot_mesg -n "/fastboot found, will not perform" ${INFO}
boot_mesg " file system checks as requested."
echo_ok
msg="/fastboot found, will omit "
msg="${msg} file system checks as requested.\n"
log_info_msg "${msg}"
exit 0
fi
 
boot_mesg "Mounting root file system in read-only mode..."
log_info_msg "Mounting root file system in read-only mode... "
mount -n -o remount,ro / >/dev/null
evaluate_retval
 
if [ ${?} != 0 ]; then
echo_failure
boot_mesg -n "FAILURE:\n\nCannot check root" ${FAILURE}
boot_mesg -n " filesystem because it could not be mounted"
boot_mesg -n " in read-only mode.\n\nAfter you"
boot_mesg -n " press Enter, this system will be"
boot_mesg -n " halted and powered off."
boot_mesg -n "\n\nPress enter to continue..." ${INFO}
boot_mesg "" ${NORMAL}
log_failure_msg2
msg="\n\nCannot check root "
msg="${msg}filesystem because it could not be mounted "
msg="${msg}in read-only mode.\n\n"
msg="${msg}After you press Enter, this system will be "
msg="${msg}halted and powered off.\n\n"
log_failure_msg "${msg}"
 
log_info_msg "Press Enter to continue..."
wait_for_user
/etc/rc.d/init.d/halt stop
else
log_success_msg2
fi
 
if [ -f /forcefsck ]; then
boot_mesg -n "/forcefsck found, forcing file" ${INFO}
boot_mesg " system checks as requested."
echo_ok
msg="\n/forcefsck found, forcing file"
msg="${msg} system checks as requested."
log_success_msg "$msg"
options="-f"
else
options=""
fi
 
boot_mesg "Checking file systems..."
# Note: -a option used to be -p; but this fails e.g.
# on fsck.minix
log_info_msg "Checking file systems..."
# Note: -a option used to be -p; but this fails e.g. on fsck.minix
fsck ${options} -a -A -C -T
error_value=${?}
 
if [ "${error_value}" = 0 ]; then
echo_ok
log_success_msg2
fi
 
if [ "${error_value}" = 1 ]; then
echo_warning
boot_mesg -n "WARNING:\n\nFile system errors" ${WARNING}
boot_mesg -n " were found and have been corrected. "
boot_mesg -n " You may want to double-check that"
boot_mesg -n " everything was fixed properly."
boot_mesg "" ${NORMAL}
msg="\nWARNING:\n\nFile system errors "
msg="${msg}were found and have been corrected.\n"
msg="${msg}You may want to double-check that "
msg="${msg}everything was fixed properly."
log_warning_msg "$msg"
fi
 
if [ "${error_value}" = 2 -o "${error_value}" = 3 ]; then
echo_warning
boot_mesg -n "WARNING:\n\nFile system errors" ${WARNING}
boot_mesg -n " were found and have been been"
boot_mesg -n " corrected, but the nature of the"
boot_mesg -n " errors require this system to be"
boot_mesg -n " rebooted.\n\nAfter you press enter,"
boot_mesg -n " this system will be rebooted"
boot_mesg -n "\n\nPress Enter to continue..." ${INFO}
boot_mesg "" ${NORMAL}
msg="\nWARNING:\n\nFile system errors "
msg="${msg}were found and have been been "
msg="${msg}corrected, but the nature of the "
msg="${msg}errors require this system to be rebooted.\n\n"
msg="${msg}After you press enter, "
msg="${msg}this system will be rebooted\n\n"
log_failure_msg "$msg"
 
log_info_msg "Press Enter to continue..."
wait_for_user
reboot -f
fi
 
if [ "${error_value}" -gt 3 -a "${error_value}" -lt 16 ]; then
echo_failure
boot_mesg -n "FAILURE:\n\nFile system errors" ${FAILURE}
boot_mesg -n " were encountered that could not be"
boot_mesg -n " fixed automatically. This system"
boot_mesg -n " cannot continue to boot and will"
boot_mesg -n " therefore be halted until those"
boot_mesg -n " errors are fixed manually by a"
boot_mesg -n " System Administrator.\n\nAfter you"
boot_mesg -n " press Enter, this system will be"
boot_mesg -n " halted and powered off."
boot_mesg -n "\n\nPress Enter to continue..." ${INFO}
boot_mesg "" ${NORMAL}
msg="\nFAILURE:\n\nFile system errors "
msg="${msg}were encountered that could not be "
msg="${msg}fixed automatically. This system "
msg="${msg}cannot continue to boot and will "
msg="${msg}therefore be halted until those "
msg="${msg}errors are fixed manually by a "
msg="${msg}System Administrator.\n\n"
msg="${msg}After you press Enter, this system will be "
msg="${msg}halted and powered off.\n\n"
log_failure_msg "$msg"
 
log_info_msg "Press Enter to continue..."
wait_for_user
/etc/rc.d/init.d/halt stop
/etc/rc.d/init.d/halt stop
fi
 
if [ "${error_value}" -ge 16 ]; then
echo_failure
boot_mesg -n "FAILURE:\n\nUnexpected Failure" ${FAILURE}
boot_mesg -n " running fsck. Exited with error"
boot_mesg -n " code: ${error_value}."
boot_mesg "" ${NORMAL}
msg="\nFAILURE:\n\nUnexpected Failure "
msg="${msg}running fsck. Exited with error "
msg="${msg} code: ${error_value}."
log_failure_msg $msg
exit ${error_value}
fi
 
exit 0
;;
*)
echo "Usage: ${0} {start}"
/branches/lfs-7.0-fr/bootscripts/lfs/init.d/setclock
5,6 → 5,7
# Description : Setting Linux Clock
#
# Authors : Gerard Beekmans - gerard@linuxfromscratch.org
# DJ Lucas - dj@linuxfromscratch.org
# Update : Bruce Dubbs - bdubbs@linuxfromscratch.org
#
# Version : LFS 7.0
25,9 → 26,9
# X-LFS-Provided-By: LFS BLFS
### END INIT INFO
 
. /lib/boot/functions
. /lib/lsb/init-functions
 
[ -r /etc/sysconfig/clock ] && . /etc/sysconfig/clock
[ -r /etc/sysconfig/clock ] && . /etc/sysconfig/clock
 
 
case "${UTC}" in
43,13 → 44,14
 
case ${1} in
start)
boot_mesg "Setting system clock..."
log_info_msg2 "\n" # Run by udev, make sure start on new line
log_info_msg "Setting system clock..."
hwclock --hctosys ${CLOCKPARAMS} >/dev/null
evaluate_retval
;;
 
stop)
boot_mesg "Setting hardware clock..."
log_info_msg "Setting hardware clock..."
hwclock --systohc ${CLOCKPARAMS} >/dev/null
evaluate_retval
;;
56,6 → 58,9
 
*)
echo "Usage: ${0} {start|stop}"
exit 1
;;
 
esac
 
exit 0
/branches/lfs-7.0-fr/bootscripts/lfs/init.d/modules
5,6 → 5,7
# Description : Module auto-loading script
#
# Authors : Zack Winkles
# DJ Lucas - dj@linuxfromscratch.org
# Update : Bruce Dubbs - bdubbs@linuxfromscratch.org
#
# Version : LFS 7.0
24,23 → 25,23
# X-LFS-Provided-By: LFS
### END INIT INFO
 
. /lib/boot/functions
 
# Assure that the kernel has module support.
[ -e /proc/ksyms -o -e /proc/modules ] || exit 0
 
. /lib/lsb/init-functions
 
case "${1}" in
start)
# Exit if there's no modules file or there are no
# valid entries
[ -r /etc/sysconfig/modules ] &&
egrep -qv '^($|#)' /etc/sysconfig/modules ||
exit 0
[ -r /etc/sysconfig/modules ] || exit 0
egrep -qv '^($|#)' /etc/sysconfig/modules || exit 0
 
boot_mesg -n "Loading modules:" ${INFO}
log_info_msg "Loading modules:"
 
# Only try to load modules if the user has actually given us
# some modules to load.
 
while read module args; do
 
# Ignore comments and blank lines.
48,29 → 49,25
""|"#"*) continue ;;
esac
 
# Attempt to load the module, making
# sure to pass any arguments provided.
# Attempt to load the module, passing any arguments provided.
modprobe ${module} ${args} >/dev/null
 
# Print the module name if successful,
# otherwise take note.
# Print the module name if successful, otherwise take note.
if [ $? -eq 0 ]; then
boot_mesg -n " ${module}" ${NORMAL}
log_info_msg2 " ${module}"
else
failedmod="${failedmod} ${module}"
fi
done < /etc/sysconfig/modules
 
boot_mesg "" ${NORMAL}
# Print a message about successfully loaded
# modules on the correct line.
echo_ok
# Print a message about successfully loaded modules on the correct line.
log_success_msg2
 
# Print a failure message with a list of any
# modules that may have failed to load.
# Print a failure message with a list of any modules that
# may have failed to load.
if [ -n "${failedmod}" ]; then
boot_mesg "Failed to load modules:${failedmod}" ${FAILURE}
echo_failure
log_failure_msg "Failed to load modules:${failedmod}"
exit 1
fi
;;
 
80,4 → 77,6
;;
esac
 
exit 0
 
# End modules
/branches/lfs-7.0-fr/bootscripts/lfs/init.d/functions
12,12 → 12,12
# Notes : With code based on Matthias Benkmann's simpleinit-msb
# http://winterdrache.de/linux/newboot/index.html
#
# The file should be located in /lib/boot
# This file is only present for backward BLFS compatibility
#
########################################################################
 
# Set any needed environment variables e.g. HEADLESS
[ -r /etc/sysconfig/init_params ] && . /etc/sysconfig/init_params
. /lib/lsb/init_params
 
## Environmental setup
# Setup default values for environment
/branches/lfs-7.0-fr/bootscripts/lfs/init.d/swap
5,6 → 5,7
# Description : Swap Control Script
#
# Authors : Gerard Beekmans - gerard@linuxfromscratch.org
# DJ Lucas - dj@linuxfromscratch.org
# Update : Bruce Dubbs - bdubbs@linuxfromscratch.org
#
# Version : LFS 7.0
25,17 → 26,17
# X-LFS-Provided-By: LFS
### END INIT INFO
 
. /lib/boot/functions
. /lib/lsb/init-functions
 
case "${1}" in
start)
boot_mesg "Activating all swap files/partitions..."
log_info_msg "Activating all swap files/partitions..."
swapon -a
evaluate_retval
;;
 
stop)
boot_mesg "Deactivating all swap files/partitions..."
log_info_msg "Deactivating all swap files/partitions..."
swapoff -a
evaluate_retval
;;
47,9 → 48,7
;;
 
status)
boot_mesg "Retrieving swap status." ${INFO}
echo_ok
echo
log_success_msg "Retrieving swap status."
swapon -s
;;
 
59,4 → 58,6
;;
esac
 
exit 0
 
# End swap
/branches/lfs-7.0-fr/bootscripts/lfs/init.d/sendsignals
5,6 → 5,7
# Description : Sendsignals Script
#
# Authors : Gerard Beekmans - gerard@linuxfromscratch.org
# DJ Lucas - dj@linuxfromscratch.org
# Update : Bruce Dubbs - bdubbs@linuxfromscratch.org
#
# Version : LFS 7.0
24,11 → 25,11
# X-LFS-Provided-By: LFS
### END INIT INFO
 
. /lib/boot//functions
. /lib/lsb/init-functions
 
case "${1}" in
stop)
boot_mesg "Sending all processes the TERM signal..."
log_info_msg "Sending all processes the TERM signal..."
killall5 -15
error_value=${?}
 
35,12 → 36,12
sleep ${KILLDELAY}
 
if [ "${error_value}" = 0 -o "${error_value}" = 2 ]; then
echo_ok
log_success_msg
else
echo_failure
log_failure_msg
fi
 
boot_mesg "Sending all processes the KILL signal..."
log_info_msg "Sending all processes the KILL signal..."
killall5 -9
error_value=${?}
 
47,9 → 48,9
sleep ${KILLDELAY}
 
if [ "${error_value}" = 0 -o "${error_value}" = 2 ]; then
echo_ok
log_success_msg
else
echo_failure
log_failure_msg
fi
;;
 
60,4 → 61,6
 
esac
 
exit 0
 
# End sendsignals
/branches/lfs-7.0-fr/bootscripts/lfs/init.d/cleanfs
5,6 → 5,7
# Description : Clean file system
#
# Authors : Gerard Beekmans - gerard@linuxfromscratch.org
# DJ Lucas - dj@linuxfromscratch.org
# Update : Bruce Dubbs - bdubbs@linuxfromscratch.org
#
# Version : LFS 7.0
26,67 → 27,70
# X-LFS-Provided-By: LFS
### END INIT INFO
 
. /lib/boot/functions
. /lib/lsb/init-functions
 
# Function to create files/directory on boot.
create_files() {
# Read in the configuration file.
function create_files()
{
# Input to file descriptor 9 and output to stdin (redirection)
exec 9>&0 < /etc/sysconfig/createfiles
while read name type perm usr grp dtype maj min junk
do
# Ignore comments and blank lines.
case "${name}" in
""|\#*) continue ;;
 
while read name type perm usr grp dtype maj min junk
do
# Ignore comments and blank lines.
case "${name}" in
""|\#*) continue ;;
esac
 
# Ignore existing files.
if [ ! -e "${name}" ]; then
# Create stuff based on its type.
case "${type}" in
dir)
mkdir "${name}"
;;
file)
:> "${name}"
;;
dev)
case "${dtype}" in
char)
mknod "${name}" c ${maj} ${min}
;;
block)
mknod "${name}" b ${maj} ${min}
;;
pipe)
mknod "${name}" p
;;
*)
log_warning_msg "\nUnknown device type: ${dtype}"
;;
esac
;;
*)
log_warning_msg "\nUnknown type: ${type}"
continue
;;
esac
 
# Ignore existing files.
if [ ! -e "${name}" ]; then
# Create stuff based on its type.
case "${type}" in
dir)
mkdir "${name}"
;;
file)
:> "${name}"
;;
dev)
case "${dtype}" in
char)
mknod "${name}" c ${maj} ${min}
;;
block)
mknod "${name}" b ${maj} ${min}
;;
pipe)
mknod "${name}" p
;;
*)
boot_mesg -n "\nUnknown device type: ${dtype}" ${WARNING}
boot_mesg "" ${NORMAL}
;;
esac
;;
*)
boot_mesg -n "\nUnknown type: ${type}" ${WARNING}
boot_mesg "" ${NORMAL}
continue
;;
esac
# Set up the permissions, too.
chown ${usr}:${grp} "${name}"
chmod ${perm} "${name}"
fi
done
 
# Set up the permissions, too.
chown ${usr}:${grp} "${name}"
chmod ${perm} "${name}"
fi
done
# Close file descriptor 9 (end redirection)
exec 0>&9 9>&-
return 0
}
 
case "${1}" in
start)
boot_mesg -n "Cleaning file systems:" ${INFO}
log_info_msg "Cleaning file systems:"
 
if [ "${SKIPTMPCLEAN}" = "" ]; then
boot_mesg -n " /tmp" ${NORMAL}
log_info_msg2 "\n /tmp"
cd /tmp &&
find . -xdev -mindepth 1 ! -name lost+found -delete || failed=1
fi
102,10 → 106,12
evaluate_retval
 
if egrep -qv '^(#|$)' /etc/sysconfig/createfiles 2>/dev/null; then
boot_mesg "Creating files and directories..."
create_files
log_info_msg "Creating files and directories... "
create_files # Always returns 0
evaluate_retval
fi
 
exit $failed
;;
*)
echo "Usage: ${0} {start}"
/branches/lfs-7.0-fr/bootscripts/lfs/init.d/template
25,24 → 25,19
# X-LFS-Provided-By:
### END INIT INFO
 
. /lib/boot/functions
. /lib/lsb/init-functions
 
case "${1}" in
start)
boot_mesg "Starting..."
loadproc
log_info_msg "Starting..."
start_daemon fully_qualified_path
;;
 
stop)
boot_mesg "Stopping..."
killproc
log_info_msg "Stopping..."
killproc fully_qualified_path
;;
 
reload)
boot_mesg "Reloading..."
reloadproc
;;
 
restart)
${0} stop
sleep 1
49,14 → 44,12
${0} start
;;
 
status)
statusproc
;;
 
*)
echo "Usage: ${0} {start|stop|reload|restart|status}"
echo "Usage: ${0} {start|stop|restart}"
exit 1
;;
esac
 
exit 0
 
# End scriptname
/branches/lfs-7.0-fr/bootscripts/lfs/lib/services/ipv4-static-route
0,0 → 1,92
#!/bin/sh
########################################################################
# Begin /lib/services/ipv4-static-route
#
# Description : IPV4 Static Route Script
#
# Authors : Kevin P. Fleming - kpfleming@linuxfromscratch.org
# DJ Lucas - dj@linuxfromscratch.org
# Update : Bruce Dubbs - bdubbs@linuxfromscratch.org
#
# Version : LFS 7.0
#
########################################################################
 
. /lib/lsb/init-functions
. ${IFCONFIG}
 
case "${TYPE}" in
("" | "network")
need_ip=1
need_gateway=1
;;
 
("default")
need_gateway=1
args="${args} default"
desc="default"
;;
 
("host")
need_ip=1
;;
 
("unreachable")
need_ip=1
args="${args} unreachable"
desc="unreachable "
;;
 
(*)
log_failure_msg "Unknown route type (${TYPE}) in ${IFCONFIG}, cannot continue."
exit 1
;;
esac
 
if [ -n "${need_ip}" ]; then
if [ -z "${IP}" ]; then
log_failure_msg "IP variable missing from ${IFCONFIG}, cannot continue."
exit 1
fi
 
if [ -z "${PREFIX}" ]; then
log_failure_msg "PREFIX variable missing from ${IFCONFIG}, cannot continue."
exit 1
fi
args="${args} ${IP}/${PREFIX}"
desc="${desc}${IP}/${PREFIX}"
fi
 
if [ -n "${need_gateway}" ]; then
if [ -z "${GATEWAY}" ]; then
log_failure_msg "GATEWAY variable missing from ${IFCONFIG}, cannot continue."
exit 1
fi
args="${args} via ${GATEWAY}"
fi
 
if [ -n "${SOURCE}" ]; then
args="${args} src ${SOURCE}"
fi
 
case "${2}" in
up)
log_info_msg "Adding '${desc}' route to the ${1} interface..."
ip route add ${args} dev ${1}
evaluate_retval
;;
down)
log_info_msg "Removing '${desc}' route from the ${1} interface..."
ip route del ${args} dev ${1}
evaluate_retval
;;
*)
echo "Usage: ${0} [interface] {up|down}"
exit 1
;;
esac
 
# End /lib/services/ipv4-static-route
Property changes:
Added: svn:executable
## -0,0 +1 ##
+*
\ No newline at end of property
Index: bootscripts/lfs/lib/services/ipv4-static
===================================================================
--- bootscripts/lfs/lib/services/ipv4-static (nonexistent)
+++ bootscripts/lfs/lib/services/ipv4-static (revision 1426)
@@ -0,0 +1,89 @@
+#!/bin/sh
+########################################################################
+# Begin /lib/services/ipv4-static
+#
+# Description : IPV4 Static Boot Script
+#
+# Authors : Nathan Coulson - nathan@linuxfromscratch.org
+# Kevin P. Fleming - kpfleming@linuxfromscratch.org
+# Update : Bruce Dubbs - bdubbs@linuxfromscratch.org
+#
+# Version : LFS 7.0
+#
+########################################################################
+
+. /lib/lsb/init-functions
+. ${IFCONFIG}
+
+if [ -z "${IP}" ]; then
+ log_failure_msg "\nIP variable missing from ${IFCONFIG}, cannot continue."
+ exit 1
+fi
+
+if [ -z "${PREFIX}" -a -z "${PEER}" ]; then
+ log_warning_msg "\nPREFIX variable missing from ${IFCONFIG}, assuming 24."
+ PREFIX=24
+ args="${args} ${IP}/${PREFIX}"
+
+elif [ -n "${PREFIX}" -a -n "${PEER}" ]; then
+ log_failure_msg "\nPREFIX and PEER both specified in ${IFCONFIG}, cannot continue."
+ exit 1
+
+elif [ -n "${PREFIX}" ]; then
+ args="${args} ${IP}/${PREFIX}"
+
+elif [ -n "${PEER}" ]; then
+ args="${args} ${IP} peer ${PEER}"
+fi
+
+if [ -n "${BROADCAST}" ]; then
+ args="${args} broadcast ${BROADCAST}"
+fi
+
+case "${2}" in
+ up)
+ if [ "$(ip addr show ${1} | grep ${IP})" == "" ]; then
+ log_info_msg2 "\n" # Terminate the previous message
+ log_info_msg "Adding IPv4 address ${IP} to the ${1} interface..."
+ ip addr add ${args} dev ${1}
+ evaluate_retval
+
+ if [ -n "${GATEWAY}" ]; then
+ if ip route | grep -q default; then
+ log_warning_msg "\nGateway already setup; skipping."
+ else
+ log_info_msg "Setting up default gateway..."
+ ip route add default via ${GATEWAY} dev ${1}
+ evaluate_retval
+ fi
+ fi
+ else
+ msg="Cannot add IPv4 address ${IP} to ${1}. Already present."
+ log_warning_msg "$msg"
+ fi
+ ;;
+
+ down)
+ if [ "$(ip addr show ${1} | grep ${IP})" != "" ]; then
+ log_info_msg "Removing IPv4 address ${IP} from the ${1} interface..."
+ ip addr del ${args} dev ${1}
+ evaluate_retval
+ fi
+
+ if [ -n "${GATEWAY}" ]; then
+ # Only remove the gateway if ther are no remaining ipv4 addresses
+ if [ "$(ip addr show ${1} | grep 'inet ')" != "" ]; then
+ log_info_msg "Removing default gateway..."
+ ip route del default
+ evaluate_retval
+ fi
+ fi
+ ;;
+
+ *)
+ echo "Usage: ${0} [interface] {up|down}"
+ exit 1
+ ;;
+esac
+
+# End /lib/services/ipv4-static
/bootscripts/lfs/lib/services/ipv4-static
Property changes:
Added: svn:executable
## -0,0 +1 ##
+*
\ No newline at end of property
Index: bootscripts/lfs/lib/services/init-functions
===================================================================
--- bootscripts/lfs/lib/services/init-functions (nonexistent)
+++ bootscripts/lfs/lib/services/init-functions (revision 1426)
@@ -0,0 +1,675 @@
+#!/bin/sh
+########################################################################
+#
+# Begin /lib/lsb/init-funtions
+#
+# Description : Run Level Control Functions
+#
+# Authors : Gerard Beekmans - gerard@linuxfromscratch.org
+# : DJ Lucas - dj@linuxfromscratch.org
+# Update : Bruce Dubbs - bdubbs@linuxfromscratch.org
+#
+# Version : LFS 7.0
+#
+# Notes : With code based on Matthias Benkmann's simpleinit-msb
+# http://winterdrache.de/linux/newboot/index.html
+#
+# The file should be located in /lib/lsb
+#
+########################################################################
+
+## Environmental setup
+# Setup default values for environment
+umask 022
+export PATH="/bin:/usr/bin:/sbin:/usr/sbin"
+
+## Screen Dimensions
+# Find current screen size
+if [ -z "${COLUMNS}" ]; then
+ COLUMNS=$(stty size)
+ COLUMNS=${COLUMNS##* }
+fi
+
+# When using remote connections, such as a serial port, stty size returns 0
+if [ "${COLUMNS}" = "0" ]; then
+ COLUMNS=80
+fi
+
+## Measurements for positioning result messages
+COL=$((${COLUMNS} - 8))
+WCOL=$((${COL} - 2))
+
+## Set Cursor Position Commands, used via echo
+SET_COL="\\033[${COL}G" # at the $COL char
+SET_WCOL="\\033[${WCOL}G" # at the $WCOL char
+CURS_UP="\\033[1A\\033[0G" # Up one line, at the 0'th char
+
+## Set color commands, used via echo
+# 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
+
+NORMAL="\\033[0;39m" # Standard console grey
+SUCCESS="\\033[1;32m" # Success is green
+WARNING="\\033[1;33m" # Warnings are yellow
+FAILURE="\\033[1;31m" # Failures are red
+INFO="\\033[1;36m" # Information is light cyan
+BRACKET="\\033[1;34m" # Brackets are blue
+
+BOOTLOG=/run/var/bootlog
+KILLDELAY=3
+
+# Set any user specified environment variables e.g. HEADLESS
+[ -r /etc/sysconfig/rc.site ] && . /etc/sysconfig/rc.site
+
+################################################################################
+# start_daemon() #
+# Usage: start_daemon [-f] [-n nicelevel] [-p pidfile] pathname [args...] #
+# #
+# Purpose: This runs the specified program as a daemon #
+# #
+# Inputs: -f: (force) run the program even if it is already running. #
+# -n nicelevel: specify a nice level. See 'man nice(1)'. #
+# -p pidfile: use the specified file to determine PIDs. #
+# pathname: the complete path to the specified program #
+# args: additional arguments passed to the program (pathname) #
+# #
+# Return values (as defined by LSB exit codes): #
+# 0 - program is running or service is OK #
+# 1 - generic or unspecified error #
+# 2 - invalid or excessive argument(s) #
+# 5 - program is not installed #
+################################################################################
+start_daemon()
+{
+ local force=""
+ local nice="0"
+ local pidfile=""
+ local pidlist=""
+ local retval=""
+
+ # Process arguments
+ while true
+ do
+ case "${1}" in
+
+ -f)
+ force="1"
+ shift 1
+ ;;
+
+ -n)
+ nice="${2}"
+ shift 2
+ ;;
+
+ -p)
+ pidfile="${2}"
+ shift 2
+ ;;
+
+ -*)
+ return 2
+ ;;
+
+ *)
+ program="${1}"
+ break
+ ;;
+ esac
+ done
+
+ # Check for a valid program
+ if [ ! -e "${program}" ]; then return 5; fi
+
+ # Execute
+ if [ -z "${force}" ]; then
+ if [ -z "${pidfile}" ]; then
+ # Determine the pid by discovery
+ pidlist=`pidofproc "${1}"`
+ retval="${?}"
+ else
+ # The PID file contains the needed PIDs
+ # Note that by LSB requirement, the path must be given to pidofproc,
+ # however, it is not used by the current implementation or standard.
+ pidlist=`pidofproc -p "${pidfile}" "${1}"`
+ retval="${?}"
+ fi
+
+ # Return a value ONLY
+ # It is the init script's (or distribution's functions) responsibilty
+ # to log messages!
+ case "${retval}" in
+
+ 0)
+ # Program is already running correctly, this is a
+ # succesful start.
+ return 0
+ ;;
+
+ 1)
+ # Program is not running, but an invalid pid file exists
+ # remove the pid file and continue
+ rm -f "${pidfile}"
+ ;;
+
+ 3)
+ # Program is not running and no pidfile exists
+ # do nothing here, let start_deamon continue.
+ ;;
+
+ *)
+ # Others as returned by status values shall not be interpreted
+ # and returned as an unspecified error.
+ return 1
+ ;;
+ esac
+ fi
+
+ # Do the start!
+
+ nice -n "${nice}" "${@}"
+}
+
+################################################################################
+# killproc() #
+# Usage: killproc [-p pidfile] pathname [signal] #
+# #
+# Purpose: Send control signals to running processes #
+# #
+# Inputs: -p pidfile, uses the specified pidfile #
+# pathname, pathname to the specified program #
+# signal, send this signal to pathname #
+# #
+# Return values (as defined by LSB exit codes): #
+# 0 - program (pathname) has stopped/is already stopped or a #
+# running program has been sent specified signal and stopped #
+# successfully #
+# 1 - generic or unspecified error #
+# 2 - invalid or excessive argument(s) #
+# 5 - program is not installed #
+# 7 - program is not running and a signal was supplied #
+################################################################################
+killproc()
+{
+ local pidfile
+ local program
+ local prefix
+ local progname
+ local signal="-TERM"
+ local fallback="-KILL"
+ local nosig
+ local pidlist
+ local retval
+ local pid
+ local delay="30"
+ local piddead
+ local dtime
+
+ # Process arguments
+ while true; do
+ case "${1}" in
+ -p)
+ pidfile="${2}"
+ shift 2
+ ;;
+
+ *)
+ program="${1}"
+ if [ -n "${2}" ]; then
+ signal="${2}"
+ fallback=""
+ else
+ nosig=1
+ fi
+
+ # Error on additional arguments
+ if [ -n "${3}" ]; then
+ return 2
+ else
+ break
+ fi
+ ;;
+ esac
+ done
+
+ # Check for a valid program
+ if [ ! -e "${program}" ]; then return 5; fi
+
+ # Check for a valid signal
+ check_signal "${signal}"
+ if [ "${?}" -ne "0" ]; then return 2; fi
+
+ # Get a list of pids
+ if [ -z "${pidfile}" ]; then
+ # determine the pid by discovery
+ pidlist=`pidofproc "${1}"`
+ retval="${?}"
+ else
+ # The PID file contains the needed PIDs
+ # Note that by LSB requirement, the path must be given to pidofproc,
+ # however, it is not used by the current implementation or standard.
+ pidlist=`pidofproc -p "${pidfile}" "${1}"`
+ retval="${?}"
+ fi
+
+ # Return a value ONLY
+ # It is the init script's (or distribution's functions) responsibilty
+ # to log messages!
+ case "${retval}" in
+
+ 0)
+ # Program is running correctly
+ # Do nothing here, let killproc continue.
+ ;;
+
+ 1)
+ # Program is not running, but an invalid pid file exists
+ # Remove the pid file.
+ rm -f "${pidfile}"
+
+ # This is only a success if no signal was passed.
+ if [ -n "${nosig}" ]; then
+ return 0
+ else
+ return 7
+ fi
+ ;;
+
+ 3)
+ # Program is not running and no pidfile exists
+ # This is only a success if no signal was passed.
+ if [ -n "${nosig}" ]; then
+ return 0
+ else
+ return 7
+ fi
+ ;;
+
+ *)
+ # Others as returned by status values shall not be interpreted
+ # and returned as an unspecified error.
+ return 1
+ ;;
+ esac
+
+ # Perform different actions for exit signals and control signals
+ check_sig_type "${signal}"
+
+ if [ "${?}" -eq "0" ]; then # Signal is used to terminate the program
+
+ # Account for empty pidlist (pid file still exists and no
+ # signal was given)
+ if [ "${pidlist}" != "" ]; then
+
+ # Kill the list of pids
+ for pid in ${pidlist}; do
+
+ kill -0 "${pid}" 2> /dev/null
+
+ if [ "${?}" -ne "0" ]; then
+ # Process is dead, continue to next and assume all is well
+ continue
+ else
+ kill "${signal}" "${pid}" 2> /dev/null
+
+ # Wait up to ${delay}/10 seconds to for "${pid}" to
+ # terminate in 10ths of a second
+
+ while [ "${delay}" -ne "0" ]; do
+ kill -0 "${pid}" 2> /dev/null || piddead="1"
+ if [ "${piddead}" = "1" ]; then break; fi
+ sleep 0.1
+ delay="$(( ${delay} - 1 ))"
+ done
+
+ # If a fallback is set, and program is still running, then
+ # use the fallback
+ if [ -n "${fallback}" -a "${piddead}" != "1" ]; then
+ kill "${fallback}" "${pid}" 2> /dev/null
+ sleep 1
+ # Check again, and fail if still running
+ kill -0 "${pid}" 2> /dev/null && return 1
+ else
+ # just check one last time and if still alive, fail
+ sleep 1
+ kill -0 "${pid}" 2> /dev/null && return 1
+ fi
+ fi
+ done
+ fi
+
+ # Check for and remove stale PID files.
+ if [ -z "${pidfile}" ]; then
+ # Find the basename of $program
+ prefix=`echo "${program}" | sed 's/[^/]*$//'`
+ progname=`echo "${program}" | sed "s@${prefix}@@"`
+
+ if [ -e "/var/run/${progname}.pid" ]; then
+ rm -f "/var/run/${progname}.pid" 2> /dev/null
+ fi
+ else
+ if [ -e "${pidfile}" ]; then rm -f "${pidfile}" 2> /dev/null; fi
+ fi
+
+ # For signals that do not expect a program to exit, simply
+ # let kill do it's job, and evaluate kills return for value
+
+ else # check_sig_type - signal is not used to terminate program
+ for pid in ${pidlist}; do
+ kill "${signal}" "${pid}"
+ if [ "${?}" -ne "0" ]; then return 1; fi
+ done
+ fi
+}
+
+################################################################################
+# pidofproc() #
+# Usage: pidofproc [-p pidfile] pathname #
+# #
+# Purpose: This function returns one or more pid(s) for a particular daemon #
+# #
+# Inputs: -p pidfile, use the specified pidfile instead of pidof #
+# pathname, path to the specified program #
+# #
+# Return values (as defined by LSB status codes): #
+# 0 - Success (PIDs to stdout) #
+# 1 - Program is dead, PID file still exists (remaining PIDs output) #
+# 3 - Program is not running (no output) #
+################################################################################
+pidofproc()
+{
+ local pidfile
+ local program
+ local prefix
+ local progname
+ local pidlist
+ local lpids
+ local exitstatus="0"
+
+ # Process arguments
+ while true; do
+ case "${1}" in
+
+ -p)
+ pidfile="${2}"
+ shift 2
+ ;;
+
+ *)
+ program="${1}"
+ if [ -n "${2}" ]; then
+ # Too many arguments
+ # Since this is status, return unknown
+ return 4
+ else
+ break
+ fi
+ ;;
+ esac
+ done
+
+ # If a PID file is not specified, try and find one.
+ if [ -z "${pidfile}" ]; then
+ # Get the program's basename
+ prefix=`echo "${program}" | sed 's/[^/]*$//'`
+ progname=`echo "${program}" | sed "s@${prefix}@@"`
+
+ # If a PID file exists with that name, assume that is it.
+ if [ -e "/var/run/${progname}.pid" ]; then
+ pidfile="/var/run/${progname}.pid"
+ fi
+ fi
+
+ # If a PID file is set and exists, use it.
+ if [ -n "${pidfile}" -a -e "${pidfile}" ]; then
+
+ # Use the value in the first line of the pidfile
+ pidlist=`/bin/head -n1 "${pidfile}"`
+ # This can optionally be written as 'sed 1q' to repalce 'head -n1'
+ # should LFS move /bin/head to /usr/bin/head
+ else
+ # Use pidof
+ pidlist=`pidof "${program}"`
+ fi
+
+ # Figure out if all listed PIDs are running.
+ for pid in ${pidlist}; do
+ kill -0 ${pid} 2> /dev/null
+
+ if [ "${?}" -eq "0" ]; then
+ lpids="${pids}${pid} "
+ else
+ exitstatus="1"
+ fi
+ done
+
+ if [ -z "${lpids}" -a ! -f "${pidfile}" ]; then
+ return 3
+ else
+ echo "${lpids}"
+ return "${exitstatus}"
+ fi
+}
+
+################################################################################
+# timespec() #
+# #
+# Purpose: An internal utility function to format a timestamp #
+# a boot log file. Sets the STAMP variable. #
+# #
+# Return value: Not used #
+################################################################################
+timespec()
+{
+ STAMP="$(echo `date +"%b %d %T %:z"` `hostname`) "
+ return 0
+}
+
+################################################################################
+# log_success_msg() #
+# Usage: log_success_msg ["message"] #
+# #
+# Purpose: Print a successful status message to the screen and #
+# a boot log file. #
+# #
+# Inputs: $@ - Message #
+# #
+# Return values: Not used #
+################################################################################
+log_success_msg()
+{
+ echo -n -e "${@}"
+ echo -e "${SET_COL}${BRACKET}[${SUCCESS} OK ${BRACKET}]${NORMAL}"
+
+ timespec
+ echo -e "${STAMP} ${@} OK" >> ${BOOTLOG}
+ return 0
+}
+
+log_success_msg2()
+{
+ echo -n -e "${@}"
+ echo -e "${SET_COL}${BRACKET}[${SUCCESS} OK ${BRACKET}]${NORMAL}"
+
+ echo " OK" >> ${BOOTLOG}
+ return 0
+}
+
+################################################################################
+# log_failure_msg() #
+# Usage: log_failure_msg ["message"] #
+# #
+# Purpose: Print a failure status message to the screen and #
+# a boot log file. #
+# #
+# Inputs: $@ - Message #
+# #
+# Return values: Not used #
+################################################################################
+log_failure_msg()
+{
+ echo -n -e "${@}"
+ echo -e "${SET_COL}${BRACKET}[${FAILURE} FAIL ${BRACKET}]${NORMAL}"
+
+ timespec
+ echo -e "${STAMP} ${@} FAIL" >> ${BOOTLOG}
+ return 0
+}
+
+log_failure_msg2()
+{
+ echo -n -e "${@}"
+ echo -e "${SET_COL}${BRACKET}[${FAILURE} FAIL ${BRACKET}]${NORMAL}"
+
+ echo "FAIL" >> ${BOOTLOG}
+ return 0
+}
+
+################################################################################
+# log_warning_msg() #
+# Usage: log_warning_msg ["message"] #
+# #
+# Purpose: Print a warning status message to the screen and #
+# a boot log file. #
+# #
+# Return values: Not used #
+################################################################################
+log_warning_msg()
+{
+ echo -n -e "${@}"
+ echo -e "${SET_COL}${BRACKET}[${WARNING} WARN ${BRACKET}]${NORMAL}"
+
+ timespec
+ echo -e "${STAMP} ${@} WARN" >> ${BOOTLOG}
+ return 0
+}
+
+################################################################################
+# log_info_msg() #
+# Usage: log_info_msg message #
+# #
+# Purpose: Print an information message to the screen and #
+# a boot log file. Does not print a trailing newline character. #
+# #
+# Return values: Not used #
+################################################################################
+log_info_msg()
+{
+ echo -n -e "${@}"
+
+ timespec
+ echo -n -e "${STAMP} ${@}" >> ${BOOTLOG}
+ return 0
+}
+
+log_info_msg2()
+{
+ echo -n -e "${@}"
+
+ echo -n -e "${@}" >> ${BOOTLOG}
+ return 0
+}
+
+################################################################################
+# evaluate_retval() #
+# Usage: Evaluate a return value and print success or failyure as appropriate #
+# #
+# Purpose: Convenience function to terminate an info message #
+# #
+# Return values: Not used #
+################################################################################
+evaluate_retval()
+{
+ local error_value="${?}"
+
+ if [ ${error_value} = 0 ]; then
+ log_success_msg2
+ else
+ log_failure_msg2
+ fi
+}
+
+################################################################################
+# check_signal() #
+# Usage: check_signal [ -{signal} | {signal} ] #
+# #
+# Purpose: Check for a valid signal. This is not defined by any LSB draft, #
+# however, it is required to check the signals to determine if the #
+# signals chosen are invalid arguments to the other functions. #
+# #
+# Inputs: Accepts a single string value in the form or -{signal} or {signal} #
+# #
+# Return values: #
+# 0 - Success (signal is valid #
+# 1 - Signal is not valid #
+################################################################################
+check_signal()
+{
+ local valsig
+
+ # Add error handling for invalid signals
+ valsig="-ALRM -HUP -INT -KILL -PIPE -POLL -PROF -TERM -USR1 -USR2"
+ valsig="${valsig} -VTALRM -STKFLT -PWR -WINCH -CHLD -URG -TSTP -TTIN"
+ valsig="${valsig} -TTOU -STOP -CONT -ABRT -FPE -ILL -QUIT -SEGV -TRAP"
+ valsig="${valsig} -SYS -EMT -BUS -XCPU -XFSZ -0 -1 -2 -3 -4 -5 -6 -8 -9"
+ valsig="${valsig} -11 -13 -14 -15"
+
+ echo "${valsig}" | grep -- " ${1} " > /dev/null
+
+ if [ "${?}" -eq "0" ]; then
+ return 0
+ else
+ return 1
+ fi
+}
+
+################################################################################
+# check_sig_type() #
+# Usage: check_signal [ -{signal} | {signal} ] #
+# #
+# Purpose: Check if signal is a program termination signal or a control signal #
+# This is not defined by any LSB draft, however, it is required to #
+# check the signals to determine if they are intended to end a #
+# program or simply to control it. #
+# #
+# Inputs: Accepts a single string value in the form or -{signal} or {signal} #
+# #
+# Return values: #
+# 0 - Signal is used for program termination #
+# 1 - Signal is used for program control #
+################################################################################
+check_sig_type()
+{
+ local valsig
+
+ # The list of termination signals (limited to generally used items)
+ valsig="-ALRM -INT -KILL -TERM -PWR -STOP -ABRT -QUIT -2 -3 -6 -9 -14 -15"
+
+ echo "${valsig}" | grep -- " ${1} " > /dev/null
+
+ if [ "${?}" -eq "0" ]; then
+ return 0
+ else
+ return 1
+ fi
+}
+
+################################################################################
+# wait_for_user() #
+# #
+# Purpose: Wait for the user to respond if not a headless system #
+# #
+################################################################################
+wait_for_user()
+{
+ # Wait for the user by default
+ [ "${HEADLESS=0}" = "0" ] && read ENTER
+ return 0
+}
+
+# End /lib/lsb/init-functions
Index: bootscripts/lfs/sbin/ifup
===================================================================
--- bootscripts/lfs/sbin/ifup (nonexistent)
+++ bootscripts/lfs/sbin/ifup (revision 1426)
@@ -0,0 +1,110 @@
+#!/bin/sh
+########################################################################
+# Begin /sbin/ifup
+#
+# Description : Interface Up
+#
+# Authors : Nathan Coulson - nathan@linuxfromscratch.org
+# Kevin P. Fleming - kpfleming@linuxfromscratch.org
+# Update : Bruce Dubbs - bdubbs@linuxfromscratch.org
+#
+# Version : LFS 7.0
+#
+# Notes : The IFCONFIG variable is passed to the SERVICE script
+# in the /lib/services directory, to indicate what file the
+# service should source to get interface specifications.
+#
+########################################################################
+
+RELEASE="7.0"
+
+USAGE="Usage: $0 [ -hV ] [--help] [--version] interface"
+VERSTR="LFS ifup, version ${RELEASE}"
+
+while [ $# -gt 0 ]; do
+ case "$1" in
+ --help | -h) help="y"; break ;;
+
+ --version | -V) echo "${VERSTR}"; exit 0 ;;
+
+ -*) echo "ifup: ${1}: invalid option" >&2
+ echo "${USAGE}" >& 2
+ exit 2 ;;
+
+ *) break ;;
+ esac
+done
+
+if [ -n "$help" ]; then
+ echo "${VERSTR}"
+ echo "${USAGE}"
+ echo
+ cat << HERE_EOF
+ifup is used to bring up a network interface. The interface
+parameter, e.g. eth0 or eth0:2, must match the trailing part of the
+interface specifications file, e.g. /etc/sysconfig/ifconfig.eth0:2.
+
+HERE_EOF
+ exit 0
+fi
+
+file=/etc/sysconfig/ifconfig.${1}
+
+# Skip backup files
+[ "${file}" = "${file%""~""}" ] || exit 0
+
+. /lib/lsb/init-functions
+
+log_info_msg "Bringing up the ${1} interface... "
+
+if [ ! -r "${file}" ]; then
+ log_warning_msg "\n${file} is missing or cannot be accessed."
+ exit 1
+fi
+
+. $file
+
+if [ "$IFACE" = "" ]; then
+ log_failure_msg "\n${file} does not define an interface [IFACE]."
+ exit 1
+fi
+
+# Do not process this service if started by boot, and ONBOOT
+# is not set to yes
+if [ "${IN_BOOT}" = "1" -a "${ONBOOT}" != "yes" ]; then
+ log_info_msg2 "skipped\n"
+ exit 0
+fi
+
+if [ -n "${SERVICE}" -a -x "/lib/services/${SERVICE}" ]; then
+ if [ -z "${CHECK_LINK}" -o \
+ "${CHECK_LINK}" = "y" -o \
+ "${CHECK_LINK}" = "yes" -o \
+ "${CHECK_LINK}" = "1" ]; then
+
+ # Bring up the interface
+ if ip link show ${IFACE} > /dev/null 2>&1; then
+ link_status=`ip link show ${IFACE}`
+
+ if [ -n "${link_status}" ]; then
+ if ! echo "${link_status}" | grep -q UP; then
+ ip link set ${IFACE} up
+ fi
+ fi
+
+ else
+ log_warning_msg "\nInterface ${IFACE} doesn't exist."
+ fi
+ fi
+
+ IFCONFIG=${file} /lib/services/${SERVICE} ${IFACE} up
+
+else
+ MSG="\nUnable to process ${file}. Either "
+ MSG="${MSG}the SERVICE variable was not set "
+ MSG="${MSG}or the specified service cannot be executed."
+ log_failure_msg "$MSG"
+ exit 1
+fi
+
+# End /sbin/ifup
/bootscripts/lfs/sbin/ifup
Property changes:
Added: svn:executable
## -0,0 +1 ##
+*
\ No newline at end of property
Index: bootscripts/lfs/sbin/ifdown
===================================================================
--- bootscripts/lfs/sbin/ifdown (nonexistent)
+++ bootscripts/lfs/sbin/ifdown (revision 1426)
@@ -0,0 +1,98 @@
+#!/bin/bash
+########################################################################
+# Begin /sbin/ifdown
+#
+# Description : Interface Down
+#
+# Authors : Nathan Coulson - nathan@linuxfromscratch.org
+# Kevin P. Fleming - kpfleming@linuxfromscratch.org
+# Update : Bruce Dubbs - bdubbs@linuxfromscratch.org
+#
+# Version : LFS 7.0
+#
+# Notes : the IFCONFIG variable is passed to the scripts found
+# in the /lib/services directory, to indicate what file the
+# service should source to get interface specifications.
+#
+########################################################################
+
+RELEASE="7.0"
+
+USAGE="Usage: $0 [ -hV ] [--help] [--version] interface"
+VERSTR="LFS ifdown, version ${RELEASE}"
+
+while [ $# -gt 0 ]; do
+ case "$1" in
+ --help | -h) help="y"; break ;;
+
+ --version | -V) echo "${VERSTR}"; exit 0 ;;
+
+ -*) echo "ifup: ${1}: invalid option" >&2
+ echo "${USAGE}" >& 2
+ exit 2 ;;
+
+ *) break ;;
+ esac
+done
+
+if [ -n "$help" ]; then
+ echo "${VERSTR}"
+ echo "${USAGE}"
+ echo
+ cat << HERE_EOF
+ifdown is used to bring down a network interface. The interface
+parameter, e.g. eth0 or eth0:2, must match the trailing part of the
+interface specifications file, e.g. /etc/sysconfig/ifconfig.eth0:2.
+
+HERE_EOF
+ exit 0
+fi
+
+file=/etc/sysconfig/ifconfig.${1}
+
+# Skip backup files
+[ "${file}" = "${file%""~""}" ] || exit 0
+
+. /lib/lsb/init-functions
+
+if [ ! -r "${file}" ]; then
+ log_warning_msg "${file} is missing or cannot be accessed."
+ exit 1
+fi
+
+. ${file}
+
+if [ "$IFACE" = "" ]; then
+ log_failure_msg "${file} does not define an interface [IFACE]."
+ exit 1
+fi
+
+# This will run the service script, if SERVICE is set
+if [ -n "${SERVICE}" -a -x "/lib/services/${SERVICE}" ]; then
+ if ip link show ${IFACE} > /dev/null 2>&1; then
+ IFCONFIG=${file} /lib/services/${SERVICE} ${IFACE} down
+ else
+ log_warning_msg "Interface ${1} doesn't exist."
+ echo_warning
+ fi
+else
+ MSG="Unable to process ${file}. Either "
+ MSG="${MSG}the SERVICE variable was not set"
+ MSG="${MSG}or the specified service cannot be executed."
+ log_failure_msg "$MSG"
+ exit 1
+fi
+
+link_status=`ip link show ${IFACE} 2>/dev/null`
+
+if [ -n "${link_status}" ]; then
+ if [ "$(echo "${link_status}" | grep UP)" != "" ]; then
+ if [ "$(ip addr show ${IFACE} | grep 'inet ')" != "" ]; then
+ log_info_msg "Bringing down the ${IFACE} interface..."
+ ip link set ${IFACE} down
+ evaluate_retval
+ fi
+ fi
+fi
+
+# End /sbin/ifdown
/bootscripts/lfs/sbin/ifdown
Property changes:
Added: svn:executable
## -0,0 +1 ##
+*
\ No newline at end of property
Index: bootscripts/lfs/sbin/ifup.8
===================================================================
--- bootscripts/lfs/sbin/ifup.8 (nonexistent)
+++ bootscripts/lfs/sbin/ifup.8 (revision 1426)
@@ -0,0 +1,108 @@
+ifup(8) ifup(8)
+
+NAME
+ ifup - bring a network interface up
+ ifdown - take a network interface down
+
+SYNOPSIS
+ ifup IFACE
+ ifup -h|--help
+ ifup -V|--version
+
+ ifdown IFACE
+ ifdown -h|--help
+ ifdown -V|--version
+
+DESCRIPTION
+ The ifup and ifdown commands may be used to configure
+ (or, respectively, deconfigure) a network interface based
+ on interface definitions in the file
+ /etc/sysconfig/ifconfig.IFACE.
+
+OPTIONS
+ A summary of options is included below.
+
+ -h, --help
+ Show summary of options.
+
+ -V, --version
+ Show version information.
+
+EXAMPLE
+ ifup eth0
+ Bring up the interface defined in the file
+ /etc/sysconfig/ifconfig.eth0
+
+ ifdown eth0:2
+ Bring down the interface defined in the file
+ /etc/sysconfig/ifconfig.eth0:2
+
+NOTES
+ The program does not configure network interfaces direct-
+ ly. It runs scripts defined by the SERVICE variable in
+ the network configuration file.
+
+ The configuration files must have the following environ-
+ ment variables set:
+
+ IFACE - The interface to configure, e.g. eth0. It must
+ be available in /sys/class/net.
+
+ SERVICE - The service script to run to bring up the inter-
+ face. Standard services are ipv4-static and
+ ipv4-static-route. Other services such as dhcp
+ may be installed.
+
+ ONBOOT - If set to 'yes', the specified interface is
+ configured by the netowrk boot script.
+
+ Other paramters that are service specific include:
+
+ ipv4-static
+
+ IP - The IP address of the interface,
+ e.g. 192.168.1.2.
+
+ PREFIX - The number of bits that specify the network
+ number of the interface, e.g., 24.
+
+ GATEWAY - The default IP address to use for routing
+ if the destination IP address is not in a
+ static route or on a local network, e.g.,
+ 192.168.1.1. For secondary IP addresses on
+ an interface, this parameter should not be
+ specified.
+
+ BROADCAST - The brodcast address for this interface,
+ e.g 192.168.1.255.
+
+ ipv4-static-route
+
+ TYPE - The type of route, typically 'default',
+ 'network', 'or host'.
+
+ IP - The IP address for a network or host, if thei
+ TYPE is not 'default'.
+
+ PREFIX - The prefix for the associated IP address.
+
+ GATEWAY - The IP address for a network route.
+
+ SOURCE - The source IP address to prefer when sending
+ to the destinations covered by the specified
+ route. (optional)
+
+FILES
+ /etc/sysconfig/ifconfig.*
+ definitions of network interfaces
+
+AUTHORS
+ The ifup/ifdown suite was written by Nathan Coulson
+ <nathan@linuxfromscratch.org> and Kevin P. Fleming
+ <kpfleming@linuxfromscratch.org>
+ and updated by Bruce Dubbs <bdubbs@linuxfromscratch>.
+
+SEE ALSO
+ ip(8).
+
+IFUP/IFDOWN 18 Sep 2011 ifup(8)
Index: bootscripts/ChangeLog
===================================================================
--- bootscripts/ChangeLog (revision 1425)
+++ bootscripts/ChangeLog (revision 1426)
@@ -1,3 +1,25 @@
+2011-10-06 Bryan Kadzban <bryan@linuxfromscratch.org>
+
+ * Add configuration for udev_retry, and remove --type=failed (which does
+ not work with recent udev versions anyway, since no events can possibly
+ trigger it). Start with just the "rtc" subsystem. BLFS should eventually
+ add "sound" to this file, and perhaps others.
+
+2011-09-18
+ * Review and update of changes made in previous change.
+ ** Rename /etc/sysconfig/init_params to /etc/sysconfig/rc.site.
+ ** Move network services to /lib/services.
+ ** Move init-functions to /lib/lsb.
+ *** /lib/lsb is a symlink to /lib/services.
+ * Create convenience symlink /etc/init.d->/etc/rc.d/init.d.
+ * Add help and man pages to upup/ifdown.
+ * Append /run/var/bootlog to /var/log/boot.log at the end of
+ the boot sequence.
+ * Add capabiltiy to step through the boot scripts at boot time
+ * Optionally allow environment variables in sysconfig directory's
+ console, network, and clock files to be placed in rc.site.
+ * Add an optional FASTBOOT parameter to set /fastboot when rebooting.
+
2011-07-14 Bruce Dubbs <bdubbs@linuxfromscratch.org>
* Major rewrite of all LFS scripts
** Move ifup/ifdown to /sbin
Index: bootscripts/Makefile
===================================================================
--- bootscripts/Makefile (revision 1425)
+++ bootscripts/Makefile (revision 1426)
@@ -1,33 +1,39 @@
-ETCDIR=/etc
-EXTDIR=${DESTDIR}${ETCDIR}
-LIBDIR=${DESTDIR}/lib/boot
+EXTDIR=${DESTDIR}/etc
+LIBDIR=${DESTDIR}/lib/services
+MAN8=${DESTDIR}/usr/share/man/man8
+SBIN=${DESTDIR}/sbin
MODE=754
DIRMODE=755
CONFMODE=644
-all: install
+all: links
+install: all
+
create-dirs:
- install -d -m ${DIRMODE} ${EXTDIR}/rc.d/rc0.d
- install -d -m ${DIRMODE} ${EXTDIR}/rc.d/rc1.d
- install -d -m ${DIRMODE} ${EXTDIR}/rc.d/rc2.d
- install -d -m ${DIRMODE} ${EXTDIR}/rc.d/rc3.d
- install -d -m ${DIRMODE} ${EXTDIR}/rc.d/rc4.d
- install -d -m ${DIRMODE} ${EXTDIR}/rc.d/rc5.d
- install -d -m ${DIRMODE} ${EXTDIR}/rc.d/rc6.d
- install -d -m ${DIRMODE} ${EXTDIR}/rc.d/rcsysinit.d
- install -d -m ${DIRMODE} ${EXTDIR}/rc.d/init.d
- install -d -m ${DIRMODE} ${EXTDIR}/sysconfig
- install -d -m ${DIRMODE} ${LIBDIR}
+ install -d -m ${DIRMODE} ${EXTDIR}/rc.d/rc0.d
+ install -d -m ${DIRMODE} ${EXTDIR}/rc.d/rc1.d
+ install -d -m ${DIRMODE} ${EXTDIR}/rc.d/rc2.d
+ install -d -m ${DIRMODE} ${EXTDIR}/rc.d/rc3.d
+ install -d -m ${DIRMODE} ${EXTDIR}/rc.d/rc4.d
+ install -d -m ${DIRMODE} ${EXTDIR}/rc.d/rc5.d
+ install -d -m ${DIRMODE} ${EXTDIR}/rc.d/rc6.d
+ install -d -m ${DIRMODE} ${EXTDIR}/rc.d/rcS.d
+ install -d -m ${DIRMODE} ${EXTDIR}/rc.d/init.d
+ install -d -m ${DIRMODE} ${EXTDIR}/sysconfig
+ install -d -m ${DIRMODE} ${LIBDIR}
+ install -d -m ${DIRMODE} ${MAN8}
+ install -d -m ${DIRMODE} ${SBIN}
+ ln -svf services ${DESTDIR}/lib/lsb
+ ln -sf rc.d/init.d ${EXTDIR}/init.d
-install: create-dirs
+files: create-dirs
install -m ${MODE} lfs/init.d/checkfs ${EXTDIR}/rc.d/init.d/
install -m ${MODE} lfs/init.d/cleanfs ${EXTDIR}/rc.d/init.d/
- install -m ${CONFMODE} lfs/init.d/functions ${EXTDIR}/rc.d/init.d/
- install -m ${CONFMODE} lfs/init.d/functions ${LIBDIR}
install -m ${MODE} lfs/init.d/halt ${EXTDIR}/rc.d/init.d/
install -m ${MODE} lfs/init.d/console ${EXTDIR}/rc.d/init.d/
install -m ${MODE} lfs/init.d/consolelog ${EXTDIR}/rc.d/init.d/
+ install -m ${CONFMODE} lfs/init.d/functions ${EXTDIR}/rc.d/init.d/
install -m ${MODE} lfs/init.d/localnet ${EXTDIR}/rc.d/init.d/
install -m ${MODE} lfs/init.d/modules ${EXTDIR}/rc.d/init.d/
install -m ${MODE} lfs/init.d/mountfs ${EXTDIR}/rc.d/init.d/
@@ -37,12 +43,52 @@
install -m ${MODE} lfs/init.d/reboot ${EXTDIR}/rc.d/init.d/
install -m ${MODE} lfs/init.d/sendsignals ${EXTDIR}/rc.d/init.d/
install -m ${MODE} lfs/init.d/setclock ${EXTDIR}/rc.d/init.d/
- install -m ${MODE} lfs/init.d/sysklogd ${EXTDIR}/rc.d/init.d/
install -m ${MODE} lfs/init.d/swap ${EXTDIR}/rc.d/init.d/
install -m ${MODE} lfs/init.d/sysctl ${EXTDIR}/rc.d/init.d/
+ install -m ${MODE} lfs/init.d/sysklogd ${EXTDIR}/rc.d/init.d/
install -m ${MODE} lfs/init.d/template ${EXTDIR}/rc.d/init.d/
install -m ${MODE} lfs/init.d/udev ${EXTDIR}/rc.d/init.d/
install -m ${MODE} lfs/init.d/udev_retry ${EXTDIR}/rc.d/init.d/
+ install -m ${MODE} lfs/sbin/ifup ${SBIN}
+ install -m ${MODE} lfs/sbin/ifdown ${SBIN}
+ install -m ${MODE} lfs/sbin/ifup.8 ${MAN8}
+ ln -sf ifup.8 ${MAN8}/ifdown.8
+ install -m ${MODE} lfs/lib/services/ipv4-static-route ${LIBDIR}
+ install -m ${MODE} lfs/lib/services/ipv4-static ${LIBDIR}
+ install -m ${CONFMODE} lfs/lib/services/init-functions ${LIBDIR}
+ if [ ! -f ${EXTDIR}/sysconfig/createfiles ]; then \
+ install -m ${CONFMODE} lfs/sysconfig/createfiles ${EXTDIR}/sysconfig/ ;\
+ fi
+ if [ ! -f ${EXTDIR}/sysconfig/modules ]; then \
+ install -m ${CONFMODE} lfs/sysconfig/modules ${EXTDIR}/sysconfig/ ;\
+ fi
+ if [ ! -f ${EXTDIR}/sysconfig/udev_retry ]; then \
+ install -m ${CONFMODE} lfs/sysconfig/udev_retry ${EXTDIR}/sysconfig/ ;\
+ fi
+ if [ ! -f ${EXTDIR}/sysconfig/rc ]; then \
+ install -m ${CONFMODE} lfs/sysconfig/rc ${EXTDIR}/sysconfig/ ;\
+ fi
+ if [ ! -f ${EXTDIR}/sysconfig/rc.site ]; then \
+ install -m ${CONFMODE} lfs/sysconfig/rc.site ${EXTDIR}/sysconfig/ ;\
+ fi
+
+links: rcS rc0 rc1 rc2 rc3 rc4 rc5 rc6
+
+rcS: files
+ ln -sf ../init.d/mountvirtfs ${EXTDIR}/rc.d/rcS.d/S00mountvirtfs
+ ln -sf ../init.d/consolelog ${EXTDIR}/rc.d/rcS.d/S02consolelog
+ ln -sf ../init.d/modules ${EXTDIR}/rc.d/rcS.d/S05modules
+ ln -sf ../init.d/localnet ${EXTDIR}/rc.d/rcS.d/S08localnet
+ ln -sf ../init.d/udev ${EXTDIR}/rc.d/rcS.d/S10udev
+ ln -sf ../init.d/swap ${EXTDIR}/rc.d/rcS.d/S20swap
+ ln -sf ../init.d/checkfs ${EXTDIR}/rc.d/rcS.d/S30checkfs
+ ln -sf ../init.d/mountfs ${EXTDIR}/rc.d/rcS.d/S40mountfs
+ ln -sf ../init.d/cleanfs ${EXTDIR}/rc.d/rcS.d/S45cleanfs
+ ln -sf ../init.d/udev_retry ${EXTDIR}/rc.d/rcS.d/S50udev_retry
+ ln -sf ../init.d/console ${EXTDIR}/rc.d/rcS.d/S70console
+ ln -sf ../init.d/sysctl ${EXTDIR}/rc.d/rcS.d/S90sysctl
+
+rc0: files
ln -sf ../init.d/network ${EXTDIR}/rc.d/rc0.d/K80network
ln -sf ../init.d/sysklogd ${EXTDIR}/rc.d/rc0.d/K90sysklogd
ln -sf ../init.d/sendsignals ${EXTDIR}/rc.d/rc0.d/S60sendsignals
@@ -50,16 +96,28 @@
ln -sf ../init.d/swap ${EXTDIR}/rc.d/rc0.d/S80swap
ln -sf ../init.d/localnet ${EXTDIR}/rc.d/rc0.d/S90localnet
ln -sf ../init.d/halt ${EXTDIR}/rc.d/rc0.d/S99halt
+
+rc1: files
ln -sf ../init.d/network ${EXTDIR}/rc.d/rc1.d/K80network
ln -sf ../init.d/sysklogd ${EXTDIR}/rc.d/rc1.d/K90sysklogd
+
+rc2: files
ln -sf ../init.d/network ${EXTDIR}/rc.d/rc2.d/K80network
ln -sf ../init.d/sysklogd ${EXTDIR}/rc.d/rc2.d/K90sysklogd
+
+rc3: files
ln -sf ../init.d/sysklogd ${EXTDIR}/rc.d/rc3.d/S10sysklogd
ln -sf ../init.d/network ${EXTDIR}/rc.d/rc3.d/S20network
+
+rc4: files
ln -sf ../init.d/sysklogd ${EXTDIR}/rc.d/rc4.d/S10sysklogd
ln -sf ../init.d/network ${EXTDIR}/rc.d/rc4.d/S20network
+
+rc5: files
ln -sf ../init.d/sysklogd ${EXTDIR}/rc.d/rc5.d/S10sysklogd
ln -sf ../init.d/network ${EXTDIR}/rc.d/rc5.d/S20network
+
+rc6: files
ln -sf ../init.d/network ${EXTDIR}/rc.d/rc6.d/K80network
ln -sf ../init.d/sysklogd ${EXTDIR}/rc.d/rc6.d/K90sysklogd
ln -sf ../init.d/sendsignals ${EXTDIR}/rc.d/rc6.d/S60sendsignals
@@ -67,68 +125,11 @@
ln -sf ../init.d/swap ${EXTDIR}/rc.d/rc6.d/S80swap
ln -sf ../init.d/localnet ${EXTDIR}/rc.d/rc6.d/S90localnet
ln -sf ../init.d/reboot ${EXTDIR}/rc.d/rc6.d/S99reboot
- ln -sf ../init.d/mountvirtfs ${EXTDIR}/rc.d/rcsysinit.d/S00mountvirtfs
- ln -sf ../init.d/consolelog ${EXTDIR}/rc.d/rcsysinit.d/S02consolelog
- ln -sf ../init.d/modules ${EXTDIR}/rc.d/rcsysinit.d/S05modules
- ln -sf ../init.d/udev ${EXTDIR}/rc.d/rcsysinit.d/S10udev
- ln -sf ../init.d/swap ${EXTDIR}/rc.d/rcsysinit.d/S20swap
- ln -sf ../init.d/checkfs ${EXTDIR}/rc.d/rcsysinit.d/S30checkfs
- ln -sf ../init.d/mountfs ${EXTDIR}/rc.d/rcsysinit.d/S40mountfs
- ln -sf ../init.d/cleanfs ${EXTDIR}/rc.d/rcsysinit.d/S45cleanfs
- ln -sf ../init.d/udev_retry ${EXTDIR}/rc.d/rcsysinit.d/S50udev_retry
- ln -sf ../init.d/console ${EXTDIR}/rc.d/rcsysinit.d/S70console
- ln -sf ../init.d/localnet ${EXTDIR}/rc.d/rcsysinit.d/S80localnet
- ln -sf ../init.d/sysctl ${EXTDIR}/rc.d/rcsysinit.d/S90sysctl
- if [ ! -f ${EXTDIR}/sysconfig/createfiles ]; then \
- install -m ${CONFMODE} lfs/sysconfig/createfiles ${EXTDIR}/sysconfig/ ;\
- fi
- if [ ! -f ${EXTDIR}/sysconfig/modules ]; then \
- install -m ${CONFMODE} lfs/sysconfig/modules ${EXTDIR}/sysconfig/ ;\
- fi
- if [ ! -f ${EXTDIR}/sysconfig/rc ]; then \
- install -m ${CONFMODE} lfs/sysconfig/rc ${EXTDIR}/sysconfig/ ;\
- fi
- install -m ${MODE} lfs/sysconfig/network-devices/ifup /sbin
- install -m ${MODE} lfs/sysconfig/network-devices/ifdown /sbin
- install -m ${MODE} lfs/sysconfig/network-devices/services/ipv4-static ${LIBDIR}
- install -m ${MODE} lfs/sysconfig/network-devices/services/ipv4-static-route ${LIBDIR}
-install-consolelog: create-dirs
- install -m ${MODE} contrib/init.d/consolelog ${EXTDIR}/rc.d/init.d
- ln -sf ../init.d/consolelog ${EXTDIR}/rc.d/rcsysinit.d/S00consolelog
+uninstall:
+ rm -rf ${DESTDIR}/lib/services ${DESTDIR}/lib/lsb ${EXTDIR}/rc.d ${EXTDIR}/init.d \
+ ${SBIN}/ifup ${SBIN}/ifdown ${MAN8}/ifup.8 ${MAN8}/ifdown.8 \
+ ${EXTDIR}/sysconfig/rc
-minimal: create-dirs
- install -m ${MODE} lfs/init.d/checkfs ${EXTDIR}/rc.d/init.d/
- install -m ${MODE} lfs/init.d/cleanfs ${EXTDIR}/rc.d/init.d/
- install -m ${CONFMODE} lfs/init.d/functions ${EXTDIR}/rc.d/init.d/
- install -m ${CONFMODE} lfs/init.d/functions ${LIBDIR}
- install -m ${MODE} lfs/init.d/halt ${EXTDIR}/rc.d/init.d/
- install -m ${MODE} lfs/init.d/localnet ${EXTDIR}/rc.d/init.d/
- install -m ${MODE} lfs/init.d/mountfs ${EXTDIR}/rc.d/init.d/
- install -m ${MODE} lfs/init.d/mountvirtfs ${EXTDIR}/rc.d/init.d/
- install -m ${MODE} lfs/init.d/rc ${EXTDIR}/rc.d/init.d/
- install -m ${MODE} lfs/init.d/reboot ${EXTDIR}/rc.d/init.d/
- install -m ${MODE} lfs/init.d/sendsignals ${EXTDIR}/rc.d/init.d/
- install -m ${MODE} lfs/init.d/setclock ${EXTDIR}/rc.d/init.d/
- install -m ${MODE} lfs/init.d/swap ${EXTDIR}/rc.d/init.d/
- install -m ${MODE} lfs/init.d/udev ${EXTDIR}/rc.d/init.d/
- ln -sf ../init.d/sendsignals ${EXTDIR}/rc.d/rc0.d/S60sendsignals
- ln -sf ../init.d/mountfs ${EXTDIR}/rc.d/rc0.d/S70mountfs
- ln -sf ../init.d/swap ${EXTDIR}/rc.d/rc0.d/S80swap
- ln -sf ../init.d/halt ${EXTDIR}/rc.d/rc0.d/S99halt
- ln -sf ../init.d/sendsignals ${EXTDIR}/rc.d/rc6.d/S60sendsignals
- ln -sf ../init.d/mountfs ${EXTDIR}/rc.d/rc6.d/S70mountfs
- ln -sf ../init.d/swap ${EXTDIR}/rc.d/rc6.d/S80swap
- ln -sf ../init.d/reboot ${EXTDIR}/rc.d/rc6.d/S99reboot
- ln -sf ../init.d/mountvirtfs ${EXTDIR}/rc.d/rcsysinit.d/S00mountvirtfs
- ln -sf ../init.d/udev ${EXTDIR}/rc.d/rcsysinit.d/S10udev
- ln -sf ../init.d/swap ${EXTDIR}/rc.d/rcsysinit.d/S20swap
- ln -sf ../init.d/checkfs ${EXTDIR}/rc.d/rcsysinit.d/S30checkfs
- ln -sf ../init.d/mountfs ${EXTDIR}/rc.d/rcsysinit.d/S40mountfs
- ln -sf ../init.d/cleanfs ${EXTDIR}/rc.d/rcsysinit.d/S45cleanfs
- if [ ! -f ${EXTDIR}/sysconfig/rc ]; then \
- install -m ${CONFMODE} lfs/sysconfig/rc ${EXTDIR}/sysconfig/; \
- fi
+.PHONY: all create-dirs install files links rcS rc0 rc1 rc2 rc3 rc4 rc5 rc6 uninstall
-.PHONY: all create-dirs install
-
/branches/lfs-7.0-fr/bootscripts/README
1,49 → 1,44
Network Configuration:
Script Files:
/etc/rc.d/init.d/network
/etc/rc.d/init.d/*
/sbin/ifup
/sbin/ifdown
/lib/boot/*/*
/lib/lsb/*
 
Configuration Files:
/etc/sysconfig/ifconfig.*
Note: ifconfig.* could be either a file or directory,
but the filename extension must be the same name
as the network interface you wish it to belong to.
The files within the directory will be processed
in alphanumerical order on boot, and reversed on
shutdown.
- IFACE: the interface that is being configured (e.g. eth0)
- SERVICE: which script to run in services directory.
- ONBOOT: if set to yes, this interface will be started on
bootup, and stopped on shutdown
Note: ifconfig.* files will be processed
in alphanumerical order on boot, and reversed on shutdown.
- IFACE : The interface that is being configured (e.g. eth0)
- SERVICE: Which script to run in services directory.
- ONBOOT : If set to yes, this interface will be started on bootup
 
/etc/sysconfig/network
- HOSTNAME: Value of the system's hostname
- HOSTNAME: Value of the system's hostname (From LFS Book)
This value may also be set in /etc/sysconfig/rc.site
 
Additional Configuration:
ipv4-static:
- IP: static IP Address
- GATEWAY: Specifies the IP Address of the gateway server
- PREFIX: CIDR prefix of IP Address, defaults to 24 if not set
- PEER: IP Address of peer (for point-to-point connections and tunnels)
- BROADCAST: broadcast address
SERVICE ipv4-static:
- IP : Static IP Address
- GATEWAY : Specifies the IP Address of the gateway server
- PREFIX : CIDR prefix of IP Address, defaults to 24 if not set
- PEER : IP Address of peer (for point-to-point connections and tunnels)
- BROADCAST: Broadcast address
 
ipv4-static-route:
- TYPE: network (default type if not specified), default, host or
unreachable
- IP: IP Address of target (for network, host and unreachable)
- PREFIX: CIDR prefix of target (for network, host and unreachable)
SERVICE ipv4-static-route:
- TYPE : Network (default type if not specified), default, host or unreachable
- IP : IP Address of target (for network, host and unreachable)
- PREFIX : CIDR prefix of target (for network, host and unreachable)
- GATEWAY: IP Address of gateway to reach target (for network and default)
 
 
SetClock configuration:
Script Files:
/etc/rc.d/init.d/setclock
 
/etc/rc.d/init.d/cleanfs
- SKIPTMPCLEAN: skips cleaning of /tmp directory
 
Configuration Files:
/etc/sysconfig/clock
/etc/sysconfig/clock or /etc/sysconfig/rc.site
- UTC: 1 assumes hwclock is in UTC
0 assumes hwclock is in local time
- CLOCKPARAMS: any additional options to be passed to hwclock
/branches/lfs-7.0-fr/appendices/dependencies.xml
408,7 → 408,7
 
<seglistitem>
<seg>Bash, Binutils, Coreutils, Diffutils, Gawk, GCC, Glibc, Grep,
Gzip, Make, Pkg-config, Sed, Texinfo et Util-linux</seg>
Gzip, Make, Sed, Texinfo et Util-linux</seg>
</seglistitem>
</segmentedlist>
 
690,43 → 690,6
</seglistitem>
</segmentedlist>
 
<!-- Begin Glib dependency info -->
<bridgehead renderas="sect2" id="glib-dep">Glib</bridgehead>
 
<segmentedlist>
<segtitle>&dependencies;</segtitle>
 
<seglistitem>
<seg>Bash, Binutils, Coreutils, Gawk, GCC, Glibc, Grep, Make, PCRE
Sed et Texinfo</seg>
</seglistitem>
</segmentedlist>
 
<segmentedlist>
<segtitle>&testsuites;</segtitle>
 
<seglistitem>
<seg>Aucune</seg>
</seglistitem>
</segmentedlist>
 
<segmentedlist>
<segtitle>&before;</segtitle>
 
<seglistitem>
<seg>Aucune</seg>
</seglistitem>
</segmentedlist>
 
<segmentedlist>
<segtitle>&external;</segtitle>
 
<seglistitem>
<seg>Aucune</seg>
</seglistitem>
</segmentedlist>
 
 
<!-- Begin Glibc dependency info -->
<bridgehead renderas="sect2" id="glibc-dep">Glibc</bridgehead>
 
1553,43 → 1516,6
</seglistitem>
</segmentedlist>
 
<!-- Begin PCRE dependency info -->
<bridgehead renderas="sect2" id="pcre-dep">PCRE</bridgehead>
 
<segmentedlist>
<segtitle>&dependencies;</segtitle>
 
<seglistitem>
<seg>Bash, Binutils, Bzip2, Coreutils, Gawk, GCC, Glibc, Grep, Make, Sed et
Texinfo</seg>
</seglistitem>
</segmentedlist>
 
<segmentedlist>
<segtitle>&testsuites;</segtitle>
 
<seglistitem>
<seg>Aucune</seg>
</seglistitem>
</segmentedlist>
 
<segmentedlist>
<segtitle>&before;</segtitle>
 
<seglistitem>
<seg>Aucune</seg>
</seglistitem>
</segmentedlist>
 
<segmentedlist>
<segtitle>&external;</segtitle>
 
<seglistitem>
<seg>Aucune</seg>
</seglistitem>
</segmentedlist>
 
 
<!-- Begin Perl dependency info -->
<bridgehead renderas="sect2" id="perl-dep">Perl</bridgehead>
 
1626,42 → 1552,6
</seglistitem>
</segmentedlist>
 
<!-- Begin Pkg-config dependency info -->
<bridgehead renderas="sect2" id="pkg-config-dep">Pkg-config</bridgehead>
 
<segmentedlist>
<segtitle>&dependencies;</segtitle>
 
<seglistitem>
<seg>Bash, Binutils, Coreutils, Diffutils, Gawk, GCC, Glib, Glibc,
Grep, Make et Sed</seg>
</seglistitem>
</segmentedlist>
 
<segmentedlist>
<segtitle>&testsuites;</segtitle>
 
<seglistitem>
<seg>Aucune</seg>
</seglistitem>
</segmentedlist>
 
<segmentedlist>
<segtitle>&before;</segtitle>
 
<seglistitem>
<seg>Aucune</seg>
</seglistitem>
</segmentedlist>
 
<segmentedlist>
<segtitle>&external;</segtitle>
 
<seglistitem>
<seg>Aucune</seg>
</seglistitem>
</segmentedlist>
 
<!-- Begin Procps dependency info -->
<bridgehead renderas="sect2" id="procps-dep">Procps</bridgehead>
 
/branches/lfs-7.0-fr/appendices/scripts.xml
10,6 → 10,7
<!ENTITY functions SYSTEM "functions.script">
<!ENTITY consolelog SYSTEM "consolelog.script">
<!ENTITY halt SYSTEM "halt.script">
<!ENTITY initfunctions SYSTEM "init-functions.script">
<!ENTITY localnet SYSTEM "localnet.script">
<!ENTITY modules SYSTEM "modules.script">
<!ENTITY mountfs SYSTEM "mountfs.script">
64,6 → 65,11
<screen>&rc;</screen>
</sect1>
 
<sect1 id="init-functions" role="wrap">
<title>/lib/lsb/init-functions</title>
<screen>&initfunctions;</screen>
</sect1>
 
<sect1 id="functions" role="wrap">
<title>/etc/rc.d/init.d/functions</title>
<screen>&functions;</screen>
180,22 → 186,22
</sect1>
 
<sect1 id="ifup" role="wrap">
<title>/etc/sysconfig/network-devices/ifup</title>
<title>/sbin/ifup</title>
<screen>&ifup;</screen>
</sect1>
 
<sect1 id="ifdown" role="wrap">
<title>/etc/sysconfig/network-devices/ifdown</title>
<title>/sbin/ifdown</title>
<screen>&ifdown;</screen>
</sect1>
 
<sect1 id="ipv4static" role="wrap">
<title>/etc/sysconfig/network-devices/services/ipv4-static</title>
<title>/lib/services/ipv4-static</title>
<screen>&ipv4_static;</screen>
</sect1>
 
<sect1 id="ipv4route" role="wrap">
<title>/etc/sysconfig/network-devices/services/ipv4-static-route</title>
<title>/lib/services/ipv4-static-route</title>
<screen>&ipv4_static_route;</screen>
</sect1>
 
/branches/lfs-7.0-fr/patches.ent
11,8 → 11,8
<!ENTITY bzip2-docs-patch-size "1.6 Kio">
 
<!ENTITY coreutils-i18n-patch "coreutils-&coreutils-version;-i18n-1.patch">
<!ENTITY coreutils-i18n-patch-md5 "28895e1112835ca04119158d1883a6d5">
<!ENTITY coreutils-i18n-patch-size "120 Kio">
<!ENTITY coreutils-i18n-patch-md5 "fd08f2a15c14a9bd2b675fd7f8d54d08">
<!ENTITY coreutils-i18n-patch-size "122 Kio">
 
<!ENTITY coreutils-uname-patch "coreutils-&coreutils-version;-uname-1.patch">
<!ENTITY coreutils-uname-patch-md5 "500481b75892e5c07e19e9953a690e54">
34,9 → 34,13
<!ENTITY gcc-startfiles-patch-md5 "799ef1971350d2e3c794f2123f247cc6">
<!ENTITY gcc-startfiles-patch-size "1.5 Kio">
 
<!ENTITY gcc-locale-patch "gcc-&gcc-version;-locale-1.patch">
<!ENTITY gcc-locale-patch-md5 "406572f979f480be1450eb88eea08caa">
<!ENTITY gcc-locale-patch-size "4 Kio">
 
<!ENTITY glibc-fixes-patch "glibc-&glibc-version;-fixes-1.patch">
<!ENTITY glibc-fixes-patch-md5 "133f204725e3487a355e1e55390a42e9">
<!ENTITY glibc-fixes-patch-size "2.7 Kio">
<!ENTITY glibc-fixes-patch-md5 "13bdfb7db1654d9c3d7934d24479a6c4">
<!ENTITY glibc-fixes-patch-size "5.5 Kio">
 
<!ENTITY glibc-gcc_fix-patch "glibc-&glibc-version;-gcc_fix-1.patch">
<!ENTITY glibc-gcc_fix-patch-md5 "d1f28cb98acb9417fe52596908bbb9fd">
58,6 → 62,10
<!ENTITY kbd-backspace-patch-md5 "f75cca16a38da6caa7d52151f7136895">
<!ENTITY kbd-backspace-patch-size "12 Kio">
 
<!ENTITY module-init-tools-man-patch "module-init-tools-&module-init-tools-version;-man_pages-1.patch">
<!ENTITY module-init-tools-man-patch-md5 "e90aa105293df7b8691fd8ac697cefc9">
<!ENTITY module-init-tools-man-patch-size "44 Kio">
 
<!ENTITY patch-test-patch "patch-&patch-version;-test_fix-1.patch">
<!ENTITY patch-test-patch-md5 "c51e1a95bfc5310635d05081472c3534">
<!ENTITY patch-test-patch-size "1 Kio">
/branches/lfs-7.0-fr/process-scripts.sh
3,14 → 3,14
# Boot scripts
for s in bootscripts/lfs/init.d/* \
bootscripts/lfs/sysconfig/* \
bootscripts/lfs/sysconfig/network-devices/* \
bootscripts/lfs/sysconfig/network-devices/services/*
bootscripts/lfs/lib/services/* \
bootscripts/lfs/sbin/*
do
script=$(basename $s)
# Skip directories
[ $script == 'network-devices' ] && continue
[ $script == 'services' ] && continue
#[ $script == 'services' ] && continue
 
# Disambiguate duplicate file names
[ $s == 'bootscripts/lfs/sysconfig/rc' ] && script='rc-sysinit';
/branches/lfs-7.0-fr/stylesheets/md5sum.xsl
0,0 → 1,58
<?xml version='1.0' encoding='ISO-8859-1'?>
 
<!-- Create a md5 list for packages and pathces used. -->
 
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
 
<xsl:output method="text"/>
 
<xsl:template match="/">
<xsl:apply-templates select="//ulink"/>
</xsl:template>
 
<xsl:template match="ulink">
<!-- If some package don't have the predefined strings in their
name, the next test must be fixed to match it also. Skip possible
duplicated URLs that may be split for PDF output -->
<xsl:if test="(contains( @url, '.tar.' ) or
contains( @url, '.tgz' ) or
contains( @url, '.patch') ) and
not( ancestor-or-self::*/@condition = 'pdf' )" >
<!-- Get the md5sum -->
<xsl:value-of select="../../para/literal"/>
 
<!-- Add two spaces -->
<xsl:text> </xsl:text>
 
<!-- Get the basename -->
<xsl:call-template name="basename">
<xsl:with-param name="pathname" select="@url"/>
</xsl:call-template>
 
<!-- Add a newline -->
<xsl:text>&#x0a;</xsl:text>
</xsl:if>
</xsl:template>
 
<xsl:template name="basename">
<xsl:param name="pathname"/>
<xsl:choose>
 
<xsl:when test="contains( $pathname, '/' )" >
<xsl:call-template name="basename">
<xsl:with-param name="pathname" select="substring-after( $pathname, '/' )" />
</xsl:call-template>
</xsl:when>
 
<xsl:otherwise>
<xsl:value-of select="$pathname"/>
</xsl:otherwise>
 
</xsl:choose>
</xsl:template>
 
</xsl:stylesheet>
 
/branches/lfs-7.0-fr/stylesheets/lfs-xsl/pdf/lfs-mixed.xsl
2,7 → 2,7
 
<!--
$LastChangedBy: bdubbs $
$Date: 2009-01-08 22:58:12 $
$Date: 2009-01-04 05:48:38 +0100 (dim 04 jan 2009) $
-->
 
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
/branches/lfs-7.0-fr/Makefile
15,7 → 15,6
lfs: maketar validxml profile-html
@echo "Generating chunked XHTML files..."
$(Q)xsltproc --nonet -stringparam chunk.quietly $(CHUNK_QUIET) \
-stringparam paper.type A4 \
-stringparam rootid "$(ROOT_ID)" -stringparam base.dir $(BASEDIR)/ \
stylesheets/lfs-chunked.xsl $(RENDERTMP)/lfs-html.xml
 
44,13 → 43,11
pdf: validxml
@echo "Generating profiled XML for PDF..."
$(Q)xsltproc --nonet --stringparam profile.condition pdf \
--stringparam paper.type A4 \
--output $(RENDERTMP)/lfs-pdf.xml stylesheets/lfs-xsl/profile.xsl \
$(RENDERTMP)/lfs-full.xml
 
@echo "Generating FO file..."
$(Q)xsltproc --nonet -stringparam rootid "$(ROOT_ID)" \
-stringparam paper.type A4 \
--output $(RENDERTMP)/lfs-pdf.fo stylesheets/lfs-pdf.xsl \
$(RENDERTMP)/lfs-pdf.xml
$(Q)sed -i -e 's/span="inherit"/span="all"/' $(RENDERTMP)/lfs-pdf.fo
91,8 → 88,10
$(Q)./aux-file-data.sh $(RENDERTMP)/lfs-full.xml
 
maketar:
@echo "Making tarballs..."
$(Q)sh make-aux-files.sh
$(Q)if [ "x$(MAKETAR)" == "x" ]; then \
echo "Making tarballs..."; \
sh make-aux-files.sh; \
fi;
 
profile-html: validxml
@echo "Generating profiled XML for XHTML..."
106,6 → 105,17
$(Q)xsltproc --xinclude --nonet --output $(BASEDIR)/wget-list \
stylesheets/wget-list.xsl chapter03/chapter03.xml
 
md5sums:
@echo "Generating md5sum file..."
$(Q)mkdir -p $(BASEDIR)
$(Q)xsltproc --xinclude --nonet --output $(BASEDIR)/md5sums \
stylesheets/md5sum.xsl chapter03/chapter03.xml
$(Q)sed -i -e "s/BOOTSCRIPTS-MD5SUM/$(shell md5sum lfs-bootscripts*.tar.bz2 | cut -d' ' -f1)/" \
$(BASEDIR)/md5sums
$(Q)sed -i -e "s/UDEV-MD5SUM/$(shell md5sum udev-config*.tar.bz2 | cut -d' ' -f1)/" \
$(BASEDIR)/md5sums
 
 
dump-commands: validxml
@echo "Dumping book commands..."
$(Q)xsltproc --output $(DUMPDIR)/ \
114,7 → 124,7
validate: maketar validxml
@echo "Validation complete."
 
all: lfs nochunks pdf dump-commands
all: lfs nochunks pdf dump-commands md5sums
 
.PHONY : all dump-commands lfs nochunks pdf profile-html tmpdir validate \
validxml wget-list maketar
validxml wget-list maketar md5sums