Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 11352 Details for
Bug 20276
french translation of the uml guide
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
the xml doc
uml.xml (text/plain), 13.42 KB, created by
Guillaume Morin (RETIRED)
on 2003-05-01 10:54:30 UTC
(
hide
)
Description:
the xml doc
Filename:
MIME Type:
Creator:
Guillaume Morin (RETIRED)
Created:
2003-05-01 10:54:30 UTC
Size:
13.42 KB
patch
obsolete
><?xml version='1.0' encoding="UTF-8"?> ><?xml-stylesheet href="/xsl/guide.xsl" type="text/xsl"?> ><!DOCTYPE guide SYSTEM "/dtd/guide.dtd"> > ><guide link="/doc/fr/uml.xml"> ><title>Guide du Développeur Gentoo Linux pour le test de système avec le Mode Utilisateur Linux (User-Mode Linux)</title> ><author title="Editeur"><mail link="g2boojum@gentoo.org">Grant Goodyear</mail></author> ><author title="Editeur"><mail link="zhen@gentoo.org">John Davis</mail></author> ><author title="Traducteur"><mail link="dju@elgcteam.net">Julien Allanos</mail></author> > ><abstract> >Ce guide montre aux développeurs Gentoo Linux comment mettre en place >et utiliser le Mode Utilisateur Linux (User-Mode Linux) pour tester les >modifications du système potentiellement dangereuses. ></abstract> > ><version>0.07</version> ><date>21 mars 2003 (traduction le 28 avril 2003)</date> > ><chapter> ><title>Obtenir le Mode Utilisateur Linux</title> ><section> ><body> ><p>Comme en fait état le site du Mode Utilisateur Linux >(<uri>http://user-mode-linux.sourceforge.net</uri>), >le Mode Utilisateur Linux autorise un utilisateur >à "exécuter Linux à l'intérieur de lui-même". Spécifiquement, le >Mode Utilisateur Linux offre une machine virtuelle sur laquelle un utilisateur >peut "exécuter des programmes buggés, experimenter de nouveaux noyaux ou >distributions, et fouiner dans les entrailles de Linux, tout cela sans >compromettre son installation principale de Linux". >Les changements dans les packages constituant le cÅur de Gentoo, comme <e>sys-apps/baselayout</e> >ou <e>sys-libs/glibc</e>, peuvent potentiellement casser le système et le rendre >non-démarrable; avec le Mode Utilisateur Linux, nous pouvons tester ces changements >sans s'inquiéter de le casser. ></p> ><p> >Mettre en place le Mode Utilisateur Linux est globalement identique à >l'installation normale d'un noyau. D'abord, installez les sources du >noyau (convenablement patchées pour le Mode Utilisateur Linux), ensuite >configurez le noyau du Mode Utilisateur Linux de la manière habituelle: ></p> ><pre> ># <i>emerge sys-kernel/usermode-sources</i> ># <i>cd /usr/src/uml/linux</i> ># <i>make menuconfig <comment>ARCH=um</comment></i> ># <i>make linux <comment>ARCH=um</comment></i> ># <i>cp linux /usr/local/bin/linux</i> ></pre> ><warn>La partie <e>ARCH=um</e> est <e>extrêmement</e> importante!</warn> ><impo> >Pour que le noyau en Mode Utilisateur Linux puisse démarrer correctement un système Gentoo, >il doit etre configuré pour ne <e>pas</e> monter automatiquement ><path>/dev</path> (devfs) par défaut. >De plus, vous vous serez assuré d'avoir inclus ><e>tmpfs</e> (le "Système de Fichiers en Mémoire Virtuelle" - "Virtual Memory >Filesystem"), les fichiers de démarrage de Gentoo Linux stockant >par défaut leurs informations dans une petite partition tmpfs. >(Les noyaux binaires disponibles depuis le site du Mode Utilisateur Linux >montent automatiquement <path>/dev</path>, et n'ont pas le support de tmpfs d'inclus; >ne les utilisez pas.) ></impo> ><p>Je recommande chaudement de lire la documentation du Mode Utilisateur Linux, >mais l'idée basique est: l'exécution du programme<path>/usr/local/bin/linux</path> >démarre le noyau du Mode Utilisateur et essaye de mettre en place le système >stocké dans le fichier <path>root_fs</path>, qui devrait être situé dans le >répertoire courant.</p> ><p>Vous pouvez aussi installer les outils du Mode Utilisateur Linux.</p> ><pre> ># <i>emerge sys-apps/usermode-utilities</i> ></pre> ><p>Ces outils facilitent, entre autres, les interactions réseau >entre le système virtuel en Mode Utilisateur Linux et le système >hôte. ></p> ></body> ></section> ></chapter> > ><chapter> ><title>Création du fichier <path>root_fs</path></title> > ><section> ><title>"Chrooter" Gentoo</title> ><body> ><p> >Le fichier <path>root_fs</path>, nécessaire au Mode Utilisateur Linux, >est un simple fichier qui contient un système de fichiers Gentoo Linux entier. >Pour générer ce fichier, vous devez avoir le support du "Loopback device" >activé dans le noyau de l'hôte (non-Mode Utilisateur). ></p> ><p>La génération du fichier <path>root_fs</path> lui-même sera >notre dernière étape. D'abord nous devons générer un système de >fichiers Gentoo dans un chroot ordinaire. Nous avons besoin de >l'archive stage disponible, qui peut être téléchargée séparément, >extraite depuis un liveCD, ou depuis un .iso d'un liveCD. ></p> ><pre caption="Monter un .iso d'un liveCD"> ># <i>mkdir /mnt/loop</i> ># <i>mount -o loop /path/to/build-<TAB>.iso /mnt/loop</i> ></pre> ><p> >Mettre en place le chroot est essentiellement identique à une >installation ordinaire de Gentoo Linux. ></p> ><pre> ># <i>mkdir /mnt/gentoo</i> ># <i>cd /mnt/gentoo</i> ># <i>tar xvjpf /path/to/build-<TAB>.tar.bz2</i> ></pre> ><p> >Continuez et démonter l'iso. Vous n'en avez plus besoin. ></p> ><pre> ># <i>cp /etc/resolv.conf /mnt/gentoo/etc/</i> ># <i>mount -o bind /proc /mnt/gentoo/proc</i> ># <i>mkdir -p /mnt/gentoo/usr/portage/distfiles</i> ># <i>mkdir -p /mnt/gentoo/usr/portage/packages</i> ># <i>mount -o bind /usr/portage/distfiles /mnt/gentoo/usr/portage/distfiles</i> ># <i>mount -o bind /usr/portage/packages /mnt/gentoo/usr/portage/packages</i> ># <i>chroot /mnt/gentoo /bin/bash</i> ><!--per bug 16134, added emerge sync to supress warning, etc--> ># <i>emerge sync</i> ># <i>env-update</i> ># <i>source /etc/profile</i> ></pre> ><p> >En montant <path>/usr/portage/distfiles</path> et ><path>/usr/portage/packages</path> avec l'option -o bind, nous >évitons de télécharger ou de compiler des packages déjà présents >sur l'hôte Gentoo. ></p> ><p> >Bootstrapez et compilez le système de la manière habituelle: ></p> ><pre> ><!--removed the emerge sync below because it is done above--> ># <i>cd /usr/portage</i> ># <i>nano -w /etc/make.conf</i> ># <i>nano -w /etc/make.profile/packages</i> ># <i>nano -w /usr/portage/profiles/package.mask</i> ># <i>scripts/bootstrap.sh && emerge --usepkg system</i> ></pre> ><warn> ><!--Changed grub to virtual/bootloader--> >Le fichier <path>/etc/make.profile/packages</path> doit être édité >pour enlever l'ebuild virtual/bootloader du système par défaut (enlevez juste le "*" au début >de la ligne "*virtual/bootloader"). L'ebuild virtual/bootloader tente de monter la >partition /boot, ce qui va échouer dans notre chroot. ></warn> ><note> >Soyez certain d'avoir examiné <path>/etc/make.profile/packages</path> >et <path>/usr/portage/profiles/package.mask</path> pour être sûr >qu'aucun package que vous voulez installer ne soit masqué. ><path>scripts/bootstrap.sh</path> est actuellement conçu pour compiler >le bootstrap depuis les sources. Pour utiliser des packages existants, >ajoutez <c>alias emerge="emerge --usepkg"</c> quelque part près du >début du script de bootstrap. ></note> ><p> >Ajoutez n'importe quel package que vous désirez. Vous pouvez donner un >nom d'hôte à votre système Gentoo virtuel, si vous le désirez. Dans ><path>/etc/fstab</path>, vous ferez en sorte que <path>/dev/ROOT</path> soit ><path>/dev/ubd/0</path>, avec un type de système de fichiers ext2, ext3 ou >reiserfs. Placez <path>/dev/SWAP</path> à <path>/dev/ubd/1</path>, et >décommentez <path>/dev/BOOT</path>. ></p> ><p> >Quitter le chroot, démontez tous les montages de type bind, désarchivez >la nouvelle distribution Gentoo, et faites le nettoyage: ></p> ><pre> ># <i>exit</i> ># <i>umount /mnt/gentoo/usr/portage/distfiles</i> ># <i>umount /mnt/gentoo/usr/portage/packages</i> ># <i>umount /mnt/gentoo/proc</i> ># <i>du -ks /mnt/gentoo</i> ><!-- wtf is this? 261744 /mnt/gentoo--> ><!-- added dir change to be more explicit--> ># <i>cd /mnt/gentoo</i> ># <i>tar cvjpf ~/gentoo.tbz2 *</i> ># <i>cd</i> ># <i>rm -rf /mnt/gentoo</i> ></pre> > ><p> à ce point, n'oubliez pas de définir le mot de passe pour root. </p> > ><pre caption="Définition du mot de passe pour root"> ># <c>passwd</c> ></pre> > ><p>Vous devriez considérer les étapes finales du ><uri link="http://www.gentoo.org/doc/fr/gentoo-x86-install.xml">Guide d'Installation Gentoo Linux sur x86</uri>. </p> ></body> ></section> > ><section> ><title>Créer <path>root_fs</path></title> ><body> ><p> >La taille de notre chroot Gentoo est proche de 300 Mo, donc ><path>root_fs</path> doit être au moins de cette taille. >Nous choisirons 0,5 Go comme taille raisonnable. ></p> ><pre> ># <i>dd if=/dev/zero of=root_fs seek=500 count=1 bs=1M</i> ># <i>mke2fs -F root_fs</i> ># <i>mount -o loop root_fs /mnt/loop</i> ># <i>tar xvjpf gentoo.tbz2 -C /mnt/loop</i> ># <i>umount /mnt/loop</i> ></pre> ><p> >Il serait bon d'avoir une partition de swap de 0,5 Go. ></p> ><pre> ># <i>dd if=/dev/zero of=swap_fs seek=500 count=1 bs=1M</i> ># <i>mkswap -f swap_fs</i> ></pre> ><p> >Maintenant, voyons si cela fonctionnne! ></p> ><pre> ># <i>linux ubd0=root_fs ubd1=swap_fs</i> ></pre> ><note> >Le Mode Utilisateur Linux utilise des xterms pour les consoles >virtuelles lancées au moment du démarrage, donc vous devez être sûr >que le terminal à partir duquel vous lancez le Mode Utilisateur >Linux a son $DISPLAY correctement défini (ainsi que les permissions >xhost/xauth). ></note> ><p> >Vous devriez normalement être capable de vous connecter à votre système >Gentoo en Mode Utilisateur Linux. La seule chose qui empêche ce système >d'être complètement fonctionnel est la mise en réseau entre la machine >virtuelle et l'hôte. ></p> ></body> ></section> ></chapter> > ><chapter> ><title>Configuration du réseau</title> > ><section> ><body> ><p> >Grâce à Martin Schlemmer (Azarah), je sais à présent comment >faire fonctionner le réseau depuis un système en Mode >Utilisateur. L'idée est que nous devons mettre en place un >réseau privé constitué du système en Mode Utilisateur et >du système hôte, puis indiquer au système en Mode Utilisateur >de router tous ses paquets vers l'hôte, qui les transmettra au net. >Soyez certain d'avoir activé les supports <e>Networking --> >IP: Netfilter Configuration --> IP tables support --> Full NAT >--> MASQUERADE target</e> et <e>Network Device Support --> Ethertap network tap</e> >dans le noyau du système hôte, compilés comme modules; >ensuite, faites ce qui suit sur le système <e>hôte</e>: ></p> ><pre> ># <i>modprobe ethertap</i> ># <i>modprobe iptable_nat</i> ># <i>iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE</i> ># <i>echo 1 > /proc/sys/net/ipv4/ip_forward</i> ></pre> ><p> >La ligne <e>iptables</e> met en place l'IP Masquerading entre le réseau >privé dans lequel le système en Mode Utilisateur sera, et >internet (qui peut être atteint par <c>eth0</c> dans notre cas). >La ligne <e>echo</e> active la transmission de paquets >entre le réseau privé et l'interface sur laquelle se trouve la >passerelle par défaut (eth0 pour nous). ></p> ><p> >Maintenant, vérifions si le réseau fonctionne depuis le système >en Mode Utilisateur. ></p> ><pre> ># <i>linux ubd0=root_fs ubd1=swap_fs eth0=ethertap,tap0,,192.168.0.254</i> ><comment>(connexion au Mode Utilisateur)</comment> ># <i>ifconfig eth0 192.168.0.1 up</i> ># <i>ping -c 2 192.168.0.254</i> >PING 192.168.0.254 (192.168.0.254): 56 octets data >64 octets from 192.168.0.254: icmp_seq=0 ttl=255 time=0.8 ms >64 octets from 192.168.0.254: icmp_seq=1 ttl=255 time=0.6 ms > >--- 192.168.0.254 ping statistics --- >2 packets transmitted, 2 packets received, 0% packet loss >round-trip min/avg/max = 0.6/0.7/0.8 ms ><i>route add default gw 192.168.0.254</i> ><i>netstat -rn</i> >Kernel IP routing table >Destination Gateway Genmask Flags MSS Window irtt Iface >192.168.0.0 0.0.0.0 255.255.255.0 U 40 0 0 eth0 >0.0.0.0 192.168.0.254 0.0.0.0 UG 40 0 0 eth0 ><i>scp user@192.168.0.254:/etc/resolv.conf /etc/resolv.conf</i> <comment>(si nécessaire)</comment> ><i>ping -c 2 www.gentoo.org</i> >PING www.gentoo.org (207.170.82.202): 56 octets data >64 octets from 207.170.82.202: icmp_seq=0 ttl=240 time=119.6 ms >64 octets from 207.170.82.202: icmp_seq=1 ttl=240 time=92.0 ms > >--- www.gentoo.org ping statistics --- >2 packets transmitted, 2 packets received, 0% packet loss >round-trip min/avg/max = 92.0/105.8/119.6 ms ></pre> ><p> >Dans le système en Mode Utilisateur, nous assignons à l'interface eth0 >l'adresse IP privée 192.168.0.1 et nous activons l'interface. L'hôte >a une adresse IP privée 192.168.0.254, et nous lui envoyons un ping pour >être certain que notre réseau fonctionne. La ligne <e>route</e> ajoute une >passerelle par défaut, notre hôte; nous utilisons <e>scp</e> pour récupérer un ><path>/etc/resolv.conf</path> fonctionnel (si nécessaire); et nous envoyons >un ping vers www.gentoo.org pour voir si notre résolution des noms (et en >général l'accès vers internet) fonctionne depuis notre système en Mode >Utilisateur. Maintenant le système en Mode Utilisateur peut <c>emerge</c> >à volonté! ></p> ></body> ></section> ></chapter> > ><chapter> ><title>Tester le .iso</title> > ><section> ><body> ><p> >Peut-être que l'idéal pour tester Gentoo Linux serait de >démarrer le .iso en Mode Utilisateur et d'effectuer une installation >complète de Gentoo depuis le système virtuel en Mode Utilisateur >Linux. ></p> ><p> >Démarrer le .iso, ou en réalité le initrd du .iso, est plutôt simple. ></p> ><pre> ># <i>mount -o loop /path/to/build-<TAB>.iso /mnt/loop</i> ># <i>cp /mnt/loop/isolinux/rescue.gz .</i> ># <i>linux load_ramdisk=1 prompt_ramdisk=0 ramdisk_size=22000 \</i> >> <i>initrd=rescue.gz root=/dev/ram0 ubd0=root_fs ubd1=swap_fs \</i> >> <i>ubd2=/dev/cdroms/cdrom0 eth0=ethertap,tap0,,192.168.0.254</i> ></pre> ><p> >Maintenant, vous pouvez suivre le guide d'installation de Gentoo Linux >mot pour mot, mais vous devez savoir que le système de fichiers >racine sera <path>/dev/ubd/0</path>, la "partition" swap sera ><path>/dev/ubd/1</path>, et le CD rom sera <path>/dev/ubd/2</path>. ></p> ></body> ></section> ></chapter> > > ></guide>
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 20276
: 11352