Je viens de mettre à jour ma station de travail tournant sous OpenSUSE Leap 15.1 vers la version 15.2. En règle générale, les mises à jour majeures s’effectuent sans drame. Il arrive cependant qu’un outil que l’on a l’habitude d’utiliser au quotidien ne fonctionne plus tout à fait pareil. Cette fois-ci, c’est VirtualBox qui m’a ménagé quelques surprises. Sous OpenSUSE 15.1, j’utilisais la version 5.2.44 (legacy) qui convenait parfaitement à tous mes besoins.
Installation depuis les dépôts OpenSUSE
Pour installer VirtualBox sous OpenSUSE Leap 15.2 j’ai actuellement le choix entre trois méthodes.
- Récupérer la version 6.1.10 fournie par les dépôts officiels.
- Installer la version 6.1.14 depuis le dépôt tiers
Virtualization
. - Installer manuellement la version 6.1.16 fournie par Oracle.
J’opte pour le dépôt tiers, que je configure de manière prioritaire, et j’installe le paquet virtualbox-qt
, qui récupère à son tour les dépendances virtualbox
et virtualbox-kmp-default
.
# zypper install virtualbox-qt
Mon utilisateur fait déjà partie du groupe vboxusers
.
# grep vboxusers /etc/group vboxusers:x:464:kikinovak
Si vous installez VirtualBox pour la première fois, il faudra songer à ajouter votre utilisateur à ce groupe comme ceci par exemple.
# usermod -aG vboxusers kikinovak
Ici, la procédure la plus simple consiste à redémarrer la machine pour lancer les services relatifs à VirtualBox et charger les modules correspondants.
Installation manuelle
Alternativement, je décris ici l’installation manuelle de la version 6.1.16 fournie par Oracle, puisque la question revient assez régulièrement dans les forums.
Dans un premier temps, je supprime mon installation existante de VirtualBox.
# rpm -qa | grep virtualbox virtualbox-qt-6.1.14-lp152.2.5.1.x86_64 virtualbox-kmp-default-6.1.14_k5.3.18_lp152.41-lp152.2.5.1.x86_64 virtualbox-6.1.14-lp152.2.5.1.x86_64 # zypper remove virtualbox-*
Je vérifie si je dispose d’une poignée d’outils de construction nécessaires pour une installation manuelle.
# rpm -q gcc make kernel-default-devel gcc-7-lp152.4.114.x86_64 make-4.2.1-lp152.8.110.x86_64 kernel-default-devel-5.3.18-lp152.47.2.x86_64
J’installe et je lance DKMS (Dynamic Kernel Module Support), qui m’évitera de recompiler les modules nécessaires pour le bon fonctionnement de VirtualBox à chaque mise à jour du noyau.
# zypper install dkms # systemctl enable dkms --now
Sur le site de VirtualBox, je suis les liens Downloads > VirtualBox 6.1.16 platform packages > Linux distributions > All distributions et je télécharge l’installateur 64-bit qui vient sous forme d’un fichier VirtualBox-6.1.16-140961-Linux_amd64.run
.
L’installateur est un script shell de 107 Mo. Pour éviter qu’il ne s’ouvre en tant que fichier texte dans le navigateur web, faites un clic droit sur le lien All distributions et choisissez l’option Enregistrer la cible du lien dans le menu contextuel.
Je rends l’installateur exécutable et je le lance.
# chmod +x VirtualBox-6.1.16-140961-Linux_amd64.run
# ./VirtualBox-6.1.16-140961-Linux_amd64.run
Verifying archive integrity... All good.
Uncompressing VirtualBox for Linux installation.............
VirtualBox Version 6.1.16 r140961 (2020-10-15T15:31:20Z) installer
Installing VirtualBox to /opt/VirtualBox
...
VirtualBox has been installed successfully.
Là encore, la solution la plus simple consiste à redémarrer ma station de travail.
Cette installation est rangée dans /opt/VirtualBox
selon les spécifications FHS. Si jamais on souhaite la supprimer, on peut le faire proprement à l’aide du script uninstall.sh
dans ce répertoire.
Si l’on passe par une installation manuelle, ce n’est pas une mauvaise idée de verrouiller les paquets fournis par OpenSUSE pour éviter les conflits de fichiers.
# zypper locks # | Name | Type | Repository --+------------------------+---------+----------- 1 | Mesa-dri-nouveau | package | (any) 2 | vagrant-vbguest | package | (any) 3 | virtualbox | package | (any) 4 | virtualbox-kmp-default | package | (any) 5 | virtualbox-qt | package | (any)
Augmenter la résolution de l’installateur
Pour mon travail au quotidien, j’utilise à peu près exclusivement deux types de machines virtuelles.
- CentOS 7.x et 8.x sans interface graphique
- OpenSUSE Leap 15.2 avec un bureau KDE
Dans la configuration par défaut, la résolution des systèmes invités est insuffisante pour afficher correctement les options de l’installateur. Voici ce que ça donne pour CentOS 8 par exemple. La résolution de 800×600 rogne une partie des rubriques.
Dans ce cas, il suffit de relancer l’installateur avec l’option vga=791
qui permet d’augmenter la résolution à 1024×768.
À partir de là, l’installateur de CentOS s’affiche correctement.
L’installateur d’OpenSUSE Leap 15.2 pose le même problème de résolution trop réduite.
Là aussi, on pourra invoquer le paramètre vga=791
au démarrage.
L’installateur s’affiche alors dans une résolution beaucoup plus lisible.
Configurer l’affichage plein écran
Dans la configuration plein écran, le bureau KDE du système invité OpenSUSE Leap 15.2 s’affiche avec une résolution de 800×600. Curieusement, cela ne semble pas changer même en installant les Additions Invité (Guest Additions).
La solution qui fonctionne – et qui ne nécessite même pas l’installation des Additions Invité ou autres pilotes X11 – consiste tout simplement à reconfigurer la machine virtuelle en changeant de contrôleur graphique. Concrètement, je remplace le contrôleur VMSVGA par défaut par VBoxVGA tout en prenant soin de décocher Activer l’accélération 3D.
Ne vous laissez pas perturber par l’avertissement Paramètre invalide détecté. Il s’affiche juste parce que VirtualBox considère que vous n’utilisez pas le contrôleur graphique recommandé.
Une fois qu’OpenSUSE a démarré et que le bureau est lancé, il suffit d’ouvrir les Paramètres KDE > Affichage et écran et de sélectionner la bonne Résolution dans le menu déroulant.
Cloner une machine virtuelle
J’utilise très régulièrement le clonage des VM pour travailler, ce qui permet de faire des tests en toute sérénité sans avoir à tout réinstaller lorsqu’on s’est tiré dans le pied. L’interface de clonage des VM a changé depuis VirtualBox 6.1 Dorénavant, il faudra sélectionner les options suivantes pour obtenir un clone parfait.
La rédaction de cette documentation demande du temps et des quantités significatives de café espresso. Vous appréciez ce blog ? Offrez un café au rédacteur en cliquant sur la tasse.