Condivisione della cartella dall'host Windows a Freebsd Guest


10

Cosa sto cercando di realizzare:

  • Ho (a casa) un PC con Windows 7 installato
  • Vorrei eseguire un Unix in Virtual Box, perché sono più abituato a sviluppare / creare script su di esso

Ho optato per Freebsd al momento e sono riuscito a installarlo e configurare la rete. Il prossimo passo è condividere una cartella da Windows a Freebsd in modo che io possa facilmente modificare i file su Windows e su Freebsd entrambi. Sfortunatamente sembra una cosa da fare.

Ho frugato in rete e ho trovato due modi diversi:

Ho installato le aggiunte di ospiti in FreeBSD usando pkg_add -r virtualbox-ose-additions, l'installazione abbastanza switfly proceduto, e ho modificato /etc/rc.confper aggiungere le due linee suggerite: vboxguest_enable="YES"ed vboxservice_enable="YES"e riavviato.

Non ha funzionato. Il comando per montare il sistema finisce con un errore:

# mount -t vboxsf shared /home/myuser/shared
mount: shared : Operation not supported by device

dov'è sharedil nome della cartella che ho configurato nelle impostazioni della mia scatola virtuale per questa VM.

È davvero possibile usare un vboxsftipo di filesystem in freebsd? Alcuni commenti sembrano suggerire che non è supportato, ma è difficile trovare informazioni aggiornate.

Successivamente, sono passato all'approccio della samba. Fondamentalmente ho seguito la guida che ho collegato. Purtroppo finisce con:

# mount_smbfs -N -I 192.168.56.1 //winuser@winmachinename/Shared /mnt/shared
mount_smbfs: unable to open connection: syserr = RPC struct is bad

dov'è Sharedil nome della cartella condivisa che ho configurato con windows, accessibile winuserovviamente. Il ping funziona.

Vorrei notare che non ho una password per l'account guest di Windows a cui sto cercando di connettermi, mi è sembrato più facile, ma forse che in qualche modo disturba la samba.

modifica: lavorando da PuTTY non avevo visto che alcuni messaggi erano stampati nella console:

smb_maperror: Unmapped error 3:31
smb_co_lock: recursive lock for object 1

entrambi appaiono più volte. / fine della modifica

Se la condivisione diretta di filesystem non funziona, hai idea di come ottenere samba per farlo? L'articolo suggerisce che almeno è già stato fatto da alcuni.

Informazioni tecniche:

  • Host: Windows 7 Familial Edition (aggiornato)
  • Ospite: FreeBSD 9.0-RELEASE # 0: mar 3 gen 07:15:25 UTC 2012 root@obrian.cse.buffalo.edu: / usr / obj / usr / src / sys / GENERIC i386
  • Scatola virtuale: 4.1.16 r78094

Sono aperto anche a nuovi suggerimenti per la condivisione. Preferirei, se possibile, evitare di trasferire i file avanti e indietro: non è particolarmente efficiente e sempre fonte di errori confusi.

Sono anche aperto a cambiare i sistemi. Mi piace la filosofia di freebsd, ma se non funziona, non ho scrupoli nel passare a Linux.

MODIFICA :

Questa domanda è ora puramente di interesse teorico. Passo all'utilizzo di Ubuntu Server e sono riuscito a configurarlo senza samba poiché vboxsf è ben supportato.


Hai provato il programma smbclient dalla suite samba?
nato

@arved: no, non l'ho fatto. È possibile configurare un montaggio automatico tramite il client smb? (Idealmente preferirei non usare la samba, ma hey, se ci vuole samba per funzionare ...)
Matthieu M.

Non credo sia possibile montare. Ma almeno puoi verificare che non ci sia alcuna configurazione errata sulla condivisione di Windows
avvenuta

Risposte:


5

Le cartelle condivise di VirtualBox non sono ancora supportate su FreeBSD.

Un committer di porte FreeBSD lo ha confermato nelle mailing list di FreeBSD a partire dal (24/06/2014):

Le cartelle condivise per i guest di FreeBSD non sono ancora supportate [...] C'è qualche bozza di codice e un modulo kernel per esso, ma non funziona ancora.

Se vuoi seguire lo stato della porta, cerca nelle mailing list. C'è anche il #freebsd-vboxcanale IRC su Freenode. È stato pubblicato nella mailing list di freebsd-hackers in fondo a questo post . Troverai sviluppatori lì.

Infine, ecco cosa virtualbox-ose-additionssupporta attualmente la porta secondo il capitolo 22.2 del manuale di FreeBSD a oggi:

