Virtualbox: Pasang folder bersama di Guest FreeBSD dari Host Ubuntu

9

Saya memiliki Ubuntu 12.10 sebagai Host OS dan FreeBSD 9 sebagai OS Guest di Virtualbox 4.1.18. Saya telah menginstal Samba di Ubuntu dan FreeBSD dan berbagi beberapa folder dari virtualbox, juga mencentang automountopsi.

Saya juga melakukannya right click and sharedi Ubuntu. Tetapi ketika saya mencoba me-mount menggunakan FreeBSD

mount -t vboxfs sharedfolder /home/user/shared`

katanya sharedfolderoperasi tidak diizinkan. Saya juga menggunakan

mount_smbfs //10.0.0.2/sharedfolder /home/user/shared

tapi saya mengerti can't get server address

Bagaimana cara membagi folder / file antara Host Ubuntu dan Guest FreeBSD dari virtualbox?

Bernhard
sumber
Apakah Anda punya alasan untuk tidak menggunakan NFS?
peterph
1
NFS ??? Bagaimana caranya? atau apakah itu diinstal secara default?
2
Sistem File Jaringan harus diinstal secara default dan jika tidak, Anda dapat menginstalnya sebagai paket lain. Ini adalah sistem file jaringan yang paling menonjol untuk Unices.
peterph
BTW, kemungkinan besar sharedfolder: Operation not permittedartinya hanya root yang bisa melakukannya.
Rasul
"Folder Bersama untuk tamu FreeBSD belum didukung" - lihat jawaban saya di bawah ini
Alexander Pozdneev

Jawaban:

4

Samba

Dimungkinkan untuk memasang folder FreeBSD bersama atau folder Ubuntu bersama dengan samba. Keduanya bekerja. Apa pun kasus Anda perlu mengkonfigurasi folder berbagi (Anda menyebutkan Anda menggunakan GUI Ubuntu untuk melakukan itu) dan kemudian pada mesin lain Anda perlu me-mount berbagi menggunakan IP yang benar dan memastikan bahwa kedua Tamu dan Host berada di sama jaringan atau menggunakan penerusan port jika Anda telah mengkonfigurasi NAT.

Karena ada terlalu banyak solusi, saya tidak akan mencantumkan semuanya di sini. Bisakah Anda memberikan informasi lebih lanjut mengenai konfigurasi jaringan OS Tamu Anda? Pengaturan apa yang Anda gunakan saat membuat VM? Apakah Anda menggunakan NAT, Bridge, Host-only atau Internal Network? Saya akan memberi Anda satu contoh yang mengasumsikan bahwa tamu Anda dapat melihat pada jaringan host Anda (misalnya, Anda memiliki satu kartu jaringan yang didefinisikan sebagai host saja).

Pertama-tama bagikan folder jaringan di Ubuntu seperti yang Anda lakukan. Pastikan untuk membuat akun pengguna di Samba pada host Ubuntu atau bahwa akses tamu dimungkinkan (misalnya sudo smbpasswd -a <username>untuk memberikan akses ke pengguna, ganti dengan nama pengguna.

Kemudian pada FreeBSD, pasang share Ubuntu dengan menggunakan alamat IP yang benar (10.0.0.2 mungkin adalah yang untuk "router" NAT Anda yang dibuat oleh VirtualBox dan karena itu mungkin tidak akan berfungsi), misalnya gunakan alamat IP Ubuntu pada LAN Anda (mis. 192.168.1.x) atau yang ditentukan untuk antarmuka host-only. Maka mount_smbfsperintah Anda akan berhasil:

mount_smbfs -U <username> //<correct IP>/sharedfolder /home/user/shared

vboxsf

Ketika vboxsf didukung oleh FreeBSD (terima kasih Alexander telah menunjukkannya) dan jika Anda ingin menggunakan mekanisme berbagi built-in VirtualBox vboxsf, Anda perlu menginstal Penambahan Tamu di OS Guest (beberapa FreeBSD dalam kasus Anda). Biasanya ini dilakukan melalui menu VirtualBox di bawah Devices , ada jalan pintas untuk Install Guest Additions ... .

Namun, untuk FreeBSD Anda harus melakukannya secara berbeda. Mereka memiliki dokumentasi khusus untuk ini:

Setelah Penambahan Tamu diinstal, Anda dapat menggunakan mountperintah dengan sistem vboxsffile. Anda perlu namun untuk berbagi folder menggunakan VirtualBox mekanisme berbagi folder, lihat di bawah VirtualBox Devices menu item Share Folder ... . Perhatikan bahwa nama yang akan Anda berikan untuk dibagikan di menu ini akan menjadi nama "perangkat" yang Anda berikan untuk dipasang.

Huygens
sumber
Saya menggunakan NAT, jaringan default untuk GuestOS. Saya mencoba dengan mount vboxsfbahkan dengan su, tetapi tidak berhasil. Saya telah berbagi folder di bawah mekanisme bersama virtualbox, settingsdan Shared Foldersdan memberi nama sharedfoldersuntuk yang ingin saya bagikan. Saya juga menggunakan automountopsi yang tersedia saat berbagi menggunakan virtualbox.
@JhilkeDai Seperti yang saya katakan, Anda hanya dapat menggunakan vboxsfdan Shared Folderjika Anda telah menginstal Penambahan Tamu di dalam OS Tamu, yang saya berikan beberapa tautan kepada Anda. Apakah Anda menginstalnya? Untuk Samba, cobalah untuk menggunakan mode "Bridge", bagikan folder pada Host (Ubuntu) dan cobalah untuk mengaksesnya dari Tamu (FreeBSD) menggunakan smbclient -L <ubuntu hostname>.
Huygens
ya, Penambahan Tamu adalah trik di GuestOS, saya tidak pernah menduga bisa seperti itu, saya juga tidak mengerti cara kerjanya. Tapi berhasil: D
1
Menambahkan Guest Additions sama seperti menambahkan satu set driver baru ke mesin virtual Guest Anda. Untuk analogi dalam lingkungan non-virtual, itu seperti memasang kartu grafis tanpa driver, Anda tidak memiliki akses ke semua kemungkinan. Setelah Anda menginstal driver, Anda bisa mendapatkan semua fitur karena OS menyadarinya dan menawarkan untuk memanfaatkannya untuk pengguna.
Huygens
1
Maaf karena keras, saya telah digigit dengan buruk setelah mempercayai jawabannya dan menghabiskan banyak waktu untuk menggunakannya sampai membaca jawaban yang lain.
Abel Cheung
10

Seperti yang ditunjukkan pada topik lain ,

Folder Bersama untuk tamu FreeBSD belum didukung [...] Ada beberapa kode konsep dan modul kernel untuk itu tetapi belum berfungsi.

Itu per 24 Juni 2014.

Alexander Pozdneev
sumber
2

Ada port yang tersedia di github:

https://github.com/lwhsu/freebsd-vboxfs

Ini diuji untuk berhasil bekerja FreeBSD 11.0-RELEASE-p1.

Vanaga
sumber
1
Mengatakan "tidak sepenuhnya bekerja" pada GitHub. Dan belum diperbarui sejak 11 Januari - sehari setelah Anda memposting jawaban Anda :)
Mikhail T.
0

Mulai hari ini (2020-05), semua cara untuk memasang folder host menggunakan vboxvfs asli secara resmi berfungsi:

mount_vboxvfs -w myshare /mnt
mount -t vboxvfs myshare /mnt

Satu-satunya masalah di sini adalah hasilnya sangat tidak stabil (host yang digunakan adalah FreeBSD 12). Saya sudah mencoba berbagai kombinasi versi OS tamu (FreeBSD 11 dan 12), host I \ O cache flag dalam pengaturan controller, read-only mount flags dll - tidak ada yang membawa pekerjaan yang stabil. File muncul \ hilang, Anda akan melihat semua jenis gangguan seperti misalnya folder berperilaku sebagai file dll. Saya punya banyak kernel kernel di OS tamu juga.

Jadi satu-satunya cara yang sah untuk membagikan folder dari OS host ke "FreeBSD Guest" adalah menggunakan NFS. Ini bekerja sangat bagus, tanpa masalah sejauh ini.

ARA1307
sumber