website annotate fr/doc/scratchbook/base-apps.html @ rev 1323

Update project (c) date on all pages
author Christophe Lincoln <pankso@slitaz.org>
date Fri Mar 16 23:57:38 2018 +0100 (2018-03-16)
parents 803de7c72d06
children
rev   line source
pankso@371 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
pankso@371 2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
pankso@371 3 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
pankso@371 4 <head>
pankso@371 5 <title>SliTaz Scratchbook - Base apps</title>
pankso@371 6 <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
pankso@371 7 <meta name="description" content="applications de base du système livecd slitaz" />
pankso@371 8 <meta name="expires" content="never" />
pankso@371 9 <meta name="modified" content="2007-12-24 12:30:00" />
pankso@371 10 <meta name="publisher" content="www.slitaz.org" />
pankso@371 11 <meta name="author" content="Christophe Lincoln"/>
pankso@371 12 <link rel="shortcut icon" href="favicon.ico" />
pankso@371 13 <link rel="stylesheet" type="text/css" href="book.css" />
pankso@371 14 </head>
pankso@371 15 <body bgcolor="#ffffff">
pankso@371 16
pankso@371 17 <!-- Header and quick navigation -->
pankso@371 18 <div id="header">
pankso@371 19 <div align="right" id="quicknav">
pankso@371 20 <a name="top"></a>
pankso@371 21 <a href="base-system.html">Base system</a> |
pankso@371 22 <a href="index.html">Table des matières</a> |
pankso@371 23 <a href="base-ncurses.html">Base ncurses</a>
pankso@371 24 </div>
pankso@371 25 <h1><font color="#3E1220">SliTaz Scratchbook</font></h1>
pankso@371 26 </div>
pankso@371 27
pankso@371 28 <!-- Content. -->
pankso@371 29 <div id="content">
pankso@371 30 <div class="content-right"></div>
pankso@371 31
pankso@371 32
pankso@371 33 <h2><font color="#DF8F06">Applications de base</font></h2>
pankso@371 34 <p>
pankso@371 35 Install et configuration des bibliothèques et des applications de base.
pankso@371 36 </p>
pankso@371 37 <ul>
pascal@548 38 <li><a href="base-apps.html#about">A propos de ce chapitre</a> - Description et variable
pankso@371 39 d'environnement ($fs)</li>
pascal@548 40 <li><a href="base-apps.html#bc">bc-1.06</a> - Calculatrice en mode texte.</li>
pascal@548 41 <li><a href="base-apps.html#zlib">zlib-1.2.3</a> - Bibliothèques de compression.</li>
pascal@548 42 <li><a href="base-apps.html#pcre">pcre-7.4</a> - Expressions régulières compatible
pankso@371 43 Perl.</li>
pascal@548 44 <li><a href="base-apps.html#e2fsprogs">e2fsprogs-1.39</a> - Utilitaires de gestion des
pankso@371 45 systèmes de fichiers.</li>
pascal@548 46 <li><a href="base-apps.html#dropbear">dropbear-0.50</a> - Client et serveur SSH
pankso@371 47 légé.</li>
pascal@548 48 <li><a href="base-apps.html#lighttpd">lighttpd-1.4.18</a> - Serveur web HTTP, léger et
pankso@371 49 sécurisé.</li>
pascal@548 50 <li><a href="base-apps.html#iptables">iptables-1.3.7</a> - Netfilter, pare-feu
pankso@371 51 Linux.</li>
pascal@548 52 <li><a href="base-apps.html#sqlite">sqlite-3.5.1</a> - Petit moteur de base de données
pankso@371 53 SQL.</li>
pascal@548 54 <li><a href="base-apps.html#cdrkit">cdrkit-1.1.5</a> - Outils de manipulation de cdrom
pankso@371 55 et images ISO.</li>
pascal@548 56 <li><a href="base-apps.html#cpio">cpio-2.8</a> - Archiveur utilisé en autre pour les
pankso@371 57 paquets SliTaz et l'initramfs.</li>
pascal@548 58 <li><a href="base-apps.html#microperl">microperl-5.8.8</a> - Un tout petit Perl.</li>
pascal@548 59 <li><a href="base-apps.html#module-init-tools">module-init-tools-3.2</a> - Outils de
pankso@371 60 manipulation des modules du noyau.</li>
pascal@548 61 <li><a href="base-apps.html#kernel-modules">Copie et compression des modules du
pankso@371 62 Kernel.</a></li>
pascal@548 63 <li><a href="base-apps.html#initramfs-iso">Génération de l'initramfs, et d'une
pankso@371 64 image ISO.</a></li>
pankso@371 65 </ul>
pankso@371 66 <a name="about"></a>
pankso@371 67 <h3><font color="#6c0023">A propos</font></h3>
pankso@371 68 <p>
pankso@371 69 Ce chapitre décrit l'installations des bibliothèque et des applications de
pankso@371 70 base en mode texte, fournies avec SliTaz.
pankso@371 71 </p>
pankso@371 72 <h4>Affecter une variable d'environnement ($fs)</h4>
pankso@371 73 <p>
pankso@371 74 Une variable d'environnement permet de ne pas spécifier tout le chemin vers le
pankso@371 75 répertoire, mais simplement $NomDeVariable. Nous allons afecter un variable '$fs'
pankso@371 76 pour indiquer le chemin vers le système de fichier racine 'rootfs'. Pour cela vous
pankso@371 77 pouvez vous placer dans le répertoire de travail de SliTaz, et tapez:
pankso@371 78 </p>
pankso@371 79 <pre>
pankso@371 80 # export fs=$PWD/rootfs
pankso@371 81 </pre>
pankso@371 82 <p>
pankso@371 83 Pour vérifier:
pankso@371 84 </p>
pankso@371 85 <pre>
pankso@371 86 # echo $fs
pankso@371 87 </pre>
pankso@371 88 <a name="bc"></a>
pankso@371 89 <h3><font color="#6c0023">bc-1.06 - Calculatrice en mode texte</font></h3>
pankso@371 90 <p>
pankso@371 91 L'application bc
pankso@371 92 (<a href="http://www.gnu.org/software/bc/">www.gnu.org/software/bc/</a>)
pankso@371 93 fourni une petite calculette, lors de la compilation l'utilitaire dc est
pankso@371 94 aussi construit mais SliTaz ne l'installe pas. A noter que dc est aussi
pankso@371 95 diponible avec Busybox. Pour la copie de dc, il faut supprimer le liens
pankso@371 96 de dc vers BusyBox si il existe. Nous utilison un répertoire _pkg (package)
pankso@371 97 pour l'installation. Un petit nettoyage des exécutables avec strip
pankso@371 98 et copie des utilitaires:
pankso@371 99 </p>
pankso@371 100 <pre>
pankso@371 101 # cd src
pankso@371 102 # wget http://ftp.gnu.org/pub/gnu/bc/bc-1.06.tar.gz
pankso@371 103 # tar xzfv bc-1.06.tar.gz
pankso@371 104 # cd bc-1.06
pankso@371 105 # ./configure --prefix=/usr --infodir=/usr/share/info \
pankso@371 106 --mandir=/usr/share/man
pankso@371 107 # make
pankso@371 108 # make DESTDIR=$PWD/_pkg install
pankso@371 109 # strip -vs _pkg/usr/bin/*
pankso@371 110 # cp -avi _pkg/usr/bin/bc $fs/usr/bin
pankso@371 111 </pre>
pankso@371 112 <h4>libs</h4>
pankso@371 113 <p>
pankso@371 114 Un petit ldd sur bc devrait donner:
pankso@371 115 </p>
pankso@371 116 <pre class="script">
pankso@371 117 libc.so.6 => /lib/libc.so.6 (0x40029000)
pankso@371 118 /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
pankso@371 119 </pre>
pankso@371 120 <a name="zlib"></a>
pankso@371 121 <h3><font color="#6c0023">zlib-1.2.3 - Bibliothèques de compression</font></h3>
pankso@371 122 <p>
pankso@371 123 Le paquet zlib (<a href="http://www.zlib.net/">http://www.zlib.net/</a>)
pankso@371 124 fourni des fonctions de compression et de décompression, utilisées entre autre,
pankso@371 125 par le serveur SSH dropbear et le serveur X:
pankso@371 126 </p>
pankso@371 127 <pre>
pankso@371 128 # cd ..
pankso@371 129 # wget http://www.gzip.org/zlib/zlib-1.2.3.tar.bz2
pankso@371 130 # tar xjfv zlib-1.2.3.tar.bz2
pankso@371 131 # cd zlib-1.2.3
pankso@371 132 # ./configure --shared --prefix=/usr
pankso@371 133 # make
pankso@371 134 # strip -vs libz.so*
pankso@371 135 # cp -av libz.so* $fs/usr/lib
pankso@371 136 </pre>
pankso@371 137 <a name="pcre"></a>
pankso@371 138 <h3><font color="#6c0023">pcre-7.4 - Expressions régulières compatible perl</font></h3>
pankso@371 139 <p>
pankso@371 140 Le paquet pcre (<a href="http://www.pcre.org/">http://www.pcre.org/</a>)
pankso@371 141 fourni les bibliothèques des fonctions d'expressions régulières compatible
pankso@371 142 Perl PCRE, utilisées entre autre par le serveur web LightTPD:
pankso@371 143 </p>
pankso@371 144 <pre>
pankso@371 145 # cd ..
pankso@371 146 # wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-7.4.tar.gz
pankso@371 147 # tar xzfv pcre-7.4.tar.gz
pankso@371 148 # cd pcre-7.4
pankso@371 149 # ./configure --prefix=/usr
pankso@371 150 # make
pankso@371 151 # make DESTDIR=$PWD/_pkg install
pankso@371 152 # strip -vs _pkg/usr/bin/*
pankso@371 153 # strip -vs _pkg/usr/lib/*
pankso@371 154 # cp -av _pkg/usr/bin/* $fs/usr/bin
pankso@371 155 # cp -av _pkg/usr/lib/*.so* $fs/usr/lib
pankso@371 156 </pre>
pankso@371 157 <a name="e2fsprogs"></a>
pankso@371 158 <h3><font color="#6c0023">e2fsprogs-1.39 - Utilitaires de gestion des systèmes de fichiers</font></h3>
pankso@371 159 <p>
pankso@371 160 Le paquet e2fsprogs (<a href="http://e2fsprogs.sourceforge.net/"
pankso@371 161 >http://e2fsprogs.sourceforge.net/</a>) fournit les utilitaires pour la
pankso@371 162 manipulation des systèmes de fichiers ext3 et ext2. Nous n'allons pas tout
pankso@371 163 prendre, car cela nous fait gangner de la place. A noter que nous utilisons
pankso@371 164 fsck de Busybox:
pankso@371 165 </p>
pankso@371 166 <pre>
pankso@371 167 # cd ..
pankso@371 168 # wget http://puzzle.dl.sourceforge.net/sourceforge/e2fsprogs/e2fsprogs-1.39.tar.gz
pankso@371 169 # tar xzf e2fsprogs-1.39.tar.gz
pankso@371 170 # cd e2fsprogs-1.39
pankso@371 171 # ./configure --prefix=/usr --with-root-prefix="" \
pankso@371 172 --enable-elf-shlibs --disable-evms --sysconfdir=/etc \
pankso@371 173 --infodir=/usr/share/info --mandir=/usr/share/man
pankso@371 174 # make
pankso@371 175 # make DESTDIR=$PWD/_pkg install
pankso@371 176 # strip -vs _pkg/sbin/*
pankso@371 177 # strip -vs _pkg/lib/*
pankso@371 178 # strip -vs _pkg/usr/bin/*
pankso@371 179 # strip -vs _pkg/usr/sbin/*
pankso@371 180 # strip -vs _pkg/usr/lib/*
pankso@371 181 </pre>
pankso@371 182 <p>
pankso@371 183 Install des utilitaires, des fichiers de configuration, et des bibliothèques
pankso@371 184 dans le rootfs de SliTaz. Attention si vous avez décidé d'utiliser fsck,
pankso@371 185 il ne faut pas écraser un lien Busybox:
pankso@371 186 </p>
pankso@371 187 <pre>
pankso@371 188 # cp -i _pkg/sbin/{badblocks,blkid,dumpe2fs,e2fsck,e2image} $fs/sbin
pankso@371 189 # cp -i _pkg/sbin/{e2label,findfs,logsave,mke2fs,mkfs.*} $fs/sbin
pankso@371 190 # cp -i _pkg/sbin/{resize2fs,tune2fs} $fs/sbin
pankso@371 191 # cp -a _pkg/lib/* $fs/lib
pankso@371 192 # rm -rf $fs/lib/libss*
pankso@371 193 # cp -a _pkg/etc/* $fs/etc
pankso@371 194 # cp -a _pkg/usr/bin/* $fs/usr/bin
pankso@371 195 # cp -a _pkg/usr/sbin/* $fs/usr/sbin
pankso@371 196 # cp -ad _pkg/usr/lib/*.so $fs/usr/lib
pankso@371 197 # rm -rf $fs/usr/lib/libss*
pankso@371 198 </pre>
pankso@371 199 <p>
pankso@371 200 Vous pouvez aussi copier le fichier de la locale pour le français:
pankso@371 201 </p>
pankso@371 202 <pre>
pankso@371 203 # mkdir $fs/usr/share/locale
pankso@371 204 # cp -a _pkg/usr/share/locale/fr $fs/usr/share/locale
pankso@371 205 </pre>
pankso@371 206 <a name="dropbear"></a>
pankso@371 207 <h3><font color="#6c0023">dropbear-0.50 - Client et serveur SSH légé</font></h3>
pankso@371 208 <p>
pankso@371 209 Dropbear (<a href="http://matt.ucc.asn.au/dropbear/dropbear.html"
pankso@371 210 >http://matt.ucc.asn.au/dropbear/dropbear.html</a>) est un petit client et
pankso@371 211 serveur sécurisé, supportant le protocole SSH 2. Dropbear est compatible avec
pankso@371 212 openSSH, et utilise ~/.ssh/authorized_keys pour la gestion des clés public. Dropbear
pankso@371 213 fournit aussi une version de scp, qu'il faut compiler avec 'manke scp':
pankso@371 214 </p>
pankso@371 215 <pre>
pankso@371 216 # cd ..
pankso@371 217 # wget http://matt.ucc.asn.au/dropbear/releases/dropbear-0.50.tar.gz
pankso@371 218 # tar xzf dropbear-0.50.tar.gz
pankso@371 219 # cd dropbear-0.50
pankso@371 220 # ./configure --prefix=/usr
pankso@371 221 # make
pankso@371 222 # make scp
pankso@371 223 # make DESTDIR=$PWD/_pkg install
pankso@371 224 # strip -v scp
pankso@371 225 # strip -v _pkg/usr/bin/*
pankso@371 226 # strip -v _pkg/usr/sbin/*
pankso@371 227 </pre>
pankso@371 228 <p>
pankso@371 229 Install du client, et des outils associés dans /usr/bin, et install
pankso@371 230 du server dans /usr/sbin:
pankso@371 231 </p>
pankso@371 232 <pre>
pankso@371 233 # cp scp $fs/usr/bin
pankso@371 234 # cp -a _pkg/usr/bin/* $fs/usr/bin
pankso@371 235 # cp -a _pkg/usr/sbin/* $fs/usr/sbin
pankso@371 236 </pre>
pankso@371 237 <h4>libs</h4>
pankso@371 238 <pre class="script">
pankso@371 239 libutil.so.1 => /lib/libutil.so.1 (0x40025000)
pankso@371 240 libz.so.1 => /usr/lib/libz.so.1 (0x40028000)
pankso@371 241 libcrypt.so.1 => /lib/libcrypt.so.1 (0x4003b000)
pankso@371 242 libc.so.6 => /lib/libc.so.6 (0x40068000)
pankso@371 243 /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
pankso@371 244 </pre>
pankso@371 245 <p>
pankso@371 246 Copie de la bibliothèque libutil.so.1 dans $fs/lib, si ce n'est pas déjà le cas.
pankso@371 247 Les autres bibliothèques devraient être présentes, suite à la construction du
pankso@371 248 système de base:
pankso@371 249 </p>
pankso@371 250 <pre>
pankso@371 251 # cp -a /lib/libutil* $fs/lib
pankso@371 252 </pre>
pankso@371 253 <h4>Configurer Dropbear</h4>
pankso@371 254 <p>
pankso@371 255 Les fichiers de configuration utilisateur sont dans ~/.ssh, contenant
pankso@371 256 authorized_keys et known_hosts. Les répertoire ~/.ssh et le fichier
pankso@371 257 known_hosts, sont créés automatiquement la première fois que l'utilisateur
pankso@371 258 lance dbclient. Les fichiers de configuration système du server Dropbear sont
pankso@371 259 par défaut dans /etc/dropbear:
pankso@371 260 </p>
pankso@371 261 <pre>
pankso@371 262 # mkdir $fs/etc/dropbear
pankso@371 263 </pre>
pankso@371 264 <p>
pankso@371 265 Pour que le serveur fonctionnent, il faut générer les clés sécurisées
pankso@371 266 avant de démarrer le serveur sur SliTaz. Vous pouvez utiliser dropbearkey
pankso@371 267 avec les commandes ci-dessous:
pankso@371 268 </p>
pankso@371 269 <pre>
pankso@371 270 # dropbearkey -t rsa -f /etc/dropbear/dropbear_rsa_host_key
pankso@371 271 # dropbearkey -t dss -f /etc/dropbear/dropbear_dss_host_key
pankso@371 272 </pre>
pankso@371 273 <p>
pankso@371 274 Sur SliTaz vous pouvez démarrer le serveur SSH avec la commande :
pankso@371 275 </p>
pankso@371 276 <pre>
pankso@371 277 # /etc/init.d/dropbear start
pankso@371 278 </pre>
pankso@371 279 <a name="lighttpd"></a>
pankso@371 280 <h3><font color="#6c0023">lighttpd-1.4.18 - Serveur web HTTP</font></h3>
pankso@371 281 <p>
pankso@371 282 LightTPD (<a href="http://www.lighttpd.net/">www.lighttpd.net</a>) est un
pankso@371 283 serveur web puissant, léger, et sécurisé. Le projet est très actif, et la
pankso@371 284 configuration du serveur et simple. Il supporte les hôtes virtuels, les scripts
pankso@371 285 CGI, et il permet une gestion intelligente de la charge CPU.
pankso@371 286 </p>
pankso@371 287 <pre>
pankso@371 288 # cd ..
pankso@371 289 # wget http://www.lighttpd.net/download/lighttpd-1.4.18.tar.gz
pankso@371 290 # tar xzf lighttpd-1.4.18.tar.gz
pankso@371 291 # cd lighttpd-1.4.18
pankso@371 292 # ./configure -enable-shared --disable-ipv6 --prefix=/usr \
pankso@371 293 --libdir=/usr/lib/lighttpd --mandir=/usr/share/man
pankso@371 294 # make
pankso@371 295 # make DESTDIR=$PWD/_pkg install
pankso@371 296 # strip -vs _pkg/usr/bin/*
pankso@371 297 # strip -vs _pkg/usr/sbin/*
pankso@371 298 # strip -vs _pkg/usr/lib/lighttpd/*
pankso@371 299 </pre>
pankso@371 300 <p>
pankso@371 301 Installation du serveur, et des bibliothèques générées. Nous allons ensuite
pankso@371 302 supprimer copier seulement quelques modules (9) :
pankso@371 303 </p>
pankso@371 304 <pre>
pankso@371 305 # cp _pkg/usr/bin/* $fs/usr/bin
pankso@371 306 # cp _pkg/usr/sbin/* $fs/usr/sbin
pankso@371 307 # mkdir $fs/usr/lib/lighttpd
pankso@371 308 Modules :
pankso@371 309 # cp _pkg/usr/lib/lighttpd/mod_access.so $fs/usr/lib/lighttpd
pankso@371 310 # cp _pkg/usr/lib/lighttpd/mod_accesslog.so $fs/usr/lib/lighttpd
pankso@371 311 # cp _pkg/usr/lib/lighttpd/mod_alias.so $fs/usr/lib/lighttpd
pankso@371 312 # cp _pkg/usr/lib/lighttpd/mod_auth.so $fs/usr/lib/lighttpd
pankso@371 313 # cp _pkg/usr/lib/lighttpd/mod_cgi.so $fs/usr/lib/lighttpd
pankso@371 314 # cp _pkg/usr/lib/lighttpd/mod_compress.so $fs/usr/lib/lighttpd
pankso@371 315 # cp _pkg/usr/lib/lighttpd/mod_rewrite.so $fs/usr/lib/lighttpd
pankso@371 316 # cp _pkg/usr/lib/lighttpd/mod_status.so $fs/usr/lib/lighttpd
pankso@371 317 # cp _pkg/usr/lib/lighttpd/mod_userdir.so $fs/usr/lib/lighttpd
pankso@371 318 </pre>
pankso@371 319 <h4>libs</h4>
pankso@371 320 <p>
pankso@371 321 Il ne devrait vous manquer que libdl.so.2, que nous allons copier:
pankso@371 322 </p>
pankso@371 323 <pre>
pankso@371 324 # cp -a /lib/libdl* $fs/lib
pankso@371 325 </pre>
pankso@371 326 <h4>/var/www - Racine des documents du serveur</h4>
pankso@371 327 <p>
pankso@371 328 Le répertoire /var/www est le répertoire racine des documents servis par
pankso@371 329 défaut. Vous y avez accès via l'url http://localhost/. Ce répertoire peut
pankso@371 330 contenir une page <code>index.html</code> s'affichant automatiquement lors
pankso@371 331 d'une requête. Nous allons créer le répertoire /var/www, à vous de vois ce
pankso@371 332 que vous vouleu y mettre :
pankso@371 333 </p>
pankso@371 334 <pre>
pankso@371 335 # mkdir -p $fs/var/www
pankso@371 336 </pre>
pankso@371 337 <h4>lighttpd.conf - Fichier de configuration de LightTPD</h4>
pankso@371 338 <p>
pankso@371 339 Le fichier de configuration principale de LightTPD se trouve dans /etc/lighttpd,
pankso@371 340 et se nomme lighttpd.conf. Le fichier de configuration fournit par SliTaz est auto
pankso@371 341 documenté, il suffit de le parcourir. Vous trouverez d'autres exemples sur le site
pankso@371 342 web de LightTPD. Vous trouverez aussi un exemple de configuration dans /doc
pankso@371 343 de l'archive de LightTPD:
pankso@371 344 </p>
pankso@371 345 <pre>
pankso@371 346 # cp -a ../slitaz-tools-1.1/etc/lighttpd $fs/etc
pankso@371 347 </pre>
pankso@371 348 <p>
pankso@371 349 Création du répertoire contenant les fichiers de log:
pankso@371 350 </p>
pankso@371 351 <pre>
pankso@371 352 # mkdir $fs/var/log/lighttpd
pankso@371 353 </pre>
pankso@371 354 <h4>Utilisateur et groupe www</h4>
pankso@371 355 <p>
pankso@371 356 Nous allons ajouter un utilisateur et un groupe pour le serveur web, cela ajoute
pankso@371 357 de la sécurité, et il n'y a aucune raison pour qu'il tourne sous root. L'utilisateur
pankso@371 358 par défaut sur SliTaz est 'www', mais vous pouvez changer cela dans le fichier de
pankso@371 359 configuration lighttpd.conf. L'application adduser de Busybox ayant des limitations
pankso@371 360 nous ajoutons l'utilisateur 'www' manuellement. Nous changeons aussi les permissions
pankso@371 361 sur le répertoire des logs du serveur web:
pankso@371 362 </p>
pankso@371 363 <pre>
pankso@371 364 # echo "www:x:80:80:www:/var/www:/bin/sh" >> $fs/etc/passwd
pankso@371 365 # echo "www:*:13509:0:99999:7:::" >> $fs/etc/shadow
pankso@371 366 # echo "www:*:13509:0:99999:7:::" >> $fs/etc/shadow-
pankso@371 367 # chroot $fs /bin/ash
pankso@371 368 /# addgroup -g 80 www
pankso@371 369 /# chown www.www /var/log/lighttpd
pankso@371 370 # exit
pankso@371 371 </pre>
pankso@371 372 <p>
pankso@371 373 Pour démarrer le serveur web vous pouvez utiliser le script /etc/init.d/lighttpd
pankso@371 374 fourni dans SliTaz tools, en tapant la commande <code>/etc/init.d/lighttpd start</code>.
pankso@371 375 Vous pouvez aussi automatiser son lancement au boot avec un lien de /etc/init.d/lighttpd
pankso@371 376 pointant vers /etc/rc.d/60lighttpd.
pankso@371 377 </p>
pankso@371 378 <a name="iptables"></a>
pankso@371 379 <h3><font color="#6c0023">iptables-1.3.7 - Netfilter, pare-feu Linux</font></h3>
pankso@371 380 <p>
pankso@371 381 Netfilter (<a href="http://www.netfilter.org/">www.netfilter.org</a>) est le module qui
pankso@371 382 fournit au noyau Linux les fonctions de pare-feu, de partage de connexions internet (NAT) et
pankso@371 383 d'historisation du trafic réseau. La commande iptables permet de configurer Netfilter,
pankso@371 384 iptables-restore et iptables-save permettent de sauvegarder/restaurer la configuration
pankso@371 385 Netfilter:
pankso@371 386 </p>
pankso@371 387 <pre>
pankso@371 388 # cd ..
pankso@371 389 # wget http://www.netfilter.org/projects/iptables/files/iptables-1.3.7.tar.bz2
pankso@371 390 # tar xjf iptables-1.3.7.tar.bz2
pankso@371 391 # cd iptables-1.3.7
pankso@371 392 # make KERNEL_DIR=../linux-2.6.20 BINDIR=/sbin \
pankso@371 393 LIBDIR=/lib MANDIR=/usr/share/man
pankso@371 394 # make KERNEL_DIR=../linux-2.6.20 BINDIR=/sbin \
pankso@371 395 LIBDIR=/lib MANDIR=/usr/share/man \
pankso@371 396 DESTDIR=$PWD/_pkg install
pankso@371 397 # strip _pkg/sbin/*
pankso@371 398 # strip _pkg/lib/iptables/*
pankso@371 399 </pre>
pankso@371 400 <p>
pankso@371 401 Installation des applications iptables*, et des bibliothèques suffisantes pour un firewall
pankso@371 402 basique:
pankso@371 403 </p>
pankso@371 404 <pre>
pankso@371 405 # cp -a _pkg/sbin/iptables* $fs/sbin
pankso@371 406 # mkdir $fs/lib/iptables
pankso@371 407 # cp -a _pkg/lib/iptables/{libipt_standard.so,libipt_conntrack.so} \
pankso@371 408 $fs/lib/iptables
pankso@371 409 # cp -a _pkg/lib/iptables/{libipt_tcp.so,libipt_udp.so} $fs/lib/iptables
pankso@371 410 </pre>
pankso@371 411 <p>
pankso@371 412 Pour satifaire les dépendances d'iptables, il faut copier la bibliothèque libnsl*:
pankso@371 413 </p>
pankso@371 414 <pre>
pankso@371 415 # cp -va /lib/libnsl* $fs/lib/tls
pankso@371 416 # strip $fs/lib/libnsl*
pankso@371 417 </pre>
pankso@371 418 <a name="sqlite"></a>
pankso@371 419 <h3><font color="#6c0023">sqlite-3.5.1 - Petit moteur de base de données SQL</font></h3>
pankso@371 420 <p>
pankso@371 421 Ce paquet fourni <code>sqlite3</code> et les bibliothèques <code>sqlite3.so*</code>
pankso@371 422 (<a href="http://www.sqlite.org/">www.sqlite.org</a>). SQLite est
pankso@371 423 intégré directement aux programmes en utilisant des fichiers de bases
pankso@371 424 de données, il est performant et rapide:
pankso@371 425 </p>
pankso@371 426 <pre>
pankso@371 427 # cd ..
pankso@371 428 # wget http://www.sqlite.org/sqlite-3.5.1.tar.gz
pankso@371 429 # tar xzf sqlite-3.5.1.tar.gz
pankso@371 430 # cd sqlite-3.5.1
pankso@371 431 # ./configure --prefix=/usr --disable-tcl
pankso@371 432 # make
pankso@371 433 # make DESTDIR=$PWD/_pkg install
pankso@371 434 # strip _pkg/usr/lib/*.so*
pankso@371 435 # strip _pkg/usr/bin/*
pankso@371 436 </pre>
pankso@371 437 <p>
pankso@371 438 Installation des bibliothèques et de l'utilitaire <code>sqlite3</code>
pankso@371 439 dans le rootfs de SliTaz:
pankso@371 440 </p>
pankso@371 441 <pre>
pankso@371 442 # cp -a _pkg/usr/lib/*.so* $fs/usr/lib
pankso@371 443 # cp -a _pkg/usr/bin/* $fs/usr/bin
pankso@371 444 </pre>
pankso@371 445 <a name="cdrkit"></a>
pankso@371 446 <h3><font color="#6c0023">cdrkit-1.1.5 - Outils de manipulation de cdrom et images ISO</font></h3>
pankso@371 447 <p>
pankso@371 448 cdrkit (<a href="http://www.cdrkit.org/">www.cdrkit.org</a>)
pankso@371 449 fournit des outils de manipulation de cdrom. SliTaz installe par défaut
pankso@371 450 wodim pour la gravure et genisoimage pour la création d'image ISO (c'est
pankso@371 451 le paquet cdrkit-base-1.1.5). La compilation est un peu particulière
pankso@371 452 (cmake), mais ne devrait pas poser trop de problèmes:
pankso@371 453 </p>
pankso@371 454 <pre>
pankso@371 455 # cd ..
pankso@371 456 # wget http://cdrkit.org/releases/cdrkit-1.1.5.tar.gz
pankso@371 457 # tar xzf cdrkit-1.1.5.tar.gz
pankso@371 458 # cd cdrkit-1.1.5
pankso@371 459 # make
pankso@371 460 # make install PREFIX=$PWD/_pkg/usr
pankso@371 461 # strip -v _pkg/usr/bin/*
pankso@371 462 # strip -v _pkg/usr/sbin/*
pankso@371 463 # cp _pkg/usr/bin/genisoimage $fs/usr/bin
pankso@371 464 # cp _pkg/usr/bin/wodim $fs/usr/bin
pankso@371 465 </pre>
pankso@371 466 <p>
pankso@371 467 Copie de la bibliothèque libcap.so.1 requise par wodim:
pankso@371 468 </p>
pankso@371 469 <pre>
pankso@371 470 # cp -a /lib/libcap.so* $fs/lib
pankso@371 471 </pre>
pankso@371 472 <a name="cpio"></a>
pankso@371 473 <h3><font color="#6c0023">cpio-2.8 - Archiveur</font></h3>
pankso@371 474 <p>
pankso@371 475 cpio (<a href="http://www.gnu.org/software/cpio/">http://www.gnu.org/software/cpio/</a>)
pankso@371 476 fournit des outils de manipulation de s archives au format cpio. Ce
pankso@371 477 format d'archive est utilisé pour les paquets SliTaz et l'image initramfs
pankso@371 478 du cdrom. A noter que Busybox fournit aussi une version de cpio qui
pankso@371 479 permet seulemnt de désarchiver:
pankso@371 480 </p>
pankso@371 481 <pre>
pankso@371 482 # cd ..
pankso@371 483 # wget ftp://sunsite.cnlab-switch.ch/mirror/gnu/cpio/cpio-2.8.tar.gz
pankso@371 484 # tar xzf cpio-2.8.tar.gz
pankso@371 485 # cd cpio-2.8
pankso@371 486 # ./configure --prefix=/usr --bindir=/bin \
pankso@371 487 --libexecdir=/usr/bin --mandir=/usr/share/man \
pankso@371 488 --infodir=/usr/share/info
pankso@371 489 # make
pankso@371 490 # make DESTDIR=$PWD/_pkg install
pankso@371 491 # strip -v _pkg/bin/*
pankso@371 492 # strip -v _pkg/usr/bin/*
pankso@371 493 </pre>
pankso@371 494 <p>
pankso@371 495 Installation de <code>cpio</code> dans /bin et de <code>rmt</code>
pankso@371 496 dans /usr/bin. Vous pouvez aussi installer les fichiers de
pankso@371 497 localisation pour le français:
pankso@371 498 </p>
pankso@371 499 <pre>
pankso@371 500 # cp -a _pkg/bin/* $fs/bin
pankso@371 501 # cp -a _pkg/usr/bin/* $fs/usr/bin
pankso@371 502 # cp -a _pkg/usr/share/locale/fr $fs/usr/share/locale
pankso@371 503 </pre>
pankso@371 504 <a name="microperl"></a>
pankso@371 505 <h3><font color="#6c0023">microperl-5.8.8 - Un tout petit Perl</font></h3>
pankso@371 506 <p>
pankso@371 507 Microperl est une micro implémentation de Perl permettant d'utiliser la plus
pankso@371 508 part des fonctions de base fournies par le puissant langage qu'est Perl. Vous
pankso@371 509 trouverez plus d'infos dans l'archine source et le fichier
pankso@371 510 <code>README.micro</code>. Nous applicaons un petit <code>sed</code> sur le
pankso@371 511 fichier de configuration, pour que microperl cherche les modules dans
pankso@371 512 <code>/usr/lib/perl5</code>. Nous créons aussi un lien pour que les scripts
pankso@371 513 <code>#/usr/bin/perl</code> fonctionnent :
pankso@371 514 </p>
pankso@371 515 <pre>
pankso@371 516 # wget http://ftp.funet.fi/pub/CPAN/src/perl-5.8.8.tar.gz
pankso@371 517 # tar xzf perl-5.8.8.tar.gz
pankso@371 518 # cd perl-5.8.8
pankso@371 519 # sed -i s/'usr\/local'/'usr'/ uconfig.sh
pankso@371 520 # sed -i s/'perl5\/5.9'/'perl5'/ uconfig.sh
pankso@371 521 # sed -i s/'unknown'/'i486-pc-linux-gnu'/ uconfig.sh
pankso@371 522 # make -f Makefile.micro regen_uconfig
pankso@371 523 # make -f Makefile.micro
pankso@371 524 # strip microperl
pankso@371 525 # cp microperl $fs/usr/bin
pankso@371 526 # chroot $fs /bin/ash
pankso@371 527 /# cd /usr/bin
pankso@371 528 /# ln -s microperl perl
pankso@371 529 /# exit
pankso@371 530 </pre>
pankso@371 531 <a name="module-init-tools"></a>
pankso@371 532 <h3><font color="#6c0023">module-init-tools-3.2 - Outils de manipulation des modules du noyau</font></h3>
pankso@371 533 <p>
pankso@371 534 Les <a href="http://ftp.kernel.org/pub/linux/utils/kernel/module-init-tools/"
pankso@371 535 >module-init-tools</a> de kernel.org, modprobe, insmod, rmmod, lsmod, que
pankso@371 536 BusyBox fournit aussi. Nous avons fait le choix de les utiliser car nous pouvons
pankso@371 537 compiler modutils/modprobe pour qu'il support les modules compressés (.gz),
pankso@371 538 afin de gagner de la place. Pour cela il faut utiliser l'option --enable-zlib. Ensuite
pankso@371 539 c'est le nettoyage, et la copie des binaires. Nous ne prenons pas tout ce qui a
pankso@371 540 créé, seulement ce dont nous avons besoin, depmod, insmod, modinfo, modprobe,
pankso@371 541 rmmod dans /sbin, et lsmod dans /bin.
pankso@371 542 </p>
pankso@371 543 <pre>
pankso@371 544 # cd ..
pankso@371 545 # wget http://ftp.kernel.org/pub/linux/utils/kernel/module-init-tools/module-init-tools-3.2.tar.bz2
pankso@371 546 # tar xjf module-init-tools-3.2.tar.bz2
pankso@371 547 # cd module-init-tools-3.2
pankso@371 548 # ./configure --enable-zlib --prefix=/usr --sbindir=/sbin --bindir=/bin \
pankso@371 549 --sysconfdir=/etc --infodir=/usr/share/info --mandir=/usr/share/man
pankso@371 550 # make
pankso@371 551 # make DESTDIR=$PWD/_pkg install
pankso@371 552 # strip -v _pkg/sbin/{depmod,insmod,modinfo,modprobe,rmmod}
pankso@371 553 # strip -v _pkg/bin/lsmod
pankso@371 554 # cp -i _pkg/sbin/{depmod,insmod,modinfo,modprobe,rmmod} $fs/sbin
pankso@371 555 # cp -i _pkg/bin/lsmod $fs/bin
pankso@371 556 # cd ..
pankso@371 557 </pre>
pankso@371 558 <a name="kernel-modules"></a>
pankso@371 559 <h3><font color="#6c0023">Copie des modules du kernel</font></h3>
pankso@371 560 <p>
pankso@371 561 Copie des fichier depuis linux-2.6.20/_pkg.
pankso@371 562 </p>
pankso@371 563 <pre>
pankso@371 564 # cp -a linux-2.6.20/_pkg/lib/* $fs/lib
pankso@371 565 </pre>
pankso@371 566 <h4>Compression des modules du kernel</h4>
pankso@371 567 <p>
pankso@371 568 Compression des modules, cette opération permet de ganger 50% de
pankso@371 569 place environ, nous commençons par nous déplacer dans le rootfs
pankso@371 570 , puis nous chercons tous les fichiers portant l'extension <code>.ko</code>
pankso@371 571 pour les compresser. Vous pouvez aussi faire cela avec le script 'gzmodtaz.sh'
pankso@371 572 contenu dans SliTaz tools:
pankso@371 573 </p>
pankso@371 574 <pre>
pankso@371 575 # cd $fs
pankso@371 576 </pre>
pankso@371 577 <p>
pankso@371 578 Avec 'gztazmod.sh':
pankso@371 579 </p>
pankso@371 580 <pre>
pankso@371 581 # cp -v ../src/slitaz-tools-1.1/utils/gztazmod.sh sbin
pankso@371 582 # ./sbin/gztazmod.sh lib/modules/2.6.20-slitaz
pankso@371 583 </pre>
pankso@371 584 <p>
pankso@371 585 Ou à la main:
pankso@371 586 </p>
pankso@371 587 <pre>
pankso@371 588 # cd lib/modules/2.6.20-slitaz
pankso@371 589 # find . -name "*.ko" -exec gzip '{}' \;
pankso@371 590 # sed 's/\.ko/.ko.gz/g' modules.dep > tmp.dep
pankso@371 591 # rm modules.dep
pankso@371 592 # mv tmp.dep modules.dep
pankso@371 593 </pre>
pankso@371 594 <a name="initramfs-iso"></a>
pankso@371 595 <h3><font color="#6c0023">Génération de l'initramfs, et d'une image ISO</font></h3>
pankso@371 596 <p>
pankso@371 597 Pour créer une nouvelle image ISO vous pouvez utiliser 'mktaziso'
pankso@371 598 contenu dans
pankso@371 599 <a href="http://www.slitaz.org/get/tools.html">SliTaz tools</a>.
pankso@371 600 Ou vous pouvez créer un nouvelle image initramfs, et la copier dans
pankso@371 601 /boot de la racine de cd-rom (rootcd), et pour finir créer un image
pankso@371 602 ISO avec genisoimage:
pankso@371 603 </p>
pankso@371 604 <pre>
pankso@371 605 # cd $fs
pankso@371 606 # find . -print | cpio -o -H newc | gzip -9 &gt; ../rootfs.gz
pankso@371 607 # cd ..
pankso@371 608 # cp rootfs.gz rootcd/boot
pankso@371 609 # genisoimage -R -o slitaz-test.iso -b boot/isolinux/isolinux.bin \
pankso@371 610 -c boot/isolinux/boot.cat -no-emul-boot -boot-load-size 4 \
pankso@371 611 -V "SliTaz" -input-charset iso8859-1 -boot-info-table rootcd
pankso@371 612 </pre>
pankso@371 613 <p>
pankso@371 614 Test iso image:
pankso@371 615 </p>
pankso@371 616 <pre>
pankso@371 617 # qemu -cdrom slitaz-test.iso
pankso@371 618 </pre>
pankso@371 619 <h4>Suite</h4>
pankso@371 620 <p>
pankso@371 621 Le prochain chapitre se nomme <a href="base-ncurses.html">Base ncurses.</a> Il
pankso@371 622 décrit l'installation et la configuration des bibliothèques et d'applications
pankso@371 623 ncurses.
pankso@371 624 </p>
pankso@371 625
pankso@371 626
pankso@371 627 <!-- End of content -->
pankso@371 628 </div>
pankso@371 629
pankso@371 630 <!-- Footer. -->
pankso@371 631 <div id="footer">
pankso@371 632 <div class="footer-right"></div>
pascal@548 633 <a href="base-apps.html#top">Haut de la page</a> |
pankso@371 634 <a href="index.html">Table des matières</a>
pankso@371 635 </div>
pankso@371 636
pankso@371 637 <div id="copy">
pascal@669 638 Copyright &copy; <span class="year"></span> <a href="http://www.slitaz.org/">SliTaz</a> -
pankso@371 639 <a href="http://www.gnu.org/licenses/gpl.html">GNU General Public License</a>;<br />
pankso@371 640 Documentation publiées sous
pankso@371 641 <a href="http://www.gnu.org/copyleft/fdl.html">GNU Free Documentation License</a>
pankso@371 642 et codée en <a href="http://validator.w3.org/">xHTML 1.0 valide</a>.
pankso@371 643 </div>
pankso@371 644
pankso@371 645 </body>
pankso@371 646 </html>