BSD sur USB

Un article de Projet de documentation fug-fr .

Jump to: navigation, search

Cette page décrit une méthode pour installer facilement un BSD (entendez par là FreeBSD, NetBSD ou OpenBSD) sur une clé USB. Cette méthode vise une installation minimale et la plus simple possible ; elle s'adresse à tous au sens où il n'est pas nécessaire d'utiliser l'un de ces BSD pour l'installer sur une clé. Elle peut intéresser les habitués, qui apprécieront d'avoir leur OS préféré dans la poche, tout comme les débutants qui pourront trouver là une première approche sans risque pour leur disque dur. C'est d'ailleurs à leur attention que cette page contient des remarques et précisions que certains trouveront élémentaires mais qui pourront leur être utiles.

La méthode a été testée sur une clé publicitaire de 256 Mo avec les releases suivantes: FreeBSD 6.2 et 7.0 ; NetBSD 3.1 ; OpenBSD 4.1 et 4.2. Elle devrait pouvoir convenir pour des releases ultérieures (et quelques antérieures). Si vous ne connaissez rien ou presque aux BSD, il vous est conseillé de lire au minimum la totalité de cette page avant d'essayer de passer à la pratique.

Sommaire

[modifier] Conditions

Pour créer votre clé USB vous aurez besoin du matériel suivant:

  • le premier CD d'installation d'un BSD
  • une clé USB d'au moins 256 Mo (pour faire simple)
  • un PC capable de démarrer sur son lecteur de CD

Pour ce qui est du CD d'installation, le plus simple est de vous rendre sur le site du BSD qui vous intéresse et soit de l'y acheter, soit d'en télécharger l'image iso puis de la graver.

[modifier] Créer une iso OpenBSD

Avant la release 4.2, OpenBSD ne proposait pas d'image iso en téléchargement. Si vous êtes intéressés par une version antérieure, il est assez facile sous GNU/Linux ou BSD de créer une telle iso puis de la graver. Voici juste un petit rappel d'une méthode possible (ici pour la release 4.1).

$ cd
$ mkdir -p OpenBSD/4.1/i386
$ cd OpenBSD/4.1/i386
$ wget ftp://ftp.arcane-networks.fr/pub/OpenBSD/4.1/i386/*
$ cd
$ mkisofs -r -b 4.1/i386/cdrom41.fs -c boot.catalog -o OpenBSD-4.1.iso OpenBSD

Si nécessaire, vous trouverez des documents plus explicites sur internet mais, depuis la version 4.2, ce qui précède est devenu inutile. Téléchargez simplement l'image install42.iso puis gravez-la. Bien que minimale, cette image suffit amplement pour notre propos.

[modifier] Création de la clé

Notons pour commencer que nous prendrons ici le cas fictif d'un PC équipé de deux disques durs IDE sur la première nappe, deux lecteurs ou graveurs de CD IDE sur la seconde et donc d'une clé USB. Ceci devrait convenir pour de nombreux cas et a son importance dans les différents noms de périphériques que nous utiliserons ci-après. Une fois la clé dans un port, le CD dans un lecteur et ce PC redémarré sur ce lecteur, le programme d'installation du BSD devrait se lancer.

Bien que les programmes d'installations des BSD diffèrent assez sensiblement dans l'apparence, la procédure que nous suivrons restera toujours la même dans l'esprit et dans les grandes étapes de son déroulement même s'il est possible que certaines étapes ne soient pas dans le même ordre selon le BSD. Ainsi par exemple pour NetBSD le choix de ce qui va être installé se fait avant le partitionnement c'est l'inverse pour FreeBSD et OpenBSD.

[modifier] Démarrage et choix du clavier

Chacun des installateurs vous propose à son démarrage de choisir votre type de clavier. Ne négligez pas cette étape, une confusion entre les touches "A" et "Q" par exemple serait bien ennuyeuse dans des programmes comme fdisk ou disklabel. Notez au passage que NetBSD vous propose également des messages d'installation en français... à vous de voir ce que vous préférez. Ceci fait:

  • Pour FreeBSD au menu principal de sysinstall, choisissez "Standard Begin a standard installation (recommanded)".
  • Pour NetBSD choisissez "Install NetBSD to hard disk".
  • Pour OpenBSD à la question "(I)nstall, (U)pgrade or (S)hell?" répondez "i".

[modifier] Le choix de la cible d'installation

Ici bien sûr le plus important est de ne pas se tromper et de bien choisir la clé USB... mais même pour un débutant les risques d'erreur semblent très faibles. Sachez pour mieux comprendre que les BSD reconnaissent votre clé USB comme un disque dur SCSI.

  • Pour FreeBSD vos deux disques durs s'appellent: ad0 et ad1 ; ne les sélectionnez donc pas! Votre clé USB s'appelle da0 ; c'est cette entrée qu'il vous faut sélectionner.
  • Pour NetBSD et OpenBSD vos deux disques durs s'appellent wd0 et wd1 ; ne les sélectionnez donc pas! Votre clé USB s'appelle sd0 ; c'est cette entrée qu'il vous faut sélectionner.

[modifier] Le "partitionnement" (fdisk, slice)

Le programme utilisé pour cette opération s'appelle fdisk. Nous ne créons qu'une seule partition occupant la totalité de la clé et la rendons démarrable. Celle-ci correspond à ce qui est habituellement appelé une partition primaire (mais est appelé slice sous BSD).

  • Pour FreeBSD dans fdisk entrez "a" pour signifier que vous voulez utiliser tout le disque ; puis entrez "s" pour dire que cette partition doit être démarrable et enfin "q" pour quitter. Votre clé USB est donc maintenant partitionnée : da0s1
  • Pour NetBSD et OpenBSD vous n'aurez pas besoin de passer par fdisk, sélectionnez ou répondez simplement "use the entire disk" ou "yes" quand l'installateur vous demandera ce qu'il doit faire (use all of sd0 ?) et il s'occupera de tout pour vous.

[modifier] L'installation du gestionnaire de démarrage

Normalement compte tenu de notre configuration ce gestionnaire ne devrait pas être nécessaire. Cependant il ne coûte rien de l'installer et il peut même être utile, donc installons-le.

  • Pour FreeBSD et NetBSD, quand le programme vous demande si vous souhaitez ou non installer un "boot manager" ou un "boot selector" sélectionnez ou répondez "yes". Pour FreeBSD, sélectionnez de plus votre clé (da0) comme cible pour cette installation.
  • Pour OpenBSD si vous avez procédé comme dit précédemment pour le partitionnement (use all of sd0), il a déjà installé ce gestionnaire de démarrage et ne vous demande donc rien.

[modifier] Le "sous partitionnement" (disklabel, partition)

Nous avons créé précédemment une partition primaire (slice au sens BSD), nous allons maintenant la sous partitionner (la partitionner au sens BSD) et le programme utilisé pour cela s'appelle disklabel. Nous allons ici faire au minimum, et ne créer qu'une seule (sous) partition pour la racine (/).

  • Pour FreeBSD dans disklabel entrez "c" pour indiquer que vous souhaitez créer une partition. Validez les réponses proposées et choisissez "/" comme point de montage. Entrez "q" pour dire que vous avez fini ; vous avez maintenant la partition: da0s1a. FreeBSD vous fera remarquer que vous n'avez pas de partition swap (partition d'échange), continuez tout de même.
  • Pour NetBSD dans le menu choisissez "Set sizes of NetBSD partitions". Une partition racine (/) et une swap auront déjà été créées. Supprimez la partition de swap, l'espace libéré est alors attribué à la racine. Vous pouvez donc quitter disklabel (Partition sizes ok), vous avez créé la partition sd0a.
  • Pour OpenBSD dans disklabel entrez "a a" pour indiquer que vous voulez créer la partition sd0a puis validez les réponses proposées et choisissez "/" (racine) comme point de montage (mount point). Entrez ensuite "q" pour quitter en sauvegardant ; OpenBSD vous demande alors de confirmer la partition créée, validez puis entrez "done" pour en terminer si nécessaire.

[modifier] L'installation du minimum vital

