OpenBSD : Slackware guest @vmd

Slackware un invité de marque

Déployer une vm “Slackware” sur un hôte OpenBSD, quelle idée !

Objectif:

Slackware

Télécharger l’image usbboot.img

Les machines virtuelles hébergées par le Virtual Machine Daemon d’OpenBSD, sont accessibles uniquement en mode série, et en Secure SHell une fois l’installation finalisée. Il est donc nécessaire ici de modifier les options de démarrage de l’image usbboot.img :

Monter l’image :

doas vnconfig Downloads/usbboot.img
doas mount -t msdos /dev/vnd0c /mnt/tmp
doas vim /mnt/tmp/syslinux.cfg

Ajouter l’option console serie à l’image boot :

append initrd=initrd.img load_ramdisk=1 prompt_ramdisk=0 rw printk.time=0 \
    nomodeset SLACK_KERNEL=huge.s console=ttyS0,115200

Démonter l’image usb:

doas umount /mnt/tmp
doas vnconfig -u /dev/vnd0c

Démarrer la vm:

doas vmctl start -c -d Downloads/usbboot.img \
    -d /data/vmm/slack.qcow2 -i 1 -m 1G -n vswitch0 slack_vm

Suivre la procédure d'installation de slackware :

Gestion du démarrage

Identifier les UUIDs

root@slackware:/# blkid
/dev/vda2: UUID="232a3fb9-7d70-4001-9ce3-43c965d4e9c3" BLOCK_SIZE="4096" TYPE="ext2" PARTUUID="88c8ad10-02"
/dev/vda3: UUID="40652c15-b514-491d-a236-b9bbc909617f" BLOCK_SIZE="4096" TYPE="ext2" PARTUUID="88c8ad10-03"
/dev/vda: SEC_TYPE="msdos" LABEL_FATBOOT="USBSLACK" LABEL="USBSLACK" UUID="FD59-74E1" BLOCK_SIZE="512" TYPE="vfat"
/dev/vda1: UUID="24dd7ba6-cac6-4161-ae6e-1e0caa66cce1" TYPE="swap" PARTUUID="88c8ad10-01"

Monter dans la cage /mnt où s’est effectuée l’installation. /dev/vda étant le disk virtuel.

root@slackware:/# chroot /mnt

Modifier le fstab ainsi:

root@slackware:/# vim /etc/fstab
# /dev/vda1
UUID=24dd7ba6-cac6-4161-ae6e-1e0caa66cce1        swap             swap        defaults         0   0
# /dev/vda2
UUID=232a3fb9-7d70-4001-9ce3-43c965d4e9c3        /                ext2        defaults         1   1
#/dev/vda3
UUID=40652c15-b514-491d-a236-b9bbc909617f        /home            ext2        defaults         1   2
#/dev/cdrom      /mnt/cdrom       auto        noauto,owner,ro,comment=x-gvfs-show 0   0
#/dev/fd0         /mnt/floppy      auto        noauto,owner     0   0
devpts           /dev/pts         devpts      gid=5,mode=620   0   0
proc             /proc            proc        defaults         0   0
tmpfs            /dev/shm         tmpfs       nosuid,nodev,noexec 0   0

Modifier /etc/default/grub

vim /etc/default/grub
GRUB_TERMINAL="serial"
GRUB_SERIAL_COMMAND="serial --unit=0 --speed=115200"
GRUB_CMDLINE_LINUX="console=tty0 console=ttyS0,115200"

Installer GRUB

root@slackware:/# grub-install /dev/vdb
Installing for i386-pc platform.
Installation finished. No error reported.

Construire le bootloader grub2:

root@slackware:/# grub-mkconfig -o /boot/grub/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-huge-5.10.5
Found initrd image: /boot/initrd.gz
Found linux image: /boot/vmlinuz-huge
Found initrd image: /boot/initrd.gz
Found linux image: /boot/vmlinuz-generic-5.10.5
Found initrd image: /boot/initrd.gz
Found linux image: /boot/vmlinuz-generic
Found initrd image: /boot/initrd.gz
done

Sortir du chroot, arretter la vm et demarrer depuis le vm.conf:

root@slackware:/# exit
exit
root@slackware:/# halt -d 0
The system is going down NOW!
Sent SIGTERM to all processes
Sent SIGKILL to all processes
Requesting system halt
reboot: System halted

A ce stade, sur l’hote OpenBSD, [ctrl-c] + demarrer normalement via vmctl

vmctl start -c slack_vm

Documentations