Voilà une recette de cuisine pour installer NetBSD sur un Raspberry Pi modèle B (v2, 512Mo), en Français.
Tout ceci est largement inspiré de ce post de la mailing list port-arm NetBSD et cet article sur le wiki de NetBSD.org mais illustré de quelques photos d'écrans, et poussé un peu plus loin qu'un simple boot, l'idée étant d'arriver à un système utilisable en mode texte (avec le "userland").
Tout ce déroulé suppose que vous utilisez votre RPI sans clavier/écran, donc simplement branché au réseau.
C'est la "méthode dure"... qui vous rappellera l'Informatique des années 80.
La "méthode douce" consiste à brancher un clavier/écran (via la sortie RCA, pour donner une seconde vie à votre téléviseur cathodique si branché à un adaptateur RCA-Péritel ou direct RCA, ou via la sortie HDMI sur votre écran LED 16/9ème 24 pouces...).
Tout ceci est largement inspiré de ce post de la mailing list port-arm NetBSD et cet article sur le wiki de NetBSD.org mais illustré de quelques photos d'écrans, et poussé un peu plus loin qu'un simple boot, l'idée étant d'arriver à un système utilisable en mode texte (avec le "userland").
Tout ce déroulé suppose que vous utilisez votre RPI sans clavier/écran, donc simplement branché au réseau.
C'est la "méthode dure"... qui vous rappellera l'Informatique des années 80.
La "méthode douce" consiste à brancher un clavier/écran (via la sortie RCA, pour donner une seconde vie à votre téléviseur cathodique si branché à un adaptateur RCA-Péritel ou direct RCA, ou via la sortie HDMI sur votre écran LED 16/9ème 24 pouces...).
- Pré-requis:
- Un accès internet,
- Un serveur DHCP (votre Livebox, Freebox ou autre le fait très bien),
- Un logiciel pour flasher l'image d'installation sur une carte mémoire SDCard (ex: USBWriter)
- Une image d'installation de NetBSD pour Raspberry (ex: allez sur http://nyftp.netbsd.org/pub/NetBSD-daily/HEAD/ puis choisissez le répertoire le plus récent, par exemple au moment de l'écriture de ce billet c'est 201305102100Z puis continuez pour aller dans evbarm/binary/gzimg/ pour télécharger le fichier rpi_inst.img.gz Soit au final un lien de téléchargement qui ressemble à ça : http://nyftp.netbsd.org/pub/NetBSD-daily/HEAD/201305102100Z/evbarm/binary/gzimg/rpi_inst.img.gz )
- Un client ssh pour se connecter en mode texte à NetBSD/Raspberry (ex: putty).
- Liste de matériel: Exemple ICI sur Amazon.fr
- 1 carte mère Raspberry Pi modèle B
- 1 carte mémoire SDCard (ou micro sd avec son adaptateur)
- 1 boitier pour un peu de sécurité vs les chocs électriques
- Flash de l'image d'installation sur la SDCard
- Dézipper rp_inst.img.gz (ex : avec winrar sous windows).
- Flasher rp_inst.img sur la SDCard (attention à ne pas confondre les noms de lecteurs ou d'unités où vous allez déposer l'image, visez bien la SDCard !)
- Boot sur l'image d'installation
- Connecter la SDCard sur le Raspberry
- Connecter le Raspberry au réseau, et éventuellement à un écran ou télé en HDMI si vous voulez voir ce qui se passe
- Allumer le Raspberry et retrouver l'adresse IP que votre serveur DHCP (box) lui a attribué
- Se connecter en ssh à cette adresse avec l'utilisateur "sysinst" mot de passe "netbsd"
Voilà, arrivé ici normalement vous êtes sur l'écran d’accueil de l'installeur NetBSD.
Vous avez fait ce qui diffère le plus d'une installation sur un PC ou serveur "classique", le reste devrait paraître assez facile.
- Etapes d'installation
- Voilà quelques copies d'écran intéressantes pendant la phase d'installation
La carte SDCard est le device "ld0", si comme moi vous avez en plus mis une clé USB (Kingston) vous verrez un autre device "sd0" mais ne le choisisez pas, le firmware du Raspberry amorse le système d'exploitation depuis la SDCard...
Installation type "b", en mode texte uniquement (choix personnel)
Géométrie: garder les valeurs par défaut
Etape intéressante: le partitionnement.
Ici un gros / un petit swap et un /tmp en mémoire.
En fait il faudrait se passer de la partition de swap, pour éviter de trop écrire et donc d'user la carte mémoire (chaque écriture endommage petit à petit les mémoires flash/ssd/usb etc... c'est comme ça :-(
Et /tmp sera de type mfs (Memory File System, donc prendra un peu de votre précieuse RAM pour y créer une partition éphémère).
Pour éviter de faire trop d'accès en écriture sur la carte mémoire, monter les volumes avec les options suivantes: noatime, nodevmtime (sur le /).
Notez qu'il faut laisser la partition /boot tel quel, au format msdos, qui est nécessaire pour que le firmware du Raspberry puisse ammorcer le système.
Il vous faudra indiquer où sont les paquets d'installation en cohérence avec la version que vous installez, soit dans cet exemple:
Après un petit moment (téléchargement, install, etc...), lorsque l'installeur est terminé vous rebootez et si tout s'est bien passé vous pouvez vous connecter au système:
- Etapes supplémentaires
Cette petite quantité de mémoire n'est pas forcément cruciale, tant NetBSD est resté économique face à une installation Linux classique aujourd'hui (là je regarde vers CentOS et consort, et je ne pense même pas, non, à Windows Serveur 2012 ;-). Mais, rappelez-vous que vous devez éviter à tout prix d'utiliser la partition de swap (cf. la SDCard).
Donc voilà :
echo "gpu_mem=16" >> /boot/config.txt
Le "Userland" : Commencer à télécharger les paquets qui vous sont utiles. La commande est "pkg_add
Je recommande "pkgin install wget nano free vim lynx irssi screen bash curl sudo" pour que vous retrouviez un environnement familier à la Linux. Après ça lancez /usr/pkg/bin/bash et vous comprendrez ;-)
Eviter de trop écrire sur la SDCard: Déplacer /var/log dans un mfs (tmpfs) donc en mémoire, ou comme moi pour aller au plus simple en attendant, arrêter quelques démons et tâches automatisées (cronées):
syslogd: echo "syslogd=NO" >> /etc/rc.conf
la mise à jour des manpages: echo "manpagedb=NO" >> /etc/rc.conf
la création des core dump : echo "savecore=NO" >> /etc/rc.conf
la création de fichier de récupération sous VI : echo "virecover=NO" >> /etc/rc.conf
Forcer la réparation (si nécessaire) du système de fichier au démarrage, pour améliorer la résilience du système, car dans la le cas où votre RPI est utilisé sans clavier/écran, il restera figé au démarrage dans l'attente de votre action manuelle pour réparer le système de fichier. Alors qu'en paramétrant dans rc.conf la variable fsck_flags comme ceci, vous répondez "yes" aux questions posées par l'fsck lancé au démarrage :
echo "fsck_flags="-P -p -y" >> /etc/rc.conf
Amusez vous bien, et ne restez pas bloqué à la première difficulté : NetBSD est un projet très bien documenté, un système très concis donc à la fois simple d'accès mais peu "assisté".
Les manpages remplaceront avantageusement les wizards et autres assistants, qui font tout et souvent n'importe quoi.
Aucun commentaire:
Enregistrer un commentaire