Condividi le cartelle di VirtualBox al contrario? Guest-Host?


72

Ho familiarità con il processo di installazione di Guest Additions e la condivisione di cartelle host con il guest, ma c'è un modo per fare il contrario?

Ho un host XP e un ospite Ubuntu 10.10, con VBox 4.0.2.

In altre parole, vorrei che l'host avesse accesso diretto a (almeno alcuni dei) file all'interno del file .vdi.


2
È possibile montare un vdi come disco rigido. Questo è interessante per te? (non possibile mentre l'ospite è in esecuzione)
harrymc,

Risposte:


45

Non è possibile farlo con le estensioni Guest, tuttavia, imposta la normale condivisione di file Ubuntu sul tuo guest e puoi accedere ai file utilizzando la rete virtuale tra l'host e il guest. La versione OSE di VirtualBox non ha cartelle condivise e questo è il metodo di condivisione consigliato per VirtualBox come descritto qui . How-To Geek ha un tutorial qui su come farlo con Ubuntu in particolare, e si applica anche a tutto ciò che è al di fuori delle cartelle home.

Il driver di rete è abbastanza intelligente da non inviare il traffico via cavo, ma verrà comunque utilizzato per comunicare con l'ospite. Ho alcune macchine virtuali che eseguo e utilizzo in questo modo, sia su Mac che su Windows.


Lo stesso metodo, semplicemente usando un altro protocollo potrebbe essere quello di usare qualcosa come Dokan SSHFS. A seconda del caso d'uso e della configurazione, potrebbe essere più sicuro e con prestazioni migliori consentendo l'esplorazione (con diritti adeguati) dell'intero filesystem.
Lloeki,

Ecco un ottimo tutorial su come farlo funzionare con un guest Linux e un host Windows usando samba: superuser.com/questions/258026/…
bjtilley

in questo caso, poiché è coinvolto un box di Windows, samba potrebbe essere una buona scelta - ma se stai collegando mac e linux o linux e linux, usa nfs - passaggi su serverfault.com/questions/716350/…
Ben Creasy

9

Per impostazione predefinita, la macchina virtuale ha una connessione NAT alla rete locale, il che significa che non ha un indirizzo IP "reale" proprio. Se invece si imposta una connessione a ponte, è possibile utilizzare i normali metodi di condivisione dei file dal PC virtuale, ad esempio la condivisione dei file di Windows (incluso SAMBA su Linux / Unix / ecc.) O NFS. Ovviamente la VM dovrebbe essere in esecuzione.

È anche possibile montare un VDI come unità sotto il sistema operativo host, non conosco i dettagli su come farlo su un host XP e credo che dovresti chiudere (piuttosto che sospendere) il sistema operativo guest per evitare la corruzione del disco rigido.


A seconda della configurazione dell'adattatore di rete della VM guest, questa è la soluzione migliore. Il modo in cui Virtual Box condivide la cartella di un host è trasformandolo in una condivisione di rete. Puoi andare dall'altra parte. Condividi la cartella della VM guest e connettiti ad essa come condivisione di rete. Attenzione, se si imposta l'adattatore di rete del guest solo come interno o NAT, questo è più complicato. Meglio impostare la scheda di rete come "ponte", in questo modo si trovano nella stessa sottorete.
surfasb,

1
puoi configurare più interfacce, avere una come NAT e l'altra come SOLO OSTANTE. Puoi persino correggere l'indirizzo sul solo host per avere sempre lo stesso indirizzo per la condivisione dei file
nhed

2

C'è una soluzione complicata:

  1. In Windows, installa cygwin
  2. Usa gli stessi nomi utente in Windows e Linux
  3. In Windows, crea la directory $ HOME / shared e rendila una cartella condivisa in VBox
  4. Sul tuo Linux creare directory ~ / shared e ~ / shared_local ed eseguire:sudo /sbin/mount.vboxsf -o gid=1000,uid=1000 shared ~/shared
  5. Utilizzare rsyncper sincronizzare i dati in ~ / shared con ~ / shared_local .

Puoi usare gli stessi script bash sia in Linux che in Windows. Puoi accedere a qualsiasi dato nel tuo ~ / condiviso da Windows e da Linux usando lo stesso percorso.


0

Questo può essere fatto. Quello che devi fare è aggiungere una scheda di rete aggiuntiva come rete solo host e riavviare il computer guest. Durante il riavvio verrà richiesto di installare una nuova interfaccia di rete, rispondere di sì a quello. Una volta avviato, è possibile accedere al computer guest dall'host utilizzando l'IP del guest. Suggerisco di impostare un IP statico, 192.168.50.10, ad esempio per l'ospite. Condividi samba e dovresti essere in grado di parlarci dal computer host. L'ho fatto ed è fantastico.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.