AviGNU - Mot-clé - PPCGroupe d'utilisateurs de logiciels libres du Grand Avignon2024-01-02T17:40:01+01:00Administrateururn:md5:8ed776652564792dba453bac492a5a6cDotclearOpenBSD 5.5 sur un iBook G4urn:md5:bcf35f4255e08e8c765d43d4a08b2a652014-05-11T22:03:00+02:002014-11-04T05:26:20+01:00Olivier DuchateauBSDBSDHowtomacppcOpenBSDPowerpcPPC<p><img src="http://avignu.tuxfamily.org/news-custom/public/openbsd/.openbsd-55_m.png" alt="openbsd-55.png" style="display:block; margin:0 auto;" title="OpenBSD 5.5" /></p>
<p>Mise à jour d'un précédent <a href="http://avignu.tuxfamily.org/index.php?post/2012/09/15/OpenBSD-sur-un-iBook-G4">billet</a> sur l'installation de <a href="http://www.openbsd.org/">OpenBSD</a> sur un iBook G4.</p> <p>La première chose à retenir, durant l'installation le clavier sera en <strong>QWERTY</strong>.</p>
<h3>1. Accéder au prompt de l'Open Firmware</h3>
<p>Après avoir insérer le médium d'installation, dans mon cas, il s'agit d'un CD. On doit appuyer simultanément sur les touches <strong>Commande</strong> + <strong>Option</strong>+ <strong>O</strong> + <strong>F</strong> (pour plus de détails, reportez-vous à la <a href="http://avignu.wiki.tuxfamily.org/doku.php?id=documentation:openfirmware">page dédiée</a> sur le wiki).</p>
<h3>2. <em>Booter</em> sur le CD</h3>
<pre>
0 > boot cd:,ofwboot /5.5/macppc/bsd.rd
</pre>
<h3>3. Mot de passe pour le super utilisateur (root)</h3>
<p><ins> <strong>Le clavier est en QWERTY.</strong> </ins></p>
<p>Définissez un mot de passe compatible avec les deux types de claviers. Évitez les lettres telles que a, q, w, z, et m.</p>
<h3>4. Le partitionnement</h3>
<p>J'ai choisi d'installer OpenBSD sur tout le disque, donc j'ai opté pour une table de partition de type <strong>MBR</strong>.</p>
<p>Voici le partitionnement pour un disque dur de 57 G.</p>
<pre>
root@brigand:~# disklabel -h wd0
# /dev/rwd0c:
type: ESDI
disk: ESDI/IDE disk
label: FUJITSU MHT2060A
duid: a50934233f457d01
flags:
bytes/sector: 512
sectors/track: 63
tracks/cylinder: 16
sectors/cylinder: 1008
cylinders: 116280
total sectors: 117210240 # total bytes: 57231.6M
boundstart: 4096
boundend: 117210240
drivedata: 0
16 partitions:
# size offset fstype [fsize bsize cpg]
a: 4096.4M 4096 4.2BSD 2048 16384 1 # /
b: 1023.8M 8393600 swap # none
c: 57231.6M 0 unused
d: 3072.2M 10490272 4.2BSD 2048 16384 1 # /var
e: 29695.6M 16782176 4.2BSD 2048 16384 1 # /usr
f: 19341.5M 77598848 4.2BSD 2048 16384 1 # /home
i: 1.0M 1 MSDOS
root@brigand:~#
</pre>
<h3>5. Installation des <em>sets</em></h3>
<p>L'installation des différents éléments s'est faite par <acronym title="File Transfer Protocol">FTP</acronym>, en éliminant <code>game*.tgz</code> et <code>bsd.rd</code>.</p>
<p>Pour savoir ce qu'il faut installer, veuillez lire la partie 4 de la <a href="http://www.openbsd.org/faq/faq4.html#FilesNeeded">FAQ</a>.</p>
<pre>
[...]
Set name(s)? (or 'abort' or 'done') [done] -g*
Select sets by entering a set name, a file name pattern or 'all'. De-select
sets by prepending a '-' to the set name, file name pattern or 'all'. Selected
sets are labelled '[X]'.
[X] bsd [X] etc55.tgz [X] xbase55.tgz [X] xserv55.tgz
[X] bsd.rd [X] comp55.tgz [X] xetc55.tgz
[ ] bsd.mp [X] man55.tgz [X] xshare55.tgz
[X] base55.tgz [ ] game55.tgz [X] xfont55.tgz
Set name(s)? (or 'abort' or 'done') [done] -bsd.rd
</pre>
<p>Quand la sélection nous convient, il faut « valider » par <strong>done</strong>.</p>
<p>Je n'ai pas créé d'utilisateur, car je préfère le faire plus tard, après avoir peuplé le répertoire <code>/etc/skel</code> <sup>[<a href="http://avignu.tuxfamily.org/index.php?post/2014/05/10/OpenBSD-5.5-sur-un-iBook-G4#pnote-96-1" id="rev-pnote-96-1">1</a>]</sup>.</p>
<p>Normalement l'installation est terminée, on peut redémarrer la machine.</p>
<h3>6. Démarrer automatiquement sur OpenBSD</h3>
<p>Il faut revenir dans l'Open Firmware, et modifier certaines variables :</p>
<pre>
0 > setenv auto-boot? true
0 > setenv boot-device hd:,ofwboot
0 > reset-all
</pre>
<h3>7. Configuration</h3>
<h4>7.1. Le clavier</h4>
<p>Voici ma <a href="http://avignu.wiki.tuxfamily.org/doku.php?id=documentation:openbsd:ibook#configuration_du_clavier_sans_interface_graphique">configuration</a> pour cet iBook.</p>
<h4>7.2. Utiliser tmpfs pour <code>/tmp</code></h4>
<p>Reportez-vous à la <a href="http://avignu.wiki.tuxfamily.org/doku.php?id=documentation:openbsd:tmpfs">page dédiée</a> sur le wiki.</p>
<h4>7.3. Vérification du nom de l'ordinateur</h4>
<p>Regardez, si le fichier <code>/etc/myname</code> est correct.</p>
<h4>7.4. Configurer le <em>shell</em> (ksh) de l'utilisateur root</h4>
<p>Lire la section "<a href="http://avignu.wiki.tuxfamily.org/doku.php?id=snippet:shells">Configurer le Korn shel</a>"</p>
<h4>7.5. Corriger les failles de sécurité</h4>
<p>Consultez cette <a href="http://www.openbsd.org/errata55.html">page</a></p>
<p>Si comme moi, vous préférez rester sur la version <em>-stable</em>, je vais vous montrer comment appliquer ces <em>patches</em>.</p>
<p>Il s'agit d'une <a href="http://avignu.wiki.tuxfamily.org/doku.php?id=documentation:openbsd:errata-tips">méthode</a> parmis toutes <a href="http://www.openbsd.org/faq/faq10.html#Patches">celles</a> qui existent.</p>
<h4>7.6. Installer les <em>firmwares</em></h4>
<p>Au premier redémarrage de la machine, j'ai constaté, que <a href="http://www.openbsd.org/cgi-bin/man.cgi?query=fw_update&apropos=0&sektion=1&manpath=OpenBSD+Current&arch=i386&format=html">fw_update(1)</a> n'a pas réussit à installer certains <em>firmwares</em>. J'ai donc dû passer par les <a href="http://avignu.wiki.tuxfamily.org/doku.php?id=documentation:openbsd:ports#l_arbre_des_ports">ports</a>.</p>
<p>Les <em>firmwares</em> se trouvent dans <code>sysutils/firmware</code>.</p>
<p>Pour cet iBook, j'ai installé :</p>
<ul>
<li><a href="http://www.openbsd.org/cgi-bin/cvsweb/ports/sysutils/firmware/bwi/">bwi</a> (carte wifi, mais il y a des problèmes)</li>
<li><a href="http://www.openbsd.org/cgi-bin/cvsweb/ports/sysutils/firmware/radeondrm/">radeondrm</a></li>
</ul>
<h4>7.7. Choisir un environnement</h4>
<p>Comme l'ordinateur n'est pas tout récent, j'ai opté pour <a href="http://www.xfce.org/">Xfce</a>, pour l'installation de paquets précompilés, consultez cette <a href="http://avignu.wiki.tuxfamily.org/doku.php?id=documentation:openbsd:ports#installer_des_paquets_pre-compiles">page</a>.</p>
<p>Pour éviter d'utiliser <strong>sudo</strong> (pour éteindre la machine), j'ai écrit deux <a href="http://avignu.wiki.tuxfamily.org/doku.php?id=documentation:openbsd:polkit-rules">règles</a> pour <a href="http://www.freedesktop.org/wiki/Software/polkit/">polkit</a>.</p>
<h5>7.7.1. Lancer automatiquement les démons</h5>
<p>En fonction de l'environnement choisi, vous aurez besoin de lancer au démarrage certains démons. Voici la ligne à rajouter dans le fichier <code>/etc/rc.conf.local</code> :</p>
<pre>
# rc.conf.local
#
pkg_scripts="dbus_daemon slim toadd"
</pre>
<p><strong>toad</strong> c'est pour le montage automatique des périphériques, il se trouve dans <a href="http://www.openbsd.org/cgi-bin/cvsweb/ports/sysutils/toad">sysutils/toad</a>.</p>
<p>Pour finir, une capture d'écran montrant OpenBSD en « action ». <em>(Cliquez sur l'image pour zoomer)</em></p>
<p><a href="http://avignu.tuxfamily.org/news-custom/public/openbsd/openbsd-ibookg4.png" title="openbsd-ibookg4.png"><img src="http://avignu.tuxfamily.org/news-custom/public/openbsd/.openbsd-ibookg4_s.png" alt="openbsd-ibookg4.png" style="display:block; margin:0 auto;" title="Capture d'écran de OpenBSD 5.5" /></a></p>
<div class="footnotes"><h4 class="footnotes-title">Note</h4>
<p>[<a href="http://avignu.tuxfamily.org/index.php?post/2014/05/10/OpenBSD-5.5-sur-un-iBook-G4#rev-pnote-96-1" id="pnote-96-1">1</a>] Voir quelques fichiers en annexe.</p></div>
OpenBSD sur un iBook G4urn:md5:3ce87235165c7ecb6ea5d3d362aa31e92012-09-15T10:39:00+02:002013-02-14T20:49:41+01:00Olivier DuchateauBSDBSDHowtoOpenBSDPowerpcPPC<p><img src="http://avignu.tuxfamily.org/news-custom/public/puflogv300X195.gif" alt="OpenBSD logo" style="display:block; margin:0 auto;" title="OpenBSD logo" /></p>
<p>Ce billet est un bref récapitulatif pour installer <a href="http://www.openbsd.org/fr/index.html">OpenBSD</a> sur une machine disposant d'un processeur <strong>PowerPC</strong>.</p> <p>L'installateur s'est considérablement simplifié, cependant sous cette architecture il n'est pas possible de changer l'agencement du clavier <sup>[<a href="http://avignu.tuxfamily.org/index.php?post/2012/09/15/OpenBSD-sur-un-iBook-G4#pnote-62-1" id="rev-pnote-62-1">1</a>]</sup> durant l'installation.</p>
<h3>1. Accéder au prompt de l'Open Firmware</h3>
<p>Une fois que l'on a insérer le « liveCD », on appuie simultanément sur les touches <strong>commande</strong> + <strong>option</strong> + <strong>O</strong> + <strong>F</strong>.</p>
<ul>
<li>La touche <strong>commande</strong>, est celle où il y a le symbole de la <ins><strong>pomme</strong></ins>.</li>
<li>La touche <strong>option</strong>, est la touche qui contient l'inscription <ins><strong>Alt</strong></ins></li>
</ul>
<p>Ensuite on va modifier la valeur de l<em>'auto-boot</em>. Par défaut cette valeur est à <strong>true</strong>, on va la passer à <strong>false</strong>.</p>
<pre>ok
0 > setenv auto-boot? false
0 > reset-all</pre>
<p><ins><strong> /!\ LE CLAVIER EST EN QWERTY /!\ </strong></ins></p>
<h3>2. <em>Booter</em> à partir du liveCD</h3>
<pre>0 > boot cd:,ofwboot /5.1/macppc/bsd.rd</pre>
<h3>3. Le mot de passe pour le super utilisateur</h3>
<p><strong>Rappel :</strong> Le clavier est en <strong>QWERTY</strong>. L'agencement de certaines touches n'est pas identique à un clavier en <strong>AZERTY</strong>.</p>
<p>Pensez à choisir un mot de passe en fonction de ce paramètre.</p>
<h3>4. Choix du fuseau horaire</h3>
<p>Pour la France, il faut mettre ceci :</p>
<pre>[...]
What timezone are you in? ('?' for list) [Europe/Berlin] Europe/Paris</pre>
<h3>5. Le partitionnement</h3>
<p>Si comme moi, vous souhaitez uniquement OpenBSD sur le disque dur, la table des partitions doit être <strong>MBR</strong>.</p>
<p>Si l'on veut faire cohabiter MacOS et OpenBSD, il faut garder un partitionnement en <a href="http://fr.wikipedia.org/wiki/Hierarchical_File_System">HFS/HFS+</a>.</p>
<p>L'installateur propose un partitionnement automatique, on est libre de le modifier (c'est ce que j'ai fait).</p>
<h3>6. Installation des <em>sets</em></h3>
<p>Je suis passé par le téléchargement des archives par FTP.</p>
<pre>[...]
Let's install the sets!
Location of sets? (cd disk ftp http or 'done') [cd] ftp</pre>
<p>J'ai conservé dépôt pré-selectionné (il s'agit d'un miroir français).</p>
<p>Ensuite, on a la liste des archives (<em>sets</em>) que l'on peut installer. J'ai décidé de ne pas conserver les jeux.</p>
<pre>
[...]
Set name(s)? (or 'abort' or 'done') [done] -g*</pre>
<p>Quand la sélection nous convient, il faut « valider » par <strong>done</strong>.</p>
<p>Normalement l'installation est terminée, on peut redémarrer la machine.</p>
<h3>7. <em>Booter</em> automatiquement sous OpenBSD</h3>
<p>Au prompt de l'Open Firmware, il faut redéfinir certaines variables d'environnement.</p>
<pre>ok
0 > setenv auto-boot? true
0 > setenv boot-device hd:,ofwboot
0 > reset-all</pre>
<h3>8. Changer l'agencement du clavier</h3>
<p>En console, il faut lancer cette commande :</p>
<pre># wsconsctl keyboard.encoding=fr</pre>
<p>Pour conserver cette valeur il faut également modifier le fichier <code>/etc/wsconsctl.conf</code>, et décommenter la ligne :</p>
<pre>[...]
keyboard.encoding=fr
[...]</pre>
<h3>9. Bonne route <img src="/news-custom/themes/default/smilies/smile.png" alt=":)" class="smiley" /></h3>
<p>Maintenant vous pouvez (c'est même recommandé) mettre à jour, pour éviter les failles de sécurité, en consultant cette <a href="http://www.openbsd.org/fr/errata51.html">page</a>.</p>
<div class="footnotes"><h4>Note</h4>
<p>[<a href="http://avignu.tuxfamily.org/index.php?post/2012/09/15/OpenBSD-sur-un-iBook-G4#rev-pnote-62-1" id="pnote-62-1">1</a>] Il faudra attendre un redémarrage de la machine, car le « liveCD » ne dispose pas de la commande <code><a href="http://www.openbsd.org/cgi-bin/man.cgi?query=chroot&apropos=0&sektion=8&manpath=OpenBSD+5.1&arch=powerpc&format=html">chroot(8)</a></code>.</p></div>
Installation d'une Debian (powerpc) à partir de debootstrapurn:md5:2a40bc5b91253e9efe58e5afc1d4b4422012-03-14T18:17:00+01:002012-03-14T18:18:14+01:00Olivier DuchateauDocumentationChrootDebianDebootstrapLinuxLVM2PowerpcPPCTips<p><img src="http://avignu.tuxfamily.org/news-custom/public/debian-logo.png" alt="Logo Debian" style="display:block; margin:0 auto;" title="Logo de la distribution, Debian" /></p>
<p>Dans cet article, nous allons voir comment installer la distribution <a href="http://www.debian.org/index.fr.html">Debian</a> à partir de l'utilitaire <strong>debootstrap</strong>. Pour corser le tout, le partitionnement se fera en <a href="http://fr.wikipedia.org/wiki/Gestion_par_volumes_logiques"><acronym title="Logical Volume Manager">LVM</acronym></a>.</p>
<h2>Les prérequis</h2>
<ul>
<li>Un live CD, j'ai choisi <a href="http://www.finnix.org/">Finnix</a> <sup>[<a href="http://avignu.tuxfamily.org/index.php?post/2012/03/14/Installation-d-une-Debian-%28powerpc%29-%C3%A0-partir-de-debootstrap#pnote-50-1" id="rev-pnote-50-1">1</a>]</sup></li>
<li>Un ordinateur, (pour cet exercice, ça sera un iBook G4)</li>
</ul>
<div class="footnotes"><h4>Note</h4>
<p>[<a href="http://avignu.tuxfamily.org/index.php?post/2012/03/14/Installation-d-une-Debian-%28powerpc%29-%C3%A0-partir-de-debootstrap#rev-pnote-50-1" id="pnote-50-1">1</a>] C'est beaucoup plus souple, que l'installateur de Debian.</p></div>
<h2>Avant le chroot</h2>
<p>On doit changer la disposition du clavier, on peut utiliser <strong>azerty</strong> ou <strong>mac-macbook-fr</strong>. Avec ce dernier les touches <code>#</code>@ et <code>><</code> sont inversées.</p>
<pre># loadkeys azerty </pre>
<p>Il faut également vérifier la date et l'heure.</p>
<h3>Le partitionnement</h3>
<p>Comme j'utilise une architecture <a href="http://fr.wikipedia.org/wiki/PowerPC">powerpc</a>, on doit utiliser <code>mac-fdisk</code>.</p>
<pre># mac-fdisk /dev/sda
</pre>
<p>On ré-initialise la table des partitions (et supprime les anciennes) avec la touche <strong>i</strong>.</p>
<p>Puis on crée la partition de <code>bootstrap</code>, touche <strong>b</strong>.</p>
<p>Les autres partitions s'obtiennent à l'aide de la touche <strong>c</strong> (c minuscule).</p>
<p>À la fin, l'ensemble des partitions devraient ressembler à ceci :</p>
<pre>Command (? for help): p
/dev/sda
# type name length base ( size ) system
/dev/sda1 Apple_partition_map Apple 63 @ 1 ( 31.5k) Partition map
/dev/sda2 Apple_Bootstrap bootstrap 1600 @ 64 (800.0k) NewWorld bootblock
/dev/sda3 Apple_UNIX_SVR2 root 12582912 @ 1664 ( 6.0G) Linux native
/dev/sda4 Apple_UNIX_SVR2 debian 104625664 @ 12584576 ( 49.9G) Linux native
Block size=512, Number of Blocks=117210240
DeviceType=0x0, DeviceId=0x0
Command (? for help):
</pre>
<p><code>/dev/sda3</code> correspond à la racine, il s'agit d'une partition classique contrairement à <code>/dev/sda4</code> <sup>[<a href="http://avignu.tuxfamily.org/index.php?post/2012/03/14/Installation-d-une-Debian-%28powerpc%29-%C3%A0-partir-de-debootstrap#pnote-50-1" id="rev-pnote-50-1">1</a>]</sup>, qui sera plus tard partagée pour contenir les autres partitions (<code>swap</code>, <code>/usr</code>, et <code>/home</code>).</p>
<p>On peut passer maintenant à création des volumes logiques.</p>
<p>On commence tout d'abord à définir le <em>groupe de volumes</em>, dans mon cas, il s'appellera <strong>vg</strong>.</p>
<pre># pvcreate /dev/sda4
# vgcreate vg /dev/sda4 </pre>
<p>Puis on s'attaque aux <em>volumes logiques</em> (<code>swap</code>, <code>/usr</code>, et <code>/home</code>).</p>
<pre># lvcreate -L 26G -n usr vg
# lvcreate -L 1G -n swap vg
# lvcreate -L 22G -n home vg </pre>
<p>Pour connaître la taille restante à chaque création d'un volume logique, <code>vgdisplay -v</code>.</p>
<pre># vgdisplay -v
--- Volume group ---
VG Name vg
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 4
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 3
Open LV 3
Max PV 0
Cur PV 1
Act PV 1
VG Size 49,89 GiB
PE Size 4,00 MiB
Total PE 12771
Alloc PE / Size 12544 / 49,00 GiB
Free PE / Size 227 / 908,00 MiB
VG UUID SPr7Al-fSuy-hzIQ-0FW7-LqDp-EdY5-L0n4aZ
--- Logical volume ---
LV Name /dev/vg/usr
VG Name vg
LV UUID FIu2e0-sQ4T-9Xs0-G0st-9JWc-lttG-35M0sN
LV Write Access read/write
LV Status available
# open 1
LV Size 26,00 GiB
Current LE 6656
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 254:0
--- Logical volume ---
LV Name /dev/vg/swap
VG Name vg
LV UUID gaDsGT-7ixO-JiQ6-5wwc-EpML-dHTE-YZgU3y
LV Write Access read/write
LV Status available
# open 2
LV Size 1,00 GiB
Current LE 256
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 254:1
--- Logical volume ---
LV Name /dev/vg/home
VG Name vg
LV UUID S5otQi-JHK3-w2lY-3CvK-3Ouj-rnz7-hICLpP
LV Write Access read/write
LV Status available
# open 1
LV Size 22,00 GiB
Current LE 5632
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 254:2
--- Physical volumes ---
PV Name /dev/sda4
PV UUID veFlfm-ztC3-7UBK-Fnn1-fg1p-QS6B-ZoO0f3
PV Status allocatable
Total PE / Free PE 12771 / 227
</pre>
<h3>Le formatage</h3>
<p>Dans cette étape, nous allons mettre en place le système de fichiers (<strong>ext4</strong> dans mon cas).</p>
<ul>
<li><code>swap</code></li>
</ul>
<pre># mkswap -L swap /dev/vg/swap
[...]
# swapon /dev/vg/swap </pre>
<ul>
<li>La racine, <code>/</code></li>
</ul>
<pre># mkfs.ext4 -L root /dev/sda3
[...]
# tune2fs -c 40 -L root /dev/sda3 </pre>
<ul>
<li><code>/usr</code></li>
</ul>
<pre># mkfs.ext4 -L usr /dev/vg/usr
[...]
# tune2fs -c 50 -L usr /dev/vg/usr </pre>
<ul>
<li><code>/home</code></li>
</ul>
<pre># mkfs.ext4 -L home /dev/vg/home
[...]
# tune2fs -c 50 -L home /dev/vg/home </pre>
<h3>Montage temporaire du système</h3>
<p>On va monter les partitions <code>/</code> et <code>/usr</code> dans le point de montage <code>/mnt</code> du live CD.</p>
<pre># mkdir /mnt/debian
# mount /dev/sda3 /mnt/debian
# mkdir /mnt/debian/usr
# mount /dev/vg/usr /mnt/debian/usr </pre>
<h3><a href="http://wiki.debian.org/fr/Debootstrap">Debootstrap</a></h3>
<p>On va maintenant installer un système minimal dans <code>/mnt/debian</code>. Il faut choisir une branche, <em>stable</em>, <em>testing</em>, ou <em>unstable</em>. J'ai opté pour <em>testing</em>.</p>
<pre># debootstrap --arch powerpc testing /mnt/debian http://ftp.fr.debian.org/debian/ </pre>
<h3>Configuration part. 1</h3>
<p>On peut commencer à configurer notre système.</p>
<p>Nous sommes encore dans la session du live CD, donc je mentionne le chemin complet des fichiers. Si vous faites les modifications dans le <strong>chroot</strong>, <code>/mnt/debian</code> n'existe pas.</p>
<h4>Le réseau</h4>
<pre># cp -L /etc/resolv.conf /mnt/debian/etc </pre>
<p>Modification des fichiers :</p>
<ul>
<li><code>/mnt/debian/etc/hostname</code>, contient le nom de l'ordinateur</li>
<li><code>/mnt/debian/etc/hosts</code></li>
<li><code>/mnt/debian/etc/network/interfaces</code>, pour être connecté automatiquement par <acronym title="Dynamic Host Configuration Protocol">DHCP</acronym>, on rajoute ces lignes :</li>
</ul>
<pre>[...]
auto eth0
iface eth0 inet dhcp </pre>
<h4>Le sources.list</h4>
<p>On peut rajouter des dépôts, voici le mien (en <em>testing</em>).</p>
<pre>deb http://ftp.fr.debian.org/debian testing main contrib non-free
deb http://security.debian.org/ testing/updates main contrib non-free
## multimedia
deb ftp://ftp.igh.cnrs.fr/pub/debian-multimedia testing main non-free
</pre>
<h4>"aptitude"</h4>
<p>J'ai modifié certaines caractéristiques de <code>aptitude</code>, j'ai donc créé le fichier, <code>/mnt/debian/etc/apt/apt.conf.d/00perso.conf</code>. Je me suis inspiré de cette <a href="http://algebraicthunk.net/~dburrows/projects/aptitude/doc/en/ch02s04s05.html">page</a>.</p>
<pre>Aptitude::Install-Recommends "false";
Aptitude::Keep-Suggests "false";
Aptitude::CmdLine::Show-Deps "true";
Aptitude::CmdLine::Show-Versions "true";
</pre>
<p><strong>Note :</strong> Les deux premières lignes n'ont pas l'air de bien fonctionné.</p>
<p>On va monter les autres points de montage indispensable.</p>
<pre># mount -t proc none /mnt/debian/proc
# mount -o bind /sys /mnt/debian/sys
# mount -o bind /dev /mnt/debian/dev
# mount -o bind /dev/pts /mnt/debian/dev/pts </pre>
<p>On peut désormais lancer la commande <code>chroot</code>.</p>
<h2>Dans le chroot</h2>
<pre># chroot /mnt/debian /bin/bash </pre>
<p>Nous sommes maintenant à la racine de notre futur système. On va terminer la configuration.</p>
<h3>Mise à jour</h3>
<p>Comme nous avons modifié le fichier <code>/etc/apt/sources.list</code>, il rafraîchir la base de données.</p>
<pre>chroot # aptitude update </pre>
<p>La mise à jour ne va pas s'effectuée, car il nous manque les clés du dépôt multimédia.</p>
<pre>chroot # aptitude search debian-multimedia
p debian-multimedia-keyring - GnuPG archive key of the debian-multimedia
chroot #
chroot # aptitude install install debian-multimedia-keyring
[...]
chroot # aptitude update </pre>
<h3>Paquets supplémentaires (facultatif)</h3>
<pre> chroot # aptitude install lvm2 less </pre>
<p><strong>lvm2</strong> est indispensable car le disque est partitionné en volume logique.</p>
<h3>Francisation</h3>
<pre>chroot # aptitude install unicode locales </pre>
<p>Pour l'instant les seules <em>locales</em> présentent sont :</p>
<pre>chroot # locale -a
C
C.UTF-8
POSIX
chroot # </pre>
<p>Nous allons rajouté le français.</p>
<pre>chroot # localedef -c -f UTF-8 -i fr_FR fr_FR.UTF-8
chroot # locale -a
C
C.UTF-8
fr_FR.utf8
POSIX
chroot # </pre>
<p>On va générer le fichier <code>/etc/default/locale</code></p>
<pre>chroot # update-locale LANG=fr_FR.utf8
chroot # source /etc/default/locale </pre>
<p>Les messages sont maintenant traduits en français.</p>
<pre>chroot # aptitude install console-setup console-data
[...]
chroot # dpkg-reconfigure console-setup (on choisit UTF8)
chroot # dpkg-reconfigure console-data (on prend les valeurs par défaut) </pre>
<p><strong>Note :</strong> Sur mon ordinateur, après un <em>reboot</em> les valeurs définies par <strong>console-data</strong> ne sont pas gardées en mémoire.</p>
<h3>Le fichier /etc/fstab</h3>
<p>On va utilisé les <acronym title="Universally Unique Identifier">UUID</acronym>.</p>
<pre>chroot # blkid > /etc/fstab </pre>
<p>Vous trouverez le mien en annexe. Si vous le parcourez, vous constaterez que le répertoire <code>/tmp</code> est monté en RAM.</p>
<p>On monte les autres partitions, que l'on a défini.</p>
<pre>chroot # mount -a </pre>
<h3>Installation du noyau</h3>
<pre>chroot # aptitude search linux-image </pre>
<p>Il faut en choisir un, dans la liste. On peut également rajouter <strong>firmware-linux-nonfree</strong>.</p>
<h3>Installation du chargeur d'amorçage</h3>
<p>Comme je suis sur une architecture <em>powerpc</em>, dite de nouvelle génération, il faut installer <strong>yaboot</strong>.</p>
<pre>chroot # aptitude install yaboot
[...]
chroot # yabootconfig </pre>
<p>On répond à la question, et on peut vérifier le contenu du fichier <code>/etc/yaboot.conf</code>.</p>
<h3><a href="http://wiki.debian.org/tasksel">Taskel</a></h3>
<pre>chroot # aptitude install tasksel
[...]
chroot # tasksel </pre>
<p>J'ai pour ma part sélectionné <strong>laptop</strong> (j'ai eut des erreurs avec <strong>desktop</strong>).</p>
<h3>Configuration de l'utilisateur root</h3>
<p>Je définis le <em>shell</em> et un mot de passe.</p>
<pre>chroot # chsh -s /bin/bash
chroot # passwd </pre>
<p>Voilà l'installation est terminée, on peut sortir du <strong>chroot</strong>, démonter les partitions et redémarrer l'ordinateur.</p>
<p>On peut finaliser notre installation, en ajoutant les paquets pour le serveur X, et un gestionnaire de bureau.</p>
<p>Un aperçu du bureau, une fois terminé.</p>
<p><a href="https://picasaweb.google.com/duchateau.olivier/SystMesDExploitationLibres#5719761390406897810"><img src="https://lh5.googleusercontent.com/-AnHdW3iHvBA/T2CsrhMykJI/AAAAAAAABjA/qfmp3oAEDTY/s128/debian-powerpc_kde.png" alt="KDE4 sous Debian" style="display:block; margin:0 auto;" title="KDE4 sous Debian" /></a></p>
<div class="footnotes"><h4>Note</h4>
<p>[<a href="http://avignu.tuxfamily.org/index.php?post/2012/03/14/Installation-d-une-Debian-%28powerpc%29-%C3%A0-partir-de-debootstrap#rev-pnote-50-1" id="pnote-50-1">1</a>] Sur les architectures <strong>x86</strong>, il faut penser à changer le type.</p></div>
Installer ALSA sous Frugalware PowerPCurn:md5:09e76533014b6601ee5b58faa39ab3572011-12-10T11:27:00+01:002011-12-10T20:02:06+01:00Olivier DuchateauLinuxALSAFrugalwareLinuxPPCSoundSystemd <p><img src="http://avignu.tuxfamily.org/news-custom/public/Frugalware.png" alt="Frugalware" style="display:block; margin:0 auto;" title="Logo de la distribution, Frugalware" /></p>
<p>Ce billet est la suite du <a href="http://avignu.tuxfamily.org/index.php?post/2011/11/30/Installation-%28manuelle%29-d-une-Frugalware-PowerPC">précédent</a>. Nous allons voir comment installer <a href="http://www.alsa-project.org/main/index.php/Main_Page"><acronym title="Advanced Linux Sound Architecture">ALSA</acronym></a>.</p>
<p>Il s'agit d'un iBook G4, (le modèle n'est pas récent).</p>
<pre>olivierd@brigand:~ $ cat /proc/device-tree/model && echo ""
PowerBook6,5
olivierd@brigand:~ $ </pre>
<h2>Installation du paquet</h2>
<pre>root@brigand:~ # pacman-g2 -S alsa-utils alsa-tools
[...]
root@brigand:~ # </pre>
<h2>Configuration</h2>
<p>Nous pouvons lancer la commande <code>alsaconf</code>, il va rechercher le <em>driver</em> correspondant à notre carte audio.</p>
<p>Dans mon cas il n'arrive pas à la détecter.</p>
<pre>root@brigand:~ # cat /proc/asound/cards
--- no soundcards ---
root@brigand:~ # </pre>
<p>Nous allons donc rechercher tous les modules installés sur la machine.</p>
<pre>root@brigand:~ # find / -type f -name '*.ko' -print
[...]
/lib/modules/3.1-fw2/kernel/sound/usb/snd-usb-audio.ko
/lib/modules/3.1-fw2/kernel/sound/usb/snd-usbmidi-lib.ko
/lib/modules/3.1-fw2/kernel/sound/ppc/snd-powermac.ko
/lib/modules/3.1-fw2/kernel/sound/drivers/snd-dummy.ko
/lib/modules/3.1-fw2/kernel/sound/aoa/codecs/snd-aoa-codec-toonie.ko
/lib/modules/3.1-fw2/kernel/sound/aoa/codecs/snd-aoa-codec-tas.ko
/lib/modules/3.1-fw2/kernel/sound/aoa/codecs/snd-aoa-codec-onyx.ko
/lib/modules/3.1-fw2/kernel/sound/aoa/fabrics/snd-aoa-fabric-layout.ko
/lib/modules/3.1-fw2/kernel/sound/aoa/soundbus/i2sbus/snd-aoa-i2sbus.ko
/lib/modules/3.1-fw2/kernel/sound/aoa/soundbus/snd-aoa-soundbus.ko
/lib/modules/3.1-fw2/kernel/sound/aoa/core/snd-aoa.ko
/lib/modules/3.1-fw2/kernel/sound/core/seq/snd-seq-device.ko
/lib/modules/3.1-fw2/kernel/sound/core/seq/snd-seq.ko
/lib/modules/3.1-fw2/kernel/sound/core/seq/snd-seq-midi-event.ko
/lib/modules/3.1-fw2/kernel/sound/core/seq/oss/snd-seq-oss.ko
/lib/modules/3.1-fw2/kernel/sound/core/seq/snd-seq-dummy.ko
/lib/modules/3.1-fw2/kernel/sound/core/seq/snd-seq-midi.ko
/lib/modules/3.1-fw2/kernel/sound/core/snd-hwdep.ko
/lib/modules/3.1-fw2/kernel/sound/core/oss/snd-mixer-oss.ko
/lib/modules/3.1-fw2/kernel/sound/core/oss/snd-pcm-oss.ko
/lib/modules/3.1-fw2/kernel/sound/core/snd-rawmidi.ko
/lib/modules/3.1-fw2/kernel/sound/core/snd-pcm.ko
/lib/modules/3.1-fw2/kernel/sound/core/snd-page-alloc.ko
/lib/modules/3.1-fw2/kernel/sound/core/snd.ko
/lib/modules/3.1-fw2/kernel/sound/core/snd-timer.ko
/lib/modules/3.1-fw2/kernel/sound/soundcore.ko</pre>
<p>Il faut donc rechercher le bon module dans le dossier <code>/lib/modules/3.1-fw2/kernel/sound/</code>. Un seul va retenir mon intention, <strong>snd-powermac.ko</strong>. Je vais le charger.</p>
<pre>root@brigand:~ # modprobe snd_powermac
root@brigand:~ # cat /proc/asound/cards
0 [Snapper ]: PMac Snapper - PowerMac Snapper
PowerMac Snapper (Dev 44) Sub-frame 0
root@brigand:~ # </pre>
<p>C'est effectivement le bon <sup>[<a href="http://avignu.tuxfamily.org/index.php?post/2011/12/10/Installer-ALSA-sous-Frugalware-PowerPC#pnote-43-1" id="rev-pnote-43-1">1</a>]</sup>.</p>
<p>Maintenant, nous pouvons régler le volume avec <code>alsamixer</code>, et sauvegarder cette configuration avec la commande suivante :</p>
<pre>root@brigand:~ # alsactl store</pre>
<h2>ALSA et Systemd ?</h2>
<p>Depuis que Frugalware utilise <a href="http://www.freedesktop.org/wiki/Software/systemd">Systemd</a>, les modules additionnels qui doivent être chargés au démarrage, doivent être « listés » dans le dossier <code>/etc/modules-load.d/</code>.</p>
<p>J'ai donc créé le fichier <code>sound.conf</code> :</p>
<pre># Load snd-powermac.ko at boot
snd-powermac
</pre>
<div class="footnotes"><h4>Note</h4>
<p>[<a href="http://avignu.tuxfamily.org/index.php?post/2011/12/10/Installer-ALSA-sous-Frugalware-PowerPC#rev-pnote-43-1" id="pnote-43-1">1</a>] Je vous recommande de lire ces pages <a href="http://www.gentoo.org/doc/fr/gentoo-ppc-faq.xml#alsa">Gentoo PPC Faq</a>, et <a href="http://alsa.opensrc.org/Aoa">Apple Onboard Audio</a>.</p></div>
Installation (manuelle) d'une Frugalware PowerPCurn:md5:185a9beba53750f4707e612848acd79f2011-11-30T20:25:00+01:002011-12-11T22:11:57+01:00Olivier DuchateauLinuxFrugalwareHowtoLinuxPPCSystemd<p><img src="http://avignu.tuxfamily.org/news-custom/public/Frugalware.png" alt="Frugalware" style="display:block; margin:0 auto;" title="Logo de la distribution Frugalware" /></p>
<p>Dans ce billet, je vais relater les différentes étapes pour installer la <a href="http://frugalware.org/">Frugalware</a> (l'installateur est bugué, <em>segfault</em> aléatoirement) sur un ordinateur dont le processeur, est de type PowerPC. Il s'agit d'un <strong>iBook G4</strong>.</p>
<pre>olivierd@brigand:~ $ cat /proc/cpuinfo
processor : 0
cpu : 7447A, altivec supported
clock : 1333.333000MHz
revision : 1.2 (pvr 8003 0102)
bogomips : 73.72
timebase : 18432000
platform : PowerMac
model : PowerBook6,5
machine : PowerBook6,5
motherboard : PowerBook6,5 MacRISC3 Power Macintosh
detected as : 287 (iBook G4)
pmac flags : 0000001b
L2 cache : 512K unified
pmac-generation : NewWorld
Memory : 1280 MB
olivierd@brigand:~ $ </pre> <h2>Démarrer le « live CD »</h2>
<p>Pour <em>booter</em> à partir du CD, il faut activer l'<a href="http://fr.wikipedia.org/wiki/Open_Firmware">Open Firmware</a>. On y accède en appuyant silmutanément sur les touches <strong>Pomme</strong> + <strong>Alt</strong> + <strong>O</strong> + <strong>F</strong>.</p>
<p>Ensuite dans le prompt on tape la commande ci-dessous</p>
<pre>boot cd:,\\yaboot</pre>
<p><strong>Note :</strong> Le clavier est en <strong>QWERTY</strong>.</p>
<h2>Les options du « live CD »</h2>
<p>Lorsque le CD démarre, on arrive au prompt du gestionnaire de démarrage, <a href="http://en.wikipedia.org/wiki/Yaboot">Yaboot</a>.</p>
<p>Pour connaître les différentes options possibles, il suffit d'utiliser la touche <strong>Tab</strong>.</p>
<h2>L'installation</h2>
<p>Après le chargement du CD, on arrive à l'installateur en <em>ncurses</em>. Il faut immédiatement basculer dans une autre console (<code>tty</code>), combinaison des touches <strong>Ctrl</strong> + <strong>Alt</strong> + <strong>F2</strong>.</p>
<p>1. On change le <em>layout</em> du clavier :</p>
<pre>loadkeys azerty</pre>
<p>Il faut savoir que les claviers AZERTY des Macintosh sont très mal reconnus par Linux.</p>
<p>2. On vérifie que la date est correcte, le cas échéant, il faut la modifier</p>
<p>3. Partitionnement, avec l'utilitaire <code>mac-fdisk</code></p>
<p>Je ne fais que trois partitions (<code>/</code>, <code>swap</code>, et <code>/home</code>), je reviendrais plus tard, pourquoi on ne fait pas de partition <code>/usr</code> séparée.</p>
<p>On ré-initialise la table des partitions avec la touche <strong>i</strong>.</p>
<p>Puis la partition de <code>bootstrap</code> (c'est propre aux PowerPC) avec l'option <strong>b</strong>.</p>
<p>Les autres partitions se créent à l'aide de la touche <strong>c</strong>.</p>
<pre>
/dev/hda1— Apple_partition_map (table des partitions)
/dev/hda2 — Apple_bootstrap (crée avec l'option b)
/dev/hda3 — /
/dev/hda4 — swap
/dev/hda5 — /home</pre>
<p>4. Création du système de fichiers, dans mon cas <a href="http://fr.wikipedia.org/wiki/Ext4">ext4</a>.</p>
<pre>mkswap -L swap /dev/hda4
swapon /dev/hda4
mkfs.ext4 -L root /dev/hda3
mkfs.ext4 -L home /dev/hda5</pre>
<p>L'option <code>-L</code> détermine le <strong>label</strong> (le nom) de la partition.</p>
<p>L'outil <code>tune2fs</code> n'est pas disponible de base dans le live CD. Mais dans le <code>chroot</code>, on peut l'utiliser.</p>
<p>5. On « monte » notre futur système dans <code>/mnt</code></p>
<pre>mount -t ext4 -o rw /dev/hda3 /mnt
mkdir /mnt/proc
mount -t proc none /mnt/proc
mkdir /mnt/sys
mount -o bind /sys /mnt/sys
mkdir /mnt/dev
mount -o bind /dev /mnt/dev</pre>
<p>La partition <code>/home</code> à ce stade n'est pas indispensable.</p>
<p>6. Établissement de la connexion réseau (DHCP)</p>
<pre>dhcpcd eth0</pre>
<p>7. Installation des éléments de base</p>
<p><del>Nous allons partir directement sur une Frugalware <em>testing</em>. La version <em>current</em> est incomplète sur ce type d'architecture, et la version <em>stable</em> est « un peu obsolète ».</del> <ins>On opte pour la version <em>stable</em>, car les autres versions sont incomplètes <strong>pour ce processeur</strong>.</ins></p>
<p><del>On va modifier légèrement le fichier <code>/etc/pacman-g2.conf</code> :</del></p>
<p><ins>On ne touche pas au fichier <code>/etc/pacman-g2.conf</code>.</ins></p>
<p>Pour mettre à jour la base de données des paquets.</p>
<pre>pacman-g2 -Sy</pre>
<p>Nous allons pouvoir installer quelques paquets :</p>
<pre>pacman-g2 -Sy core base iputils wget -r /mnt</pre>
<p>Il s'agit du strict minimum.</p>
<p>On va pouvoir passer à la <em>post-installation</em>.</p>
<p>8. On se « connecte » sur le nouveau système</p>
<pre>chroot /mnt /bin/bash
cd /root</pre>
<p>8.1. On commence par créer les fichiers <code>.bashrc</code> et <code>.bash_profile</code>. On peut copier ces fichiers dans le dossier <code>/etc/skel</code> pour un futur utilisateur.</p>
<p>8.2. Configuration de l'éditeur, <code>elvis</code>, il s'agit d'un clone de <code>Vi</code>, bien connu des utilsateurs de <a href="http://www.slackware.com/">Slackware</a>.</p>
<pre>" .exrc
"
set ruler
set verbose showmode
set showmatch
set tabstop=4
set shiftwidth=4</pre>
<pre>" .elvisrc
"
:source ~/.exrc</pre>
<p>8.3. On définit le nom de l'ordinateur, il faut créer / modifier trois fichiers :</p>
<ul>
<li><code>/etc/hosts</code></li>
</ul>
<pre># For loopbacking.
127.0.0.1 localhost
127.0.0.1 brigand.errements.net brigand
[...]
</pre>
<ul>
<li><code>/etc/hostname</code></li>
</ul>
<pre>brigand</pre>
<ul>
<li><code>/etc/HOSTNAME</code></li>
</ul>
<pre>brigand.errements.net</pre>
<p>La commande <code>netconfig</code> aboutie au même résultat.</p>
<p>8.4. Définition des locales</p>
<p>Nous voulons avoir un système (en console, sans interface graphique) en français.</p>
<pre>locale -a | grep fr_FR
fr_FR
fr_FR@euro
fr_FR.iso88591
fr_FR.iso885915
fr_FR.iso885915@euro
fr_FR.utf8</pre>
<p>Pour cet ordinateur, j'ai choisi <strong>fr_FR.utf8</strong>.</p>
<ul>
<li><code>/etc/locale.conf</code></li>
</ul>
<pre>LANG=fr_FR.utf8</pre>
<ul>
<li><code>/etc/profile.d/lang.sh</code> (il n'existe pas)</li>
</ul>
<pre>#! /bin/sh
export LANG=fr_FR.utf8
export LC_ALL=$LANG
export CHARSET=utf-8</pre>
<p>Il ne faut pas oublier de le rendre exécutable :</p>
<pre>chmod a+x /etc/profile.d/lang.sh</pre>
<ul>
<li><code>/etc/profile.d/less.sh</code> (on le modifie)</li>
</ul>
<pre>#!/bin/sh
# /etc/profile.d/less.sh
# Makes less(1) display utf-8 chars correctly by default.
export LESSCHARSET="utf-8"</pre>
<p>8.5. Création du fichier <code>/etc/fstab</code></p>
<p>A titre indicatif voici le mien :</p>
<pre># /dev/hda4: LABEL="swap" UUID="0dd97fc3-0627-4552-98f0-a86f67363b46"
/dev/hda4 swap swap defaults 0 0
# /dev/hda3: LABEL="root" UUID="51ee4d1a-a692-4b8a-9333-72fa2be1bab3"
/dev/hda3 / ext4 defaults 1 1
# /dev/hda5: LABEL="home" UUID="5045e22b-5485-4b28-82ae-f0e949b5f76a"
/dev/hda5 /home ext4 defaults 1 1
tmpfs /tmp tmpfs defaults,noatime,nodev,noexec,size=512M 0 0
proc /proc proc defaults 0 0
usbfs /proc/bus/usb usbfs devgid=23,devmode=664 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0</pre>
<p>Pour obtenir les <acronym title="Universal Unique IDentifier">UUID</acronym>, on doit utiliser la commande <code>blkid</code>.</p>
<p>En parcourant le fichier, on constate que le dossier <code>/tmp</code> sera monter en RAM.</p>
<p>8.6. Installation du <em>boot loader</em></p>
<p>On lance la commande <code>yabootconfig</code>. Si vous comptez modifier le contenu du fichier <code>/etc/yaboot.conf</code>, il faudra relancer la commande <code>ybin -v</code>.</p>
<p>8.7. Conserver les paramètres de la disposition du clavier au prochain redémarrage.</p>
<ul>
<li><code>/etc/sysconfig/keymap</code></li>
</ul>
<pre>keymap = azerty</pre>
<ul>
<li><code>/etc/vconsole.conf</code></li>
</ul>
<pre>KEYMAP=azerty
FONT=lat9w-16</pre>
<p>8.8. Choix du fuseau horaire.</p>
<p>Deux cas s'offrent à nous :</p>
<ul>
<li><acronym title="Temps universel coordonné">UTC</acronym></li>
</ul>
<pre>ln -sf /usr/share/zoneinfo/UTC /etc/localtime</pre>
<ul>
<li>Définir une <em>timezone</em> (par exemple Paris)</li>
</ul>
<pre>ln -sf /usr/share/zoneinfo/Europe/Paris /etc/localtime</pre>
<p>8.9. Le compte <strong>root</strong></p>
<p>A ce niveau <strong>root</strong> possède comme <em>shell</em> par défaut <code>/bin/sh</code> (il s'agit d'un lien symbolique vers <code>/bin/bash</code>). Nous allons le changer.</p>
<pre>chsh -s /bin/bash</pre>
<p>Son compte ne possède pas de mot de passe, nous allons lui en attribuer un, <code>passwd</code>. Pour paramétrer plus finement le mot de passe, vous pouvez modifier le fichier <code>/etc/login.defs</code> (généralement je change la valeur du paramètre <strong>ENCRYPT_METHOD</strong>).</p>
<p>9. Les services</p>
<p>A partir de la version 1.5, Frugalware utilise comme système d'<code>init</code>, <a href="http://freedesktop.org/wiki/Software/systemd">systemd</a>. Il fonctionne que si la bibliothèque <strong>libdbus</strong> est accessible, or si elle est présente sur une partition séparée (physiquement, généralement <code>/usr</code>) le système ne peut pas <a href="http://www.freedesktop.org/wiki/Software/systemd/separate-usr-is-broken">démarrer</a> (<em>kernel panic</em>).</p>
<p>Comme notre système ne possède pas encore d'interface graphique, nous allons changer la « cible » (ou <em><a href="http://www.freedesktop.org/wiki/Software/systemd/TipsAndTrick#Changing_the_Default_Boot_Target">run level</a></em>).</p>
<pre>rm /etc/systemd/system/default.target
ln -sf /lib/systemd/system/mult-user.target /etc/systemd/system/default.target</pre>
<p>Nous pouvons redémarrer notre ordinateur, et continuer à ajouter d'autres paquets, tels que xorg, alsa, etc.</p>