Notre clé USB théorique est de taille réduite (256 Mo) aussi n'allons nous installer que le minimum accompagné tout de même des célèbres pages man. Même avec une clé de taille supérieure installer le minimum semble un bon choix, nous ne savons pas forcément ce que nous allons faire de cette clé et pourrons toujours compléter par la suite. La source d'installation (installation media) est notre lecteur de CD.

  • Pour FreeBSD votre lecteur de CD est acd0 (ou acd1). Après l'avoir sélectionné (Choose Installation Media), choisissez dans le menu "Choose distributions" l'entrée "Minimal The smallest configuration possible". Pour ajouter les pages man vous devrez plus tard choisir l'entrée "Configure Do post-install configuration of FreeBSD" du menu principal de sysinstall.
  • Pour NetBSD votre lecteur de CD est cd0 (ou cd1). Choisissez "Custom installation" puis Kernel (GENERIC) ; Base ; System (/etc) et Online Manual Pages. En réalité, pour faire ce choix désactivez simplement tout ce qui n'est pas ci-dessus. Vous aurez alors peut-être un message vous signalant que l'installation standard (sans xorg) requiert plus d'espace (disons 280 Mo, je ne sais plus) qu'il n'y en a de disponible (disons 240 Mo, idem). Continuez votre chemin sans vous soucier, vous ne faites pas une installation standard mais minimale qui tourne autour des 110 Mo.
  • Pour OpenBSD votre lecteur de CD est aussi cd0 (ou cd1). Choisissez d'installer bsd (le noyau) ; base?? ; etc?? et man?? (les ?? sont le numéro de release comme par exemple 41 pour la release 4.1).

[modifier] Configurations diverses

En plus de ce que nous venons de passer en revue, le programme d'installation pose un certain nombre de questions. Celles-ci sont assez variables suivant le BSD, d'une façon générale ne configurez ni n'ajoutez rien... sauf si vous ne pouvez faire autrement. Ainsi peut-être devrez-vous choisir un nom de machine (hostname) ou sélectionner un fuseau horaire (time zone) ; ce sont là des points de détails pour notre propos. Il sera toujours temps lors de l'utilisation de la clé de la configurer comme vous le souhaitez et comme vous en avez réellement besoin, d'ajouter ce qui vous est alors vraiment nécessaire. Lorsque vous ne savez vraiment pas quoi répondre à une question, choisissez simplement la réponse par défaut.

Il vous faudra cependant répondre au moins à une question: le mot de passe de l'administrateur (root password). Sans entrer dans de longues justifications, il semble ici préférable de choisir un mot de passe assez simple et différent de l'éventuel mot de passe root que vous avez déjà pour votre propre installation. Si vous ne savez que faire, par exemple pour FreeBSD, vous pouvez vous inspirer de quelque chose du genre "RootFbsd" ou "r00tfb5d" en l'adaptant comme vous le souhaitez et selon le BSD installé.

[modifier] Ouf c'est bon

Pas de commentaire.

  • Pour FreeBSD: "Congratulations! You now have FreeBSD installed on your system."
  • Pour NetBSD: "The installation of NetBSD is now complete."
  • Pour OpenBSD: "CONGRATULATIONS! Your OpenBSD install has been successfully completed!"

[modifier] Notes complémentaires

Arrivés ici l'installateur nous a normalement déjà dit que nous avons terminé notre installation avec succès et qu'il ne nous reste plus qu'à redémarrer notre PC. Voici cependant encore quelques points importants.

[modifier] La dernière chance

Un programme d'installation, comme tout programme, peut être interrompu de façon plus ou moins autoritaire. Si vous avez l'impression d'avoir fait une grosse bêtise (comme sélectionner un de vos disques durs au lieu ou en plus de votre clé USB) et ne savez plus quoi faire pour arrêter, n'en rajoutez pas une seconde (pour le moins potentiellement) en essayant d'interrompre l'installation de force. L'installateur vous demandera toujours une confirmation avant le moment crucial... répondez alors "no".

  • Pour FreeBSD
User Confirmation Requested
 Last Chance! Are you SURE you want to continue the installation? 
 If you're running this on a disk with data you wish to save then
 WE STRONGLY ENCOURAGE YOU TO MAKE PROPER BACKUPS before proceeding! 
 We can take no responsibility for lost disk contents!  
                              Yes    [ No ]
  • Pour NetBSD
