VirtualBox-Ordner in umgekehrter Reihenfolge freigeben? Gast-Gastgeber?

72

Ich bin mit der Installation von Guest Additions und der Freigabe von Hostordnern für den Gast vertraut. Gibt es eine Möglichkeit, das Gegenteil zu tun?

Ich habe einen XP-Host und einen Ubuntu 10.10-Gast mit VBox 4.0.2.

Mit anderen Worten, ich möchte, dass der Host direkten Zugriff auf (zumindest einige der) Dateien in der VDI-Datei hat.

Nate Parsons
quelle
2
Es ist möglich, eine VDI als Festplatte zu mounten. Ist das für dich interessant? (nicht möglich, während der Gast läuft)
Harrymc

Antworten:

45

Mit den Guest-Erweiterungen ist dies nicht möglich. Richten Sie jedoch die normale Ubuntu-Dateifreigabe auf Ihrem Guest ein, und Sie können über das virtuelle Netzwerk zwischen Host und Guest auf die Dateien zugreifen. Die OSE-Version von VirtualBox verfügt nicht über freigegebene Ordner. Dies ist die empfohlene Freigabemethode für VirtualBox, wie hier beschrieben . How-To Geek hat hier ein Tutorial , wie man es speziell mit Ubuntu macht, und es gilt auch für alle anderen Ordner.

Der Netzwerktreiber ist intelligent genug, um den Datenverkehr nicht über das Kabel zu senden, sondern wird weiterhin für die Kommunikation mit dem Gast verwendet. Ich habe ein paar virtuelle Maschinen, die ich so verwende, sowohl auf dem Mac als auch unter Windows.

BinaryMisfit
quelle
Die gleiche Methode, bei der nur ein anderes Protokoll verwendet wird, könnte die Verwendung von Dokan SSHFS sein. Je nach Anwendungsfall und Konfiguration ist es möglicherweise sicherer und leistungsfähiger, während das gesamte Dateisystem (mit den entsprechenden Rechten) durchsucht werden kann.
Lloeki
Hier ist ein großes Tutorial, wie man diese Arbeit machen mit einem Linux - Gast und Windows Host mit Samba: superuser.com/questions/258026/...
bjtilley
In diesem Fall ist Samba eine gute Wahl, da es sich um eine Windows-Box handelt. Wenn Sie jedoch Mac und Linux oder Linux und Linux verbinden, verwenden Sie nfs-steps unter serverfault.com/questions/716350/…
Ben Creasy
9

Standardmäßig hat die virtuelle Maschine eine NAT-Verbindung zum lokalen Netzwerk, was bedeutet, dass sie keine eigene "echte" IP-Adresse hat. Wenn Sie stattdessen eine überbrückte Verbindung einrichten, können Sie reguläre Dateifreigabemethoden vom virtuellen PC aus verwenden, z. B. Windows-Dateifreigabe (einschließlich SAMBA unter Linux / Unix / etc.) Oder NFS. Natürlich müsste die VM laufen.

Es ist auch möglich, ein VDI als Laufwerk unter dem Host-Betriebssystem zu mounten. Ich weiß nicht genau, wie das auf einem XP-Host gemacht wird, und ich glaube, Sie müssten das Gast-Betriebssystem herunterfahren (anstatt es auszusetzen), um dies zu tun Vermeiden Sie Festplattenschäden.

CarlF
quelle
Je nachdem, wie Sie den Netzwerkadapter der Gast-VM konfiguriert haben, ist dies die beste Lösung. Die Art und Weise, wie Virtual Box den Ordner eines Hosts freigibt, besteht darin, ihn in eine Netzwerkfreigabe umzuwandeln. Sie können damit den anderen Weg gehen. Geben Sie den Ordner der Gast-VM frei und stellen Sie eine Verbindung als Netzwerkfreigabe her. Beachten Sie jedoch, dass dies schwieriger ist, wenn Sie den Netzwerkadapter des Gasts nur als internen oder als NAT-Adapter einrichten. Am besten setzen Sie den Netzwerkadapter auf "Bridged", damit sie sich im selben Subnetz befinden.
Surfasb
1
Sie können mehrere Schnittstellen einrichten, eine als NAT und die andere als HOST-ONLY. Sie können sogar die Adresse auf der Nur-Host-Seite so
festlegen, dass
2

Es gibt eine knifflige Lösung:

  1. Installieren Sie unter Windows cygwin
  2. Verwenden Sie unter Windows und Linux dieselben Benutzernamen
  3. Erstellen Sie in Windows das Verzeichnis $ HOME / shared und machen Sie es zu einem freigegebenen Ordner in VBox
  4. Erstellen Sie unter Linux die Verzeichnisse ~ / shared und ~ / shared_local und führen Sie Folgendes aus:sudo /sbin/mount.vboxsf -o gid=1000,uid=1000 shared ~/shared
  5. Verwenden rsyncSie diese Option , um Ihre Daten in ~ / shared mit ~ / shared_local zu synchronisieren .

Sie können unter Linux und Windows dieselben Bash-Skripte verwenden. Sie können von Windows und Linux aus auf alle Daten in Ihrem ~ / shared zugreifen, indem Sie denselben Pfad verwenden.

psihodelia
quelle
0

Das kann gemacht werden. Sie müssen lediglich eine zusätzliche Netzwerkkarte als Host-Only-Netzwerk hinzufügen und den Gastcomputer neu starten. Während des Neustarts werden Sie aufgefordert, eine neue Netzwerkschnittstelle zu installieren. Beantworten Sie diese Frage mit Ja. Nach dem Booten kann der Gastcomputer über die IP-Adresse des Gastcomputers vom Host aus aufgerufen werden. Ich schlage vor, eine statische IP-Adresse (192.168.50.10) festzulegen, zum Beispiel für den Gast. Teilen Sie Samba und Sie sollten in der Lage sein, vom Host-Rechner aus mit ihm zu sprechen. Ich habe es getan und es ist großartig.

Chung Tran
quelle