Antworten:
Die TL; DR-Version für Debian 9 lautet als root:
echo deb http://ftp.debian.org/debian stretch-backports main contrib > /etc/apt/sources.list.d/stretch-backports.list
apt update
apt install virtualbox-guest-dkms virtualbox-guest-x11 linux-headers-$(uname -r)
Das war's, die VirtualBox Guest Additions sind installiert.
VirtualBox ist in Debian 10 nicht verfügbar und wird auch in Debian 10 nicht verfügbar gemacht buster-backports
. Lucas Nussbaum hat eine inoffizielle Zusammenstellung von Paketen; Wenn du sie verwenden willst, solltest du seine Anweisungen befolgen (nur verlinkt - wenn der Link nicht mehr gültig ist, sind die Pakete vermutlich auch nicht verfügbar, so dass das Kopieren der Anweisungen hier sinnlos ist).
Im Einzelnen ist hier die Lösung für Debian 7, 8 und 9 unter Verwendung von Debian-Paketen:
Aktivieren Sie für Debian 7 und 8 die contrib
Repositorys; Stellen Sie zB für Debian 8 sicher, dass Ihre /etc/apt/sources.list
Datei etwas wie enthält
deb http://ftp.debian.org/debian jessie main contrib
für Debian 9 aktivieren Sie Backports mit contrib
; Fügen Sie dazu eine Zeile wie
deb http://ftp.debian.org/debian stretch-backports main contrib
um /etc/apt/sources.list
(oder noch besser, eine stretch-backports.list
Datei in /etc/apt/sources.list.d
);
Installieren virtualbox-guest-dkms
, Kernel-Header und optional virtualbox-guest-x11
(für die grafischen Gastdienstprogramme):
sudo apt update
sudo apt install virtualbox-guest-dkms virtualbox-guest-x11 linux-headers-$(uname -r)
(mit -t stretch-backports
after install
in der zweiten Zeile, wenn Sie Debian 9 verwenden).
Das ist alles , was benötigt wird - Sie müssen die Gastzusätze nicht in Ihrer VM mounten oder das Installationsprogramm ausführen. Sie können die drei Zeilen mit Shell-Aufrufen zu Ihren Vagrantfile
(oder den zur Bereitstellung Ihrer VMs verwendeten) hinzufügen und diese vergessen.
Durch die Installation des virtualbox-guest-dkms
Pakets wird sichergestellt, dass die entsprechenden Kernelmodule automatisch erstellt (und neu erstellt werden, wenn der Kernel aktualisiert wird) und die Gastzusätze installiert werden.
(Beachten Sie, dass dies die Version der in der VM verfügbaren Gastzusätze in der jeweils verwendeten Debian-Version installiert , die möglicherweise nicht mit der Version von Virtual Box übereinstimmt, in der die VM ausgeführt wird. Die Gastzusätze sollten jedoch weiterhin einwandfrei funktionieren.)
Befolgen Sie diese Schritte, um die VirtualBox Guest Additions auf Ihrer virtuellen Linux Debian-Maschine zu installieren:
Öffne das Terminal und werde root
( su
); Wenn Sie sudo
aktiviert haben, können Sie dies beispielsweise auch tun sudo -i
. siehe man sudo
für alle Optionen):
su
Geben Sie das root-Passwort ein und drücken Sie die Eingabetaste
Alternativ können Sie verwenden, sudo -s
wenn Sie es installiert haben und der Benutzer, bei dem Sie angemeldet sind, über die erforderlichen Rechte verfügt ...
Aktualisieren Sie APT - Cache:
apt-get update
Installieren Sie die neuesten Sicherheitsupdates:
In diesem Schritt werden alle Ihre Pakete aktualisiert. Seien Sie also weise. Führen Sie zuerst die folgenden Schritte aus. Andernfalls reicht es möglicherweise aus, sie auszuführen. Führen Sie dann ein Upgrade durch und versuchen Sie es erneut.
apt-get upgrade
Installieren Sie diese erforderlichen Pakete:
Pakete
build-essential
und müssenmodule-assistant
beide in der Lage sein, die Kernel-Module zu kompilieren. Wenn Sie die VirtualBox Linux Guest Additions installieren, müssen Sie sie haben. Mit diesem Befehl werden also die Header und Pakete (Compiler und Bibliotheken) abgerufen, die für die Arbeit erforderlich sind. Beachten Sie, dass Sie nach der Installation Ihrer VirtualBox Linux Guest Additions einige Pakete sowie Linux-Header zurücklassen, die Sie möglicherweise später löschen oder nicht. In meinem Fall haben sie nicht wehgetan, aber um das System aufgeräumt zu halten, sollten Sie nach dem Spielen etwas lernen.
apt-get install build-essential module-assistant
Konfigurieren Sie Ihr System zum Erstellen von Kernelmodulen:
m-a prepare
Gastzusätze ISO einfügen:
Erweitern Sie das Menü Geräte und klicken Sie auf Guest Additions CD-Image einfügen ...
Es sollte automatisch gemountet werden, aber wenn es aus irgendeinem Grund nicht funktioniert:
mount /media/cdrom
Führen Sie das folgende Skript aus:
sh /media/cdrom/VBoxLinuxAdditions.run
Starten Sie das System neu:
reboot
sudo apt-get update && sudo apt-get install linux-headers-`uname -r`
m-a prepare
sollte das linux-headers
Paket ziehen , alle Anweisungen funktionieren gut in einer Debian 9-Installation.
Eine Alternative zur Installation von VirtualBox-Gast-Addons aus dem Debian-Repository besteht darin, Quellen des Herstellers zu verwenden. Es wird erwartet, dass das Repository älteren und stabileren Code bereitstellt, während die Quellen des Herstellers über die neuesten Funktionen und Sicherheitsupdates verfügen.
Ich habe die folgenden Anweisungen auf Debian 9.4-Gastsystemen mit Linux-Kernel 4.9.0-4 unter VirtualBox 5.0.30 und OS X 10.11.6 erfolgreich ausprobiert. Hängen Sie zuerst das ISO-Image des Gast-Addons an die virtuelle Maschine an und starten Sie sie dann. Nach dem Booten wäre der Inhalt des Images in verfügbar /media/cdrom0/
. Erstens müssen zwei Pakete und ihre Abhängigkeiten installiert werden:
$ sudo apt-get install linux-headers-$(uname -r) build-essential
Führen Sie dann das vom Hersteller bereitgestellte Skript aus, mit dem die erforderlichen Kernelmodule erstellt und installiert werden:
$ cd /media/cdrom0/
$ sudo sh VBoxLinuxAdditions.run
Starten Sie die virtuelle Maschine neu und genießen Sie!
In Debian 9 befindet sich das Paket virtualbox-guest-dkms im Unstable-Repository (Sid-Repository).
Fügen Sie dies hinzu zu /etc/apt/sources.list
:
deb http://http.us.debian.org/debian sid main non-free contrib
Aktualisieren Sie die Repositorys und installieren Sie das Paket
sudo apt-get update
sudo apt-get install virtualbox-guest-dkms
Optional: Deaktivieren Sie das Sid-Repository, da es Updates für Pakete enthält, die Sie möglicherweise nicht möchten.
/vagrant
auf der VM bereitzustellen. Da dieses Reittier der ganze Grund war, warum ich die Gastzugänge haben wollte, ist es immer noch effektiv kaputt.