web-dev-qa-db-fra.com

Impossible d'installer VirtualBox dans Windows Bash - Ubuntu (Windows 10)

J'essaie d'installer VirtualBox dans Windows Bash (version bêta), mais j'ai reçu le message d'erreur persistant:

somasundaram@Host:~/kernel34$ VBoxManage --version
WARNING: The character device /dev/vboxdrv does not exist.
         Please install the virtualbox-dkms package and the appropriate
         headers, most likely linux-headers-3.4.0+.

         You will not be able to start VMs until this problem is fixed.

4.3.36_Ubuntur105129

J'ai aussi essayé d'installer les en-têtes linux pour 3.4.1 et de les reconfigurer avec

somasundaram@Host:~/kernel34$ Sudo dpkg-reconfigure virtualbox-dkms

mais en vain.

3
Somasundaram Sekar

VirtualBox dépend beaucoup du matériel sur lequel il s'exécute et ne comprend pas Bash sous Windows. Exécuter Vbox sur BoW n’a jamais été l’intention de Canonical, Microsoft ou Oracle.

Comme expliqué par Microsoft :

Il s’agit d’un ensemble d’outils de développement destinés à vous aider à écrire et à construire tout votre code pour tous vos scénarios et plates-formes. "Ce n’est pas une machine virtuelle Ubuntu complète. Vous ne pouvez pas l’utiliser sur des serveurs hôtes, comme vous le feriez sous Linux.

C'est un jeu d'outils de développement; rien de plus.

Vous aurez besoin de changements au niveau du matériel pour que cela fonctionne. Probablement d'Oracle et de Microsoft.

Avec la technologie actuelle, je dis impossible.


En passant, si vous pensez être capable de pirater cela ensemble: les avis que vous avez publiés concernent 2 choses

  • Le caractère device /dev/vboxdrv n'existe pas. Veuillez installer le paquet virtualbox-dkms
  • et les en-têtes appropriés, très probablement linux-headers-3.4.0 +.

Vous pouvez probablement installer virtualbox-dkms avec apt. De plus, vous devez vérifier quels en-têtes vous avez. En général, vous les installez avec:

apt-get install linux-headers-`uname -r`
dpkg-reconfigure virtualbox-{numbers}

si uname -r indique 3.4. Sinon, vous devez insérer les numéros vous-même.

Si vous parvenez à faire fonctionner ces 2 machines, vous serez peut-être un long chemin dans la direction à suivre. Bien que je doute que vous puissiez faire fonctionner la deuxième (vBox n’installe pas le système sur lequel il n’a pas été conçu).

8
Rinzwind

Windows Bash est pas Linux. Windows Bash est essentiellement une émulation d'API qui vous permet d'exécuter certains fichiers binaires Linux, à condition qu'ils ne fassent rien spécial . En d'autres termes, Windows émule les parties les plus couramment utilisées de l'ABI Linux, suffisamment pour que des choses simples comme ouvrir un fichier, lire et écrire des choses et exécuter des E/S réseau fonctionnent. Cependant, des choses telles que les interactions avec le matériel (ce que fait normalement VirtualBox) ou même avec un certain type de framebuffer (nécessaire pour X et donc pour Unity, mais vous pouvez contourner ce problème) ne sont pas émulées et échoueront. VirtualBox veut construire un pilote de périphérique - ce qui n’est tout simplement pas possible avec ce modèle d’émulation, car il n’existe pas de noyau pour lequel vous pourriez le construire. Par conséquent, l'installation d'en-têtes de noyau ou de modules dkms échouera.

TLDR: Windows Bash sous Windows est destiné à Linux, et Wine sous Linux à Windows.

3
maxf

Bash sous Windows ne possède pas de noyau Linux, requis par la Virtual Box. Tout ce qu’il fait, il offre des fonctionnalités similaires à celles que les outils classiques attendent d’un noyau Linux.

Plus particulièrement, Bash sous Windows fournit uniquement quelques-uns des GNU outils à exécuter sur un sous-système Windows émulant un noyau Linux.

Comme il n'y a pas de noyau, il n'y aura pas de modules pour Virtual Box. Donc, ça va échouer, ne pas installer.

3
Anwar

Je sais que c’est une vieille question, mais il semble y avoir une solution de contournement si vous utilisez Vagrant. Selon Vagrant , si vous installez Vagrant dans le WSL, cela peut fonctionner avec votre installation Windows Virtualbox normale. Plus précisément, ils déclarent

Vagrant détecte le moment où il est exécuté dans le WSL et ajuste la manière dont il localise et exécute les exécutables tiers. Par exemple, lors de l'utilisation du fournisseur VirtualBox, Vagrant interagira avec VirtualBox installé sur le système Windows et non dans le WSL. Il est important de vous assurer que tout l'exécutable Windows requis est disponible dans votre PATH pour permettre à Vagrant d'y accéder.

L'article que j'ai lié contient beaucoup plus de détails.

0
Evan Rosica