Saya menggunakan VirtualBox dengan OS X sebagai tuan rumah dan CentOS di VM tamu.
Di folder yang dibuat OS XI myfolder
, tambahkan folder itu sebagai folder bersama ke VM, nyalakan VM, di folder yang dibuat CentOS /home/user/myfolder
dan ketikkan:
sudo mount -t vboxsf myfolder /home/user/myfolder
dan memiliki output:
/sbin/mount.vboxsf: mounting failed with the error: No such device
Apa yang saya lakukan salah?
DIPERBARUI:
Guest Additions
diinstal.
macos
centos
virtual-machine
virtualbox
cnaize
sumber
sumber
sudo mount -t vboxsf sf_folder /home/user/folder
, di sinisf_folder
danfolder
HARUS nama yang berbedashare
jawaban untuk mendapatkan permalink.Jawaban:
Folder / clipboard bersama saya berhenti berfungsi karena beberapa alasan (mungkin karena pemasangan patch pada mesin virtual saya).
sudo mount -t vboxsf Shared_Folder ~/SF/
Memberi hasil sebagai berikut:
VirtualBox: mount.vboxsf: mounting failed with the error: No such device
Solusi bagi saya adalah menghentikan vboxadd dan melakukan pengaturan setelah itu:
sumber
/sbin/mount.vboxsf: mounting failed with the error: No such device
. Setelah menjalankan hal di atas dan memulai ulang sistem, folder bersama saya muncul seperti sebelumnya sebelum memutakhirkan .. terima kasih!sudo ./vboxadd setup
, Anda bisa melakukannyasudo ./vboxadd stop
. Tidak yakin apakah itu masih perlu, tetapi saya menduga itulah arti kalimat itu.Anda menggunakan folder bagi-pakai, jadi Anda harus menginstal VirtualBox Guest Additions di dalam mesin virtual Anda untuk mendukung fitur itu.
Gelandangan
Jika Anda menggunakan Vagrant (OS X :)
brew cask install vagrant
, jalankan:Jika gagal, periksa log, mis
Mungkin Anda hanya melewatkan file header kernel.
VM
Di dalam VM, Anda harus menginstal Guest Additions, header kernel dan memulai layanan dan periksa apakah ekstensi kernel berjalan.
Ini tergantung pada sistem operasi tamu, jadi inilah langkah-langkah singkatnya:
Instal kernel termasuk header (diperlukan oleh VBoxLinuxAdditions).
sudo apt-get update && sudo apt-get install kernel-devel
sudo yum update && sudo yum -y install kernel-headers kernel-devel
Instal Penambahan Tamu (ini tergantung pada sistem operasi).
Ubuntu:
sudo apt-get -y install dkms build-essential linux-headers-$(uname -r) virtualbox-guest-additions-iso
Jika Anda tidak dapat menemukannya, periksalah
aptitude search virtualbox
.Debian :
sudo apt-get -y install build-essential module-assistant virtualbox-ose-guest-utils
Jika Anda tidak dapat menemukannya, periksalah
dpkg -l | grep virtualbox
.secara manual dengan mengunduh file iso di dalam VM (mis.
wget
) dan menginstalnya, miswget http://download.virtualbox.org/virtualbox/5.0.16/VBoxGuestAdditions_5.0.16.iso -P /tmp
sudo mount -o loop /tmp/VBoxGuestAdditions_5.0.16.iso /mnt
sudo sh -x /mnt/VBoxLinuxAdditions.run # --keep
Debug tambahan:
cd ~/install && sh -x ./install.sh /mnt/VBoxLinuxAdditions.run
Periksa kembali apakah ekstensi kernel sudah berjalan dan berjalan:
sudo modprobe vboxsf
Mulai / mulai ulang layanan:
sudo /opt/VBoxGuestAdditions*/init/vboxadd setup
(tambahkansudo sh -x
ke debug)sudo /etc/init.d/vboxadd-service start
sudo /etc/init.d/vboxdrv setup
sudo service VBoxService start
Membangun modul Penambahan Tamu utama
Jika di atas tidak berhasil, berikut adalah langkah-langkah yang lebih canggih untuk memperbaikinya. Ini mengasumsikan bahwa Anda sudah menginstal VBoxGuestAdditions (seperti yang ditunjukkan di atas).
Alasan paling umum mengapa pemasangan folder bersama tidak berfungsi mungkin terkait dengan membangun modul Penambahan Tamu yang gagal. Jika
/var/log/vboxadd-install.log
sudah ada kesalahan berikut:ini berarti Anda tidak menginstal sumber kernel, atau tidak dapat ditemukan.
Jika Anda sudah menginstalnya seperti yang diperintahkan di atas, jalankan perintah ini:
Jadi pada dasarnya
vboxadd
skrip mengharapkan sumber kernel Anda tersedia di direktori berikut:Periksa apakah dir kernel ada (tautan simbolik menunjuk ke folder yang ada). Jika tidak, silakan instal ke folder yang benar (misalnya di
/usr/src/kernels
).Jadi
vboxadd
skrip dapat masuk ke direktori sumber kernel Anda dan jalankanmake kernelrelease
, dapatkan nilainya dan bandingkan dengan versi kernel Anda saat ini.Berikut ini logikanya:
Jika versi kernel tidak cocok dengan sumbernya, mungkin Anda harus memutakhirkan kernel Linux Anda (kalau-kalau sumbernya lebih baru dari kernel Anda).
CentOS
Mencoba:
Jika tidak berhasil, coba langkah-langkah manual berikut untuk CentOS:
sumber
vagrant plugin install vagrant-vbguest
vagrant vbguest
bekerja juga pada centos 7 dan menyelesaikan masalah. Terima kasihSaya dapat menyelesaikan ini dengan menjalankan perintah di bawah ini
modprobe -a vboxguest vboxsf vboxvideo
sumber
vboxsf
(Folder Berbagi VirtualBox) adalah apa yang dibutuhkan di sini. Anda dapat mencantumkan 3 file ini satu per baris dalam satu file dalam/etc/modules-load.d/
(sebut saja mungkinvirtualbox.conf
) untuk membuat perubahan ini bertahan melalui reboot.Selain jawaban @Mats , saya menambahkan beberapa info lagi (ini membantu saya di Debian 8).
Folder / clipboard bersama saya berhenti berfungsi karena beberapa alasan (mungkin karena pemasangan patch pada mesin virtual saya).
Memberi saya hasil sebagai berikut:
Solusi bagi saya adalah menghentikan vboxadd dan melakukan pengaturan setelah itu:
Pada titik ini, jika Anda masih mendapatkan kesalahan berikut:
Anda perlu menginstal header linux:
maka Anda dapat menginstal Penambahan Tamu:
dan mulai ulang Linux Anda dengan:
maka Anda akan dapat me-mount folder bersama Anda!
Informasi lebih lanjut (dalam bahasa Prancis), periksa halaman ini .
sumber
apt-get install linux-headers-virtual
membantu dengan Lubuntu 15.04 di VirtualBoxIni adalah satu-satunya solusi yang berhasil bagi saya:
Instal plugin Vagrant: vagrant-vbguest , yang dapat membuat Guest Guest VirtualBox Anda tetap terbarui.
Sumber: https://github.com/aidanns/vagrant-reload/issues/4#issuecomment-230134083
sumber
Ini diselesaikan oleh:
solusi ada di sini: https://gist.github.com/larsar/1687725
sumber
uname -r
dkmsshare
bawah jawaban)Folder bersama sebelumnya berfungsi untuk saya tetapi tiba-tiba berhenti berfungsi (Virualbox - host adalah Windows 7, Tamu adalah OpenSuSe)
modprobe -a vboxguest vboxsf vboxvideo
kemudian
mount -t vboxsf testsf /opt/tsf
(testsf
adalah folder di drive Windows C yang ditambahkan di folder bersama Virtualbox --- dan/opt/tsf
folder di OpenSusesumber
Tuan rumah saya adalah Windows10 Tamu VM saya adalah ubuntu build oleh vagrant. Ini bekerja untuk saya:
sumber
Saya juga memiliki sistem kerja yang tiba-tiba berhenti bekerja dengan kesalahan yang dijelaskan.
Setelah bermain-main di / lib / modules saya akan terlihat bahwa
vboxvfs
module tidak ada lagi. Sebagai gantinyamodprobe vboxsf
adalah mantra yang diperlukan untuk mendapatkan hal-hal dimulai kembali.Tidak yakin kapan perubahan itu terjadi, tetapi hal itu menarik perhatian saya.
sumber
Saya menjalankan VirtualBox 5.1.20, dan memiliki masalah serupa. Berikut adalah url tempat saya menemukan perbaikan, dan perbaikan yang saya implementasikan:
Tautan tersebut memiliki sesuatu yang mirip dengan /usr/lib/VBoxGuestAdditions/other/mount.vboxsf, daripada apa yang saya miliki di kutipan skrip.
Untuk skrip build yang saya gunakan dalam gelandangan untuk tambahan:
https://github.com/rburkholder/vagrant/blob/master/scripts/additions.sh
Tampaknya ada perbaikan di https://www.virtualbox.org/ticket/16670
sumber
The solusi bagi saya adalah untuk memperbarui penambahan tamu
(klik Perangkat -> Masukkan Gambar Penambahan Tamu)
sumber
Mungkin ada kesalahan / pendekatan yang salah dalam dua skenario. Periksa keduanya dan temukan
SCENARIO 1:
Setelah Anda menjalankan VBoxLinuxAdditions.run atau VBoxSolarisAdditions.pkg atau VBoxWindowsAdditions.exe, periksa apakah semua modul telah diinstal dengan benar.
1.1.a. Dalam kasus VBoxLinuxAdditions , jika
membangun modul kernel penambahan tamu VirtualBox gagal,
periksa file log di /var/log/vboxadd-install.log . Jika kesalahan karena versi kernel perbarui kernel Anda dan reboot vm. Dalam hal fedora ,
1.1.b. yum perbarui kernel *
1.1.c.reboot
1.2. Jika tidak ada yang gagal, maka semuanya baik-baik saja. Anda sudah memiliki versi kernel yang diharapkan
SKENARIO 2:
Jika VBoxGuestAdditions terinstal (periksa folder / opt / VBoxGuestAdditions- * ada .... * mewakili versi), Anda harus memulainya sebelum memasang.
2.1. cd / opt / VBoxGuestAdditions - * / init && ./vboxadd start
Anda perlu menentukan id pengguna dan id grup dari pengguna vm Anda sebagai opsi untuk perintah mount.
2.2.a. Mendapatkan uid dan gid dari pengguna:
id -u <'user'>
id -g <'user'>
2.2.b. Mengatur uid dan gid di opsi perintah mount :
mount -t vboxsf -o uid = x, gid = x shared_folder_name guest_folder
sumber
Bagi saya, di mac, ternyata saya memiliki gambar VirtualBox lama yang tersimpan di komputer saya yang tidak memiliki metadata, jadi itu tidak diperbarui ke versi terbaru.
Gambar lama itu memiliki versi yang lebih lama dari plugin vbguest yang diinstal di dalamnya, yang tidak bisa digunakan oleh plugin vbguest yang lebih baru di mesin saya.
Jadi untuk memperbaikinya, saya baru saja menghapus gambar yang menjadi dasar Vagrant saya, dan kemudian Vagrant mengunduh versi yang lebih baru dan itu berfungsi dengan baik.
Anda dapat mengetahui kotak mana yang telah di-cache di mesin Anda dengan menjalankan:
Saya juga telah memutakhirkan plugin vbguest saya dalam upaya saya sebelumnya untuk mendapatkan ini berfungsi, menggunakan proses berikut, tetapi saya tidak berpikir ini membantu. FYI!
Jika Anda mendapati kotak gagal pada tambahan tamu, Anda dapat mencoba melakukan hal berikut untuk memastikan plugin terpasang dengan benar. Ini mengunduh gambar berbasis terbaru untuk sistem Anda (untuk saya CentOS), dan dapat menyelesaikan masalah (itu untuk saya!)
sumber
Di Ubuntu ini berfungsi:
sumber
Punya masalah yang sama dengan VirtualBox 5.0.16 / rXXX
Menginstal VirtualBox 5.0.18 terbaru dan menginstal Vagrant 1.9.3 terbaru, masalah menjadi toodles.
sumber
Saya menambahkan sebagai pengguna root
kemudian
dan skrip sampel
/root/mount-vboxsf.sh
(atur sendiri opsi uid dan gid)Anda perlu menambahkan
sumber
Saya memiliki masalah serupa, periksa tajuk jika tidak cocok lalu jalankan perintah di bawah ini
CentOS: sudo yum memperbarui && sudo yum -y instal kernel-header kernel-devel
sumber
Jika Anda menggunakan Debian:
1) hapus semua paket yang diinstal melalui file ISO Tambahan Guest Virtualbox:
sh /media/cdrom/VBoxLinuxAdditions.run uninstall
2) menginstal paket Virtualbox:
apt-get install build-essential module-assistant virtualbox-guest-dkms virtualbox-guest-utils
Perhatikan bahwa bahkan dengan
modprobe vboxsf
tidak mengembalikan apa pun (sehingga modul dimuat dengan benar),vboxsf.so
akan memanggil nama yang dapat dieksekusimount.vboxsf
, yang disediakan olehvirtualbox-guest-utils
. Mengabaikan yang satu ini akan mencegah Anda memahami penyebab sebenarnya dari kesalahan tersebut.strace mount /your-directory
sangat membantu (Tidak ada file atau direktori pada/sbin/mount.vboxsf
).sumber
Pembaruan melakukan trik untuk saya!
sumber
Di bawah ini dua perintah berfungsi untuk saya.
sumber
Oke semua orang kehilangan fakta dasar.
mkdir /test
- Membuat sub direktori di direktori saat ini.sudo mkdir /test
- Buat direktori di Root.Jadi jika nama direktori yang Anda bagikan adalah
shared
dan Anda lakukan hal berikut:Ini menghasilkan kesalahan ini:
Karena direktori berada di tempat yang salah! Ya itulah yang dikatakan kesalahan ini. Kesalahan tidak mengatakan memuat ulang opsi tamu VBOX.
Tetapi jika Anda melakukan ini:
Maka itu berfungsi dengan baik.
Sungguh mengherankan saya berapa banyak orang menyarankan memuat ulang penambahan tamu Vbox untuk menyelesaikan kesalahan ini atau menulis program yang rumit untuk memecahkan direktori yang dibuat di tempat yang salah.
sumber
mkdir /test
akan membuat direktori / test di /.sudo mkdir /test
akan membuat direktori yang sama, tetapi dimiliki oleh root daripada pengguna saat ini.kernel-devel.x86_64 0:2.6.32-754.11.1.el6
dan menjalankan perintah ini -cd /opt/VBoxGuestAdditions-*/init
dansudo ./vboxadd setup
. Itu berhasil bagi saya.