Le aggiunte guest di VirtualBox ™ forniscono supporto per:

  • Condivisione degli Appunti.
  • Integrazione del puntatore del mouse.
  • Sincronizzazione dell'ora dell'host.
  • Ridimensionamento della finestra.
  • Modalità senza soluzione di continuità.

Come puoi vedere, nessuna cartella condivisa supporta ancora per FreeBSD.

Il capitolo 4.3 del manuale di VirtualBox afferma:

Le cartelle condivise sono supportate con guest Windows (2000 o successivi), Linux e Solaris.

Ancora una volta nessun FreeBSD. Utilizzare le condivisioni SMB per ora, seguendo le istruzioni che altri hanno menzionato.


4

Assicurati di aver configurato la condivisione nella cartella Windows per l'utente che desideri utilizzare per condividere su freebsd.

Mi piace aggiungere quanto segue a / etc / hosts per facilità d'uso.

<ip address of server>  vboxhost
eg.
192.168.56.1    vboxhost

Primo test di montaggio della cartella:

mount_smbfs -I vboxhost //username@nameofwindowsbox/foldername /mnt

Se questo è corretto, ti verrà richiesta la password dell'utente windows.

Per farlo montare all'avvio, aggiungere quanto segue a / etc / fstab

//username@nameofwindowsbox/foldername  /mnt smbfs  rw,noauto  0 0

Dovrebbe essere montato ad ogni avvio

Se non vuoi che ti venga richiesta la password, aggiungi questo in /etc/nsmb.conf:

[default]
[NAMEOFWINDOWSBOX]              
addr=<ip address of host>
[NAMEOFWINDOWSBOX:USERNAME]
password=<myPassword>

Ciao pete Grazie per la tua risposta. In realtà ho cambiato le armi e sono andato con Ubuntu Server poiché preferivo una soluzione non-samba e FreeBSD non supporta ancora vboxfs.
Matthieu M.,

1
Non è necessario installare samba per la soluzione di cui sopra, funziona da un'installazione predefinita di FreeBSD.
Pete,

Consiglierei di provare Freebsd se hai tempo, perché ho trovato la sua funzione di prigione molto utile per scopi di sviluppo. Al momento ho 5 jail: www (apache22 + php53), www (apache22 + php54), MySQL, PostgreSQL, email-server. Ho trovato questo inestimabile in termini di test di diverse versioni di php e database
Pete

Inoltre, dato che FreeBSD ha molti terminali di default alt + f1 -> alt + f8 che significa che se vai con le jail puoi costruirli in parallelo risparmiando tempo quando usi il sistema delle porte. Diamine, potresti persino configurare una prigione solo per creare software. Io uso qjail.
Pete,

beh, il mio scopo era di hackerare Clang / LLVM, quindi per me va abbastanza bene.
Matthieu M.,

1

Stavo combattendo lo stesso problema. Un paio di cose sul lato Windows mi hanno permesso finalmente di far funzionare mount_smbfs in FreeBSD 9.0:

  • Abilita accesso anonimo per il sistema

Centro connessioni di rete e condivisione → Modifica impostazioni di condivisione avanzate → Disattiva condivisione protetta da password

  • Abilita l'accesso anonimo alla cartella tramite Condivisione semplice

Proprietà → Condivisione → Condividi ... → Aggiungi 'Tutti'

Nelle proprietà di condivisione ci sono due modi per creare la condivisione; Condivisione semplice e condivisione avanzata. Stavo usando la condivisione avanzata, e per qualche ragione non mi interessa davvero a questo punto, non ha funzionato; Ho aggiunto nuovamente la condivisione tramite Condivisione semplice e infine mount / smbclient ha funzionato.

Verifica che l'accesso anonimo funzioni con smbclient:

[root@fileserv ~]# smbclient -N -I 192.168.56.1 '\\twblamer-pc\share'
Domain=[TWBLAMER-PC] OS=[Windows 7 Professional 7601 Service Pack 1] Server=[Windows 7 Professional 6.1]
smb: \> dir
  .                                  DR        0  Thu Dec 13 04:33:09 2012
  ..                                 DR        0  Thu Dec 13 04:33:09 2012
  mydirectory                         D        0  Thu Dec 13 01:55:45 2012

Grazie per la risposta, alla fine sono passato a Ubuntu (che è stato più facile dato che avevo accesso a un amico che lo usava).
Matthieu M.,

1
Sì, volevo solo provare ad aiutare i futuri googler.
twblamer,

E ti ringrazio per averlo fatto, ho avuto delle difficoltà a trovare una soluzione quando ho provato :)
Matthieu M.
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.