Ok, we are now ready to install NetBSD on your hard disk (sd0).
Nothing has been written yet.
This is your last chance to quit this process before anything gets changed.
Shall we continue ?
                     yes or no ?
                        [ No ]
                          Yes
  • Pour OpenBSD
The next step *DESTROYS* all existing data on these partitions!
  Are you really sure that you're ready to proceed? [no]

[modifier] Le cas OpenBSD

Avertissement: ce qui est écrit dans ce paragraphe n'est pas faux... mais semble finalement sans rapport avec le bon fonctionnement (ou le dysfonctionnement) de la clé. Vous pouvez donc normalement ne pas tenir compte de ces remarques concernant OpenBSD ; je les laisse cependant à ce jour au cas où....

En fin d'installation, avant de redémarrer votre PC, vérifiez le partitionnement de votre clé car il est possible que celui-ci ne soit pas conforme à ce que nous souhaitons. Il est en effet possible qu'OpenBSD se soit installé sur la "quatrième" partition primaire (les trois premières n'existant pas par ailleurs). Pour ce faire, profitez de l'invite (prompt) qui vous est offerte pour vérifier:

# fdisk sd0
...
         Starting       Ending       LBA Info:
 #: id    C   H  S -    C   H  S [       start:      size   ]
------------------------------------------------------------------------
 0: 00    0   0  0 -    0   0  0 [           0:           0 ] unused
 1: 00    0   0  0 -    0   0  0 [           0:           0 ] unused
 2: 00    0   0  0 -    0   0  0 [           0:           0 ] unused
*3: A6    0   1  1 -  246  63 32 [          32:      505824 ] OpenBSD

Dans ce cas votre clé ne fonctionnera pas et vous devez échanger (swap) les partitions 0 et 3. Ceci se fait très facilement.

# fdisk -e sd0
fdisk: 1> swap 3
Swap with what partition? [0 - 3]: [-1] 0
fdisk:*1> quit

Voilà vous devriez dès lors avoir ceci:

# fdisk sd0
...
         Starting       Ending       LBA Info:
 #: id    C   H  S -    C   H  S [       start:      size   ]
------------------------------------------------------------------------
*0: A6    0   1  1 -  246  63 32 [          32:      505824 ] OpenBSD
 1: 00    0   0  0 -    0   0  0 [           0:           0 ] unused
 2: 00    0   0  0 -    0   0  0 [           0:           0 ] unused
 3: 00    0   0  0 -    0   0  0 [           0:           0 ] unused

[modifier] La sécurité

Juste un petit rappel à l'attention des plus étourdis. Une clé USB cela se met dans la poche comme un rien et c'est bien pratique mais peut-être qu'un jour votre clé USB ne sera pas dans votre poche... mais dans celle d'un autre. Peut-être la perdrez-vous tout simplement. Peut-être vous l'empruntera-t-on une fois quelques minutes, juste le temps d'en faire une copie et/ou de la formater à l'insu de votre plein gré. Donc soyez toujours prudent si vous placez sur celle-ci des documents importants, faites en des sauvegardes et n'hésitez pas à les crypter s'ils ont de plus un caractère confidentiel.

[modifier] Théorie et pratique

Vous trouverez dans la FAQ OpenBSD, en complément à cette page, quelques remarques intéressantes concernant par exemple la vitesse, l'écriture, la fiabilité : Mémoires Flash comme disque de démarrage. Mais si tout ce qui précède vous semble obscur peut-être est-ce parce que vous n'avez que peu de connaissance théorique et pratique de l'installation des BSD. Dans ce cas n'hésitez pas à consulter les manuels qui vous apporteront de nombreuses informations et explications complémentaires.

Ceci fait revenez à cet article qui devrait pouvoir dès lors vous servir de résumé et lancez-vous. Ce qui vous paraît ici compliqué vous paraîtra alors sans doute bien plus simple, bien plus simple que vous ne l'auriez pensé.

Et si cela ne fonctionne pas ? Et bien recommencez, éventuellement avec un autre BSD. Cela a bien fonctionné ? Alors les plus audacieux pourront se lancer dans cet exercice de style: sur une clé de 1 Go, créer 3 slices, installer FreeBSD sur la première, NetBSD sur la seconde et OpenBSD sur la troisième... Non, je n'ai pas de clé de 1 Go!