====== 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}}