Installation (manuelle) d'une Frugalware PowerPC
Par olivier le mercredi 30 novembre 2011, 20:25 - Linux - #
Dans ce billet, je vais relater les différentes étapes pour installer la Frugalware (l'installateur est bugué, segfault aléatoirement) sur un ordinateur dont le processeur, est de type PowerPC. Il s'agit d'un iBook G4.
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:~ $
Démarrer le « live CD »
Pour booter à partir du CD, il faut activer l'Open Firmware. On y accède en appuyant silmutanément sur les touches Pomme + Alt + O + F.
Ensuite dans le prompt on tape la commande ci-dessous
boot cd:,\\yaboot
Note : Le clavier est en QWERTY.
Les options du « live CD »
Lorsque le CD démarre, on arrive au prompt du gestionnaire de démarrage, Yaboot.
Pour connaître les différentes options possibles, il suffit d'utiliser la touche Tab.
L'installation
Après le chargement du CD, on arrive à l'installateur en ncurses. Il faut immédiatement basculer dans une autre console (tty
), combinaison des touches Ctrl + Alt + F2.
1. On change le layout du clavier :
loadkeys azerty
Il faut savoir que les claviers AZERTY des Macintosh sont très mal reconnus par Linux.
2. On vérifie que la date est correcte, le cas échéant, il faut la modifier
3. Partitionnement, avec l'utilitaire mac-fdisk
Je ne fais que trois partitions (/
, swap
, et /home
), je reviendrais plus tard, pourquoi on ne fait pas de partition /usr
séparée.
On ré-initialise la table des partitions avec la touche i.
Puis la partition de bootstrap
(c'est propre aux PowerPC) avec l'option b.
Les autres partitions se créent à l'aide de la touche c.
/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
4. Création du système de fichiers, dans mon cas ext4.
mkswap -L swap /dev/hda4 swapon /dev/hda4 mkfs.ext4 -L root /dev/hda3 mkfs.ext4 -L home /dev/hda5
L'option -L
détermine le label (le nom) de la partition.
L'outil tune2fs
n'est pas disponible de base dans le live CD. Mais dans le chroot
, on peut l'utiliser.
5. On « monte » notre futur système dans /mnt
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
La partition /home
à ce stade n'est pas indispensable.
6. Établissement de la connexion réseau (DHCP)
dhcpcd eth0
7. Installation des éléments de base
Nous allons partir directement sur une Frugalware testing. La version current est incomplète sur ce type d'architecture, et la version stable est « un peu obsolète ». On opte pour la version stable, car les autres versions sont incomplètes pour ce processeur.
On va modifier légèrement le fichier /etc/pacman-g2.conf
:
On ne touche pas au fichier /etc/pacman-g2.conf
.
Pour mettre à jour la base de données des paquets.
pacman-g2 -Sy
Nous allons pouvoir installer quelques paquets :
pacman-g2 -Sy core base iputils wget -r /mnt
Il s'agit du strict minimum.
On va pouvoir passer à la post-installation.
8. On se « connecte » sur le nouveau système
chroot /mnt /bin/bash cd /root
8.1. On commence par créer les fichiers .bashrc
et .bash_profile
. On peut copier ces fichiers dans le dossier /etc/skel
pour un futur utilisateur.
8.2. Configuration de l'éditeur, elvis
, il s'agit d'un clone de Vi
, bien connu des utilsateurs de Slackware.
" .exrc " set ruler set verbose showmode set showmatch set tabstop=4 set shiftwidth=4
" .elvisrc " :source ~/.exrc
8.3. On définit le nom de l'ordinateur, il faut créer / modifier trois fichiers :
/etc/hosts
# For loopbacking. 127.0.0.1 localhost 127.0.0.1 brigand.errements.net brigand [...]
/etc/hostname
brigand
/etc/HOSTNAME
brigand.errements.net
La commande netconfig
aboutie au même résultat.
8.4. Définition des locales
Nous voulons avoir un système (en console, sans interface graphique) en français.
locale -a | grep fr_FR fr_FR fr_FR@euro fr_FR.iso88591 fr_FR.iso885915 fr_FR.iso885915@euro fr_FR.utf8
Pour cet ordinateur, j'ai choisi fr_FR.utf8.
/etc/locale.conf
LANG=fr_FR.utf8
/etc/profile.d/lang.sh
(il n'existe pas)
#! /bin/sh export LANG=fr_FR.utf8 export LC_ALL=$LANG export CHARSET=utf-8
Il ne faut pas oublier de le rendre exécutable :
chmod a+x /etc/profile.d/lang.sh
/etc/profile.d/less.sh
(on le modifie)
#!/bin/sh # /etc/profile.d/less.sh # Makes less(1) display utf-8 chars correctly by default. export LESSCHARSET="utf-8"
8.5. Création du fichier /etc/fstab
A titre indicatif voici le mien :
# /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
Pour obtenir les UUID, on doit utiliser la commande blkid
.
En parcourant le fichier, on constate que le dossier /tmp
sera monter en RAM.
8.6. Installation du boot loader
On lance la commande yabootconfig
. Si vous comptez modifier le contenu du fichier /etc/yaboot.conf
, il faudra relancer la commande ybin -v
.
8.7. Conserver les paramètres de la disposition du clavier au prochain redémarrage.
/etc/sysconfig/keymap
keymap = azerty
/etc/vconsole.conf
KEYMAP=azerty FONT=lat9w-16
8.8. Choix du fuseau horaire.
Deux cas s'offrent à nous :
- UTC
ln -sf /usr/share/zoneinfo/UTC /etc/localtime
- Définir une timezone (par exemple Paris)
ln -sf /usr/share/zoneinfo/Europe/Paris /etc/localtime
8.9. Le compte root
A ce niveau root possède comme shell par défaut /bin/sh
(il s'agit d'un lien symbolique vers /bin/bash
). Nous allons le changer.
chsh -s /bin/bash
Son compte ne possède pas de mot de passe, nous allons lui en attribuer un, passwd
. Pour paramétrer plus finement le mot de passe, vous pouvez modifier le fichier /etc/login.defs
(généralement je change la valeur du paramètre ENCRYPT_METHOD).
9. Les services
A partir de la version 1.5, Frugalware utilise comme système d'init
, systemd. Il fonctionne que si la bibliothèque libdbus est accessible, or si elle est présente sur une partition séparée (physiquement, généralement /usr
) le système ne peut pas démarrer (kernel panic).
Comme notre système ne possède pas encore d'interface graphique, nous allons changer la « cible » (ou run level).
rm /etc/systemd/system/default.target ln -sf /lib/systemd/system/mult-user.target /etc/systemd/system/default.target
Nous pouvons redémarrer notre ordinateur, et continuer à ajouter d'autres paquets, tels que xorg, alsa, etc.