====== Installer en dualboot Debian et OpenBSD depuis un LiveUSB Debian ====== ===== Sources ===== * [[http://www.openbsd.org/]] * [[http://www.openbsd.org/faq/faq14.html]] * [[https://www.unix-experience.fr/2012/guide-dinstallation-openbsd/]] * [[http://mirrors.ircam.fr/pub/OpenBSD/snapshots/amd64/]] ===== Prérequis ===== * Avoir une clef USB sur laquelle a été copiée l’image iso d’un système Debian GNU/Linux 8 en mode Live (amd64) et personnalisé grâce à livebuild contenant notamment qemu. * Avoir copié l’image iso d’un snapshot (amd64) d’OpenBSD sur la deuxième partition de la clef. * Avoir une machine bien supportée par les systèmes alternatifs libres et open source et qui sait démarrer sur un port USB. Exemple : Lenovo ThinkPad X200s. **Schéma de partitionnement (de type MBR) :** partition n°1 (primaire) : racine / de Debian 20 Go ext4 partition n°2 (primaire) : swap 2 Go swap partition n°3 (primaire) : /home de Debian environ 256 Go ext3 partition n°4 (primaire) : OpenBSD environ 30 Go a6 ===== Étape n°1 : Le système Live USB ===== Nous lançons le système Live depuis la clef USB insérée dans un port USB. ===== Étape n°2 : Installation du système Debian en utilisant le logiciel « debian-installer-launcher » ===== * Nous effectuons une installation classique en veillant à bien formater en « ext3 » la partition n°3 pour permettre le partage à venir entre les deux systèmes. (En effet, OpenBSD sait monter en lecture/écriture des systèmes de fichiers formatés en ext3.) **NB :** Depuis le système OpenBSD : - La partition n°1 (contenant la « racine » du système Debian) sera accessible grâce au fichier à « /dev/sd0i ». - La partition n°3 (contenant le « home » du système Debian) sera accessible grâce au fichier « /dev/sd0k ». * Je n’ai pas cherché à accéder à la partition n°4 (partition de type a6 « OpenBSD ») depuis le système Debian car je n’en vois pas trop l’intérêt ! * Créer la partition n°4 sans l’utiliser. (Pas de point de montage.) ===== Étape n°3 : Installation d'OpenBSD ===== Après l’installation, « debian-installer-launcher » nous rend la main. Nous allons donc installer OpenBSD depuis le système Live via « qemu ». Nous ouvrons un console virtuelle « Xterm ». Après un $ sudo su - nous voilà le super-administrateur « root » du système Live ! Nous montons la deuxième partition de la clef USB sur laquelle a été copiée l'image iso du snapshot d'OpenBSD. # mount /dev/sdb2 /mnt/ Nous lançons l’installation classique d’OpenBSD via « qemu ». # qemu-system-x86_64 -k fr -m 512 -hda /dev/sda -cdrom /mnt/install60.iso -boot d -localtime Pour le passage de l’installation Use (W)hole disk or (E)dit the MBR? [whole] choisir « (E)dit » en écrivant « E » puis valider. En ce qui concerne « fdisk » : On édite la 4ème partition primaire pour y créer un système de fichier de type OpenBSD (« a6 »). fdisk:1> e 3 Pour le passage de l’installation Partition id ('0' to disable) [0 - FF]: [0] (? for help) écrire « a6 » et valider tout ce qui est proposé par défaut. (En effet, cette partition a été construite lors de l’installation sur le disque du système Debian GNU/Linux lors de l’étape n°2.) Enfin nous quittons « fdisk » en sauvegardant les changements. fdisk:*1> q **NB :** La partition amorçable est la partition n°1 (celle qui contient le système Debian). Par conséquent, nous n’avons pas effectué de manipulations concernant la partition d’amorçage. Par la suite, nous devrons tout de même faire apparaître le système « OpenBSD » dans l’invite du chargeur d’amorçage GRUB 2. En ce qui concerne « disklabel » : Les slice (comprendre partitions étendues à la sauce « OpenBSD ») suivants sont créés dans la partition n°4. Filesystem Size Used Avail Capacity Mounted on /dev/sd0a 1005M 108M 846M 11% / /dev/sd0o 7.9G 3.2M 7.5G 0% /home /dev/sd0d 1.8G 16.0K 1.7G 0% /tmp /dev/sd0f 1.9G 372M 1.4G 20% /usr /dev/sd0g 1005M 212M 742M 22% /usr/X11R6 /dev/sd0h 4.0G 2.3G 1.5G 61% /usr/local /dev/sd0m 2.0G 2.0K 1.9G 0% /usr/src /dev/sd0n 2.0G 2.0K 1.9G 0% /usr/ports /dev/sd0l 2.0G 2.0K 1.9G 0% /usr/obj /dev/sd0e 2.7G 16.1M 2.6G 1% /var Pour ce faire nous éditons le schéma automatique proposé par l’installateur d’OpenBSD et nous allons le modifier comme suit : > d l > d n > d m > a m offset: [???] Enter size: [???] 2G Rounding to nearest cylinder: ??? FS type: [4.2BSD] Enter mount point: [none] /usr/src > a n offset: [???] Enter size: [???] 2G Rounding to nearest cylinder: ??? FS type: [4.2BSD] Enter mount point: [none] /usr/ports > a l offset: [???] Enter size: [???] 2G Rounding to nearest cylinder: ??? FS type: [4.2BSD] Enter mount point: [none] /usr/obj > a o offset: [???] Enter size: [???] Rounding to nearest cylinder: ??? FS type: [4.2BSD] Enter mount point: [none] /home Nous quittons « disklabel ». > q Write new label?: [y] Enter'' Puis nous poursuivons avec l’installation classique. À la fin, nous arrêtons le système avec la commande « halt -p -q ». Un redémarrage du système nous est alors proposé. Nous validons. Puis nous fermons « sauvagement » la console virtuelle dans laquelle a été lancée la commande « qemu ». ===== Étape n°4 : Le chargeur d’amorçage GRUB 2 ===== Depuis le système Live, nous allons entrer dans le système Debian installé à l’étape n°2 via la commande « chroot ». Par conséquent, nous allons monter le nécessaire pour le bon fonctionnement du système chrooté. # mount /dev/sda1 /mnt # mount -t proc none /mnt/proc # mount -t sysfs none /mnt/sys # mount -o bind /dev /mnt/dev # mount -o bind /tmp/ /mnt/tmp Nous entrons dans la « cage ». # chroot /mnt Nous voilà dans le système Debian installé sur le disque à l’étape n°2. (chroot)# Nous allons éditer et modifier le fichier « /etc/grub.d/40_custom » ainsi (grâce à l’éditeur de texte « vi »). (chroot)# vi /etc/grub.d/40_custom [...] menuentry ''OpenBSD'' { set root=(hd0,4) chainloader +1 } Après avoir tapé un « wq ! » dans « vi », nous quittons l’édition de ce fichier en sauvegardant les modifications apportées. Nous ré-installons le chargeur d’amorçage GRUB 2 sur le secteur d’amorçage du disque. (chroot)# grub-install --recheck /dev/sda suivi d’un (chroot)# update-grub2 Nous quittons l’environnement « chrooté ». (chroot)# exit Nous voilà de retour dans le système Live. ===== Étape n°5 : Redémarrage ===== Nous démontons tout ce qui doit l’être puis nous redémarrons la machine. # umount /mnt/{proc,tmp,dev,sys} && umount /mnt && reboot Si tout s’est bien déroulé, le chargeur d’amorçage GRUB 2 nous propose le système Debian (système par défaut) et le système OpenBSD. ===== Étape n°6 : Étape facultative si la version d’OpenBSD est OpenBSD CURRENT… ou pas d’ailleurs ! ===== Après avoir bien configuré et mis à jour son système OpenBSD, nous pouvons amorcer le système Debian pour sauvegarder la partition numéro n°4 qui contient le système OpenBSD current (en plus de la mise en place de « altroot »). Nous ne sommes jamais assez prudents ! ;-) Nous ouvrons une session « root » sur le système Debian. Puis nous lançons les commandes suivantes : # cd /home && mkdir .save && chown -R root:root .save && chmod 700 && cd .save/ # dd if=/dev/sda4 of=obsd_6.0-current_sda4-01.img bs=100M && init 0 Terminé ! ;-) ---- {{tag>tutoriel dualboot}}