Gestionnaire de réseau d'hôtes
Impossible de créer une interface dans VBox
Logiciels / Virtualisation et Émulation

Guygoye Membre non connecté
-
- Voir le profil du membre Guygoye
- Inscrit le : 25/10/2018
- Groupes :
-
Modérateur
-
Forgeron
Je suis en train de suivre deux cours au CNAM sur l'administation de poste en réseau et de serveur.
De ce fait j'ai crée deux machines virtuelles que je voulais mettre en réseau sur le même routeur virtuel.
J'ai donc essayé de créer une interface sans succès, on me retourne le code d'erreur suivant:
Echec de la création d'une interface du réseau hôte.
VBoxNetAdpCtl: Error while adding new interface: failed to open /dev/vboxnetctl: Permission denied.
Code d'erreur : NS_ERROR_FAILURE (0x80004005)
Composant : HostNetworkInterfaceWrap
Interface : IHostNetworkInterface {455f8c45-44a0-a470-ba20-27890b96dba9}
J'ai essayé d'ajouter mon utilisateur au groupe vboxusers mais cela n'a pas fonctionné.
Le fichier en question appartient à root et au groupe root.
J'ai cherché un peu sur le net mais je n'ai rien trouvé de concluant j'ai fait un:
Code BASH :
modprobe vboxnetflt
et un
Code BASH :
modprobe vboxnetadp
Sans succès. A priori ce genre de problème se retrouve beaucoup sur Mac.
Est ce que quelqu'un aurait une idée?
PS: Lancé en root àa fonctionne évidemment!
Édité par Guygoye Le 26/03/2022 à 19h42

Jybz Membre non connecté
-
- Voir le profil du membre Jybz
- Inscrit le : 10/10/2018
- Groupes :
-
Administrateur
-
Forgeron
Téléverser une image : /wiki/hebergement-de-fichiers-sur-mlo
Arch | Machine | OS |
x86_64 | lenovo x250 | mga9 |
armv7hl | bananapro | mga9 |
aarch64 | Raspberry Pi 4B | mga9 |

Jybz Membre non connecté
-
- Voir le profil du membre Jybz
- Inscrit le : 10/10/2018
- Groupes :
-
Administrateur
-
Forgeron
Je regarde les droits.
Peux tu donner tes deux commandes ? Celle pour créer et celle pour détruire ?
Téléverser une image : /wiki/hebergement-de-fichiers-sur-mlo
Arch | Machine | OS |
x86_64 | lenovo x250 | mga9 |
armv7hl | bananapro | mga9 |
aarch64 | Raspberry Pi 4B | mga9 |

nic80 Membre non connecté
-
- Voir le profil du membre nic80
- Inscrit le : 06/08/2018
- Groupes :
-
Modérateur
Effectivement, il semble y avoir un problème...
En regardant dans le fichier /usr/lib64/virtualbox/vboxdrv.sh, j' ai remarqué ceci:
/usr/lib64/virtualbox/vboxdrv.sh :
VIRTUALBOX="${INSTALL_DIR}/VirtualBox"
VBOXMANAGE="${INSTALL_DIR}/VBoxManage"
BUILDINTMP="${MODULE_SRC}/build_in_tmp"
if test -u "${VIRTUALBOX}"; then
GROUP=root
DEVICE_MODE=0600
else
GROUP=vboxusers
DEVICE_MODE=0660
fi
[...]
udev_write_vboxdrv() {
VBOXDRV_GRP="$1"
VBOXDRV_MODE="$2"
echo "KERNEL==\"vboxdrv\", NAME=\"vboxdrv\", OWNER=\"root\", GROUP=\"$VBOXDRV_GRP\", MODE=\"$VBOXDRV_MODE\""
echo "KERNEL==\"vboxdrvu\", NAME=\"vboxdrvu\", OWNER=\"root\", GROUP=\"root\", MODE=\"0666\""
echo "KERNEL==\"vboxnetctl\", NAME=\"vboxnetctl\", OWNER=\"root\", GROUP=\"$VBOXDRV_GRP\", MODE=\"$VBOXDRV_MODE\""
}
VBOXMANAGE="${INSTALL_DIR}/VBoxManage"
BUILDINTMP="${MODULE_SRC}/build_in_tmp"
if test -u "${VIRTUALBOX}"; then
GROUP=root
DEVICE_MODE=0600
else
GROUP=vboxusers
DEVICE_MODE=0660
fi
[...]
udev_write_vboxdrv() {
VBOXDRV_GRP="$1"
VBOXDRV_MODE="$2"
echo "KERNEL==\"vboxdrv\", NAME=\"vboxdrv\", OWNER=\"root\", GROUP=\"$VBOXDRV_GRP\", MODE=\"$VBOXDRV_MODE\""
echo "KERNEL==\"vboxdrvu\", NAME=\"vboxdrvu\", OWNER=\"root\", GROUP=\"root\", MODE=\"0666\""
echo "KERNEL==\"vboxnetctl\", NAME=\"vboxnetctl\", OWNER=\"root\", GROUP=\"$VBOXDRV_GRP\", MODE=\"$VBOXDRV_MODE\""
}
Sur mon installation, j' ai ceci:
Citation :
ls -al /usr/lib64/virtualbox/VirtualBox
-rwxr-xr-x 1 root root 2513568 janv. 20 23:04 /usr/lib64/virtualbox/VirtualBox
-rwxr-xr-x 1 root root 2513568 janv. 20 23:04 /usr/lib64/virtualbox/VirtualBox
Donc le test "test -u "${VIRTUALBOX}" " renvoi forcement 1 et on devrait donc avoir le vboxusers sur les fichier de périphériques.
Comme c' est géré par un fichier de règles udev, je modifie le fichier /usr/lib/udev/rules.d/virtualbox.rules comme ceci:
Citation :
KERNEL=="vboxdrv", NAME="vboxdrv", OWNER="root", GROUP="vboxusers", MODE="0660"
KERNEL=="vboxnetctl", NAME="vboxnetctl", OWNER="root", GROUP="vboxusers", MODE="0660"
KERNEL=="vboxnetctl", NAME="vboxnetctl", OWNER="root", GROUP="vboxusers", MODE="0660"
Puis refait une relecture des règles udev
Citation :
udevadm control --reload
Puis relance le rechargement des modules Virtualbox
Citation :
systemctl restart vboxhost
Malheureusement ça ne fonctionne pas mieux:
Citation :
VBoxManage hostonlyif create
0%...
Progress state: NS_ERROR_FAILURE
VBoxManage: error: Failed to create the host-only adapter
VBoxManage: error: VBoxNetAdpCtl: Error while adding new interface: failed to open /dev/vboxnetctl: Operation not permitted
VBoxManage: error: Details: code NS_ERROR_FAILURE (0x80004005), component HostNetworkInterfaceWrap, interface IHostNetworkInterface
VBoxManage: error: Context: "RTEXITCODE handleCreate(HandlerArg*)" at line 95 of file VBoxManageHostonly.cpp
0%...
Progress state: NS_ERROR_FAILURE
VBoxManage: error: Failed to create the host-only adapter
VBoxManage: error: VBoxNetAdpCtl: Error while adding new interface: failed to open /dev/vboxnetctl: Operation not permitted
VBoxManage: error: Details: code NS_ERROR_FAILURE (0x80004005), component HostNetworkInterfaceWrap, interface IHostNetworkInterface
VBoxManage: error: Context: "RTEXITCODE handleCreate(HandlerArg*)" at line 95 of file VBoxManageHostonly.cpp
Et même si les droits peuvent sembler bon ( remarque je ne sais pas à quoi sert le /dev/vboxdrvu, mais il n' apparait pas dans les règles udev ( alors qu' il devrait avoir un droit 666 si j' en crois le fichier vboxdrv.sh) :
Citation :
ls -al /dev/vbox*
crw-rw---- 1 root vboxusers 10, 123 mars 27 09:17 /dev/vboxdrv
crw------- 1 root root 10, 122 mars 27 09:17 /dev/vboxdrvu
crw-rw---- 1 root vboxusers 10, 121 mars 27 09:17 /dev/vboxnetctl
crw-rw---- 1 root vboxusers 10, 123 mars 27 09:17 /dev/vboxdrv
crw------- 1 root root 10, 122 mars 27 09:17 /dev/vboxdrvu
crw-rw---- 1 root vboxusers 10, 121 mars 27 09:17 /dev/vboxnetctl
Et là je ne sais pas comment faire pour que l' opération soit autorisée.
edit: pour le groupe vboxfs , le "fs" n' est pas pour file system ( donc pas relatif à une interface réseau ?) ?
Édité par nic80 Le 27/03/2022 à 09h41

Jybz Membre non connecté
-
- Voir le profil du membre Jybz
- Inscrit le : 10/10/2018
- Groupes :
-
Administrateur
-
Forgeron
Code BASH :
VIRTUALBOX="${INSTALL_DIR}/VirtualBox" ... if test -u "${VIRTUALBOX}"; then GROUP=root DEVICE_MODE=0600 else GROUP=vboxusers DEVICE_MODE=0660 fi
Le fichier "${INSTALL_DIR}/VirtualBox" existe, le test -u renvoi 1 et on passe à GROUP=root
Téléverser une image : /wiki/hebergement-de-fichiers-sur-mlo
Arch | Machine | OS |
x86_64 | lenovo x250 | mga9 |
armv7hl | bananapro | mga9 |
aarch64 | Raspberry Pi 4B | mga9 |

Jybz Membre non connecté
-
- Voir le profil du membre Jybz
- Inscrit le : 10/10/2018
- Groupes :
-
Administrateur
-
Forgeron
nic80 :
Et là je ne sais pas comment faire pour que l' opération soit autorisée.
Et là je ne sais pas comment faire pour que l' opération soit autorisée.
As tu essayé la méthode windows ? Redémarrer ?

Plus sérieusement, je ne connais pas l'étendu des changements de droits d'un fichier dans /dev, les fichiers de configuration, les pilotes, ... Traquer les étapes nécessaire pour le faire "online" demande plus de temps qu'un redémarrage.
Téléverser une image : /wiki/hebergement-de-fichiers-sur-mlo
Arch | Machine | OS |
x86_64 | lenovo x250 | mga9 |
armv7hl | bananapro | mga9 |
aarch64 | Raspberry Pi 4B | mga9 |

Guygoye Membre non connecté
-
- Voir le profil du membre Guygoye
- Inscrit le : 25/10/2018
- Groupes :
-
Modérateur
-
Forgeron
Effectivement j'ai testé la méthode Nic80 et après redémarrage cela ne fonctionne pas.
Jybz :
Peux tu donner tes deux commandes ? Celle pour créer et celle pour détruire ?
Je n'ai pas compris tes questions

Edit: Est ce que vous pensez que cela peut être un bug lié à la version virtualbox de MGA ?
Si c'est le cas je ferai un rapport

Édité par Guygoye Le 27/03/2022 à 14h12

nic80 Membre non connecté
-
- Voir le profil du membre nic80
- Inscrit le : 06/08/2018
- Groupes :
-
Modérateur
Il y a en a déjà un je crois suite à un problème de création de container docker (bizarrement le message d'erreur est similaire).
@Jibz: de ce que je comprends du fonctionnement de "if" c' est quand la valeur est à zero que le then est executé. Or ici 0!=1 ! Donc on devrait avoir le groupe vboxusers à mon sens.
Ceci dit sous Mageia 7, avec les 2 périphériques avec un groupe et propriétaire root, cela fonctionne correctement (le VboxManage hostonlyif create" fonctionne).
Ce n' est pas du à la version de noyau 5.15 (avec une version 5.10.46 cela ne fonctionne pas mieux, avec un virtualbox en 6.1.32).
Je n' ai pas vérifié les droits des fichiers dans /usr/lib64/virtualbox/ (des fois qu'un setuid se soit caché (mais je n' y crois pas trop) entre les deux versions (Mageia7 vs Mageia 8)).
Ce ne semble pas être non plus un problème de capabilities (encore que je n' ai pas lu complètement l' article ici https://connect.ed-diamond.com/GNU-Linux-Magazine/glmf-164/les-capabilities-sous-linux , vu que le getcap ou le getpcap ne retournent rien non plus par rapport aux exécutables (et vu que selinux et apparmor ne sont pas utilisés, le /sys/kernel/security/lsm (ou quelque chose comme ça) ne retourne que capabilities (qui sont toujours actives d' un point de vue noyau)...
Donc là je ne vois pas ce qui cloche et qui a changé entre les 2 versions.
Edit: le lien sur le forum qui semble être un problème similaire.
https://www.mageialinux-online.org/forum/topic-29613+docker-machine-create-error.php
https://bugs.mageia.org/show_bug.cgi?id=29949
Édité par nic80 Le 27/03/2022 à 21h20

Guygoye Membre non connecté
-
- Voir le profil du membre Guygoye
- Inscrit le : 25/10/2018
- Groupes :
-
Modérateur
-
Forgeron
Merci Nic80, j'étais passé à côté de ce post, effectivement c'est le même problème.
J'ai testé de le faire en ligne de commande hier pour voir si effectivement comme le disait Yuusha dans le post en lien et sur IRC c'était un problème d'interface graphique mais je ne m'en sors pas avec la commande:
Code BASH :
VboxManage hostonlyif create
A priori cela devrait créer automatiquement l'interface demandé mais je crois que ne précise pas les bonnes options.
Je vais mettre un commentaire dans le rapport de bug pour dire que je suis également concerné.

nic80 Membre non connecté
-
- Voir le profil du membre nic80
- Inscrit le : 06/08/2018
- Groupes :
-
Modérateur
Je ne sais pas trop quoi tirer de ceci ( ni quelque chose peut en être tiré) ...


nic80 Membre non connecté
-
- Voir le profil du membre nic80
- Inscrit le : 06/08/2018
- Groupes :
-
Modérateur
Citation :
A priori cela devrait créer automatiquement l'interface demandé mais je crois que ne précise pas les bonnes options.
Je ne suis pas sur que par défaut des options particulières soient nécessaires (le VBoxManage hostonlyif create se suffit à lui même pour créer une interface).
De mes observations le problème se pose quand la version de Virtualbox est supérieure à la version 6.1.26.
En atendant, il doit être possible de retrograder le Virtualbox en version 6.1.26 par :
urpmi --downgrade dkms-virtualbox-6.1.26
urpmi --downgrade virtualbox-6.1.26
Note: je n'ai pas testé le fonctionnement (une vm dans une vm, je ne sais pas ce que cela donne !)
Édité par nic80 Le 29/03/2022 à 11h59

Guygoye Membre non connecté
-
- Voir le profil du membre Guygoye
- Inscrit le : 25/10/2018
- Groupes :
-
Modérateur
-
Forgeron
Merci pour tout ces tests, je vais essayer de mettre à jour le rapport de bug en précisant qu'en downgradant la version cela fonctionne.

nic80 Membre non connecté
-
- Voir le profil du membre nic80
- Inscrit le : 06/08/2018
- Groupes :
-
Modérateur
D' après le rapport de bug, cela pourrait être un changement à partir de la version 6.1.28
Citation :
.virtualbox 6.1.28 changelog:
Network: More administrative control over host-only network ranges to prevent trouble due to misconfiguration, see user manual. Check updated documentation or your VMs may stop working!
Network: More administrative control over host-only network ranges to prevent trouble due to misconfiguration, see user manual. Check updated documentation or your VMs may stop working!
Mais je ne vois pas dans la documentation de VirtualBox ce qui pourrait expliquer ceci ( j' ai bien crée un fichier networks dans /etc/vbox avec une plage, mais cela ne semble rien changer).

Guygoye Membre non connecté
-
- Voir le profil du membre Guygoye
- Inscrit le : 25/10/2018
- Groupes :
-
Modérateur
-
Forgeron
Je n'ai rien trouvé de probant non plus sur ces 3 liens:
https://docs.oracle.com/en/virtualization/virtualbox/6.0/user/network_hostonly.html
https://www.virtualbox.org/manual/ch06.html
https://www.virtualbox.org/manual/ch09.html
Je vais compléter le rapport qu'en dis tu ?

nic80 Membre non connecté
-
- Voir le profil du membre nic80
- Inscrit le : 06/08/2018
- Groupes :
-
Modérateur
Citation :
Je vais compléter le rapport qu'en dis tu ?
Je n' ai pas d' avis sur la question...
Toutefois la doc de virtualbox n' est pas très explicite à ce sujet.
Après est ce que si l' interface host est crée en root elle est ensuite accessible depuis une machine en utilisateur normal (je n' ai pas testé) ?
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie