
我有一個 Ubuntu 16.04 系統和一個來自我以前的電腦的 Win 7 vdi。我第一次安裝 virtual box 時安裝的是 5.0.4.24。我安裝了同一版本的擴充功能和來賓新增。除了 USB 之外,我在虛擬機器中一切正常。我嘗試了 2.0 和 3.0,但都沒有幫助。我用谷歌搜尋了一下,發現我需要將我的用戶加入 vboxusers 群組。我就是這麼做的。現在我可以在設備清單中看到 USB 設備,但它們沒有安裝在我的虛擬機器上。我還需要做什麼?
更新1:我要補充的是,並非所有 USB 設備都可以使用,因為我的滑鼠和鍵盤仍然可以工作,但任何儲存裝置(4 個不同品牌的拇指驅動器和 1 個外部硬碟)都無法被識別。更奇怪的是,當虛擬機器位於我的舊機器上時,至少有 2 個拇指驅動器和外部驅動器可以工作。
更新2:我沒有提到,在嘗試新增 vboxusers 群組後,我將所有內容更新到 5.1 Virtualbox,但它仍然無法正常運作。
更新3:我嘗試了克勞德的解決方案,但沒有用。
我懷疑我的虛擬機器不知何故損壞了,所以我啟動了另一個虛擬機器(這次是 Windows 10),並且所有 USB 都可以在該虛擬機器上運行。我一直在慢慢遷移所有檔案並在新虛擬機器上重新安裝應用程式。
答案1
如果您還沒有找到解決方案。我在 Ubuntu 16.04 作為主機和 XP 作為訪客時遇到了同樣的問題。該問題的已知解決方案均無效。我在本頁的最後找到了正確的路徑: https://bugs.launchpad.net/ubuntu/+source/virtualbox/+bug/1576768 這讓我看到了這篇文章: https://phobosk.wordpress.com/2012/11/11/howto-fix-a-virtualbox-failed-to-access-the-usb-subsystem-error/
綜上所述,原因是 inotify 對 max_user_watches 的限制太低。
解決方法:首先,將以下行新增至 /etc/sysctl.conf
fs.inotify.max_user_instances = 256<br />
fs.inotify.max_user_watches = 16384<br />
fs.inotify.max_queued_events = 32768<br />
然後重新啟動流程若要使用命令使變更生效:
sudo service procps restart
就這樣做到了!
答案2
您可以在兩個位置啟用 USB 裝置。
在您的來賓作業系統中,轉到“裝置”選單,然後轉到“USB”。在存在的 USB 設備清單中,選擇您想要連接的設備,這將在該設備名稱前面放置一個複選標記。如果需要,Windows 將安裝該裝置的驅動程式。
在來賓作業系統的主設定中(如果來賓作業系統已關閉),您可以選擇USB,並且在此處顯示的USB 裝置清單中,您選取的任何核取方塊都會在來賓作業系統啟動時自動連接。
請記住,只要 VM 正在運行,主機作業系統就無法使用連接到來賓作業系統的任何 USB 裝置。
如果您還有更多問題,請詢問。乾杯,艾爾
答案3
我在裝有 Virtualbox 5.1/5.2 的 Windows 7 主機上的 Fedora 26/27 上遇到了這個問題。問題在於 Windows「UpperFilter」USB 驅動程式和 Virtualbox(與來賓作業系統無關;適用於任何 Linux 發行版),這顯然是已知的早在7年前。如果其他 USB 解決方案都不起作用,希望這對您有用。請參閱下面的解決方案
例子:
- 從裝置 -> USB -> USB 隨身碟中選擇設備
- 什麼都沒發生
- 再次檢查“裝置”->“USB”選單,USB 磁碟機未勾選,但顯示“已擷取”
- 但是,將滑鼠懸停在右下角的 USB 圖示上會顯示“沒有裝置”
- 檢查
VBoxManage.exe list usbhost
主機顯示USB設備+“已捕獲” - 但虛擬機器看不到任何東西
- 嘗試再次新增裝置(透過裝置 -> USB 選單)會出現「忙於上一個請求」錯誤
來自其他執行緒的解決方案不起作用:
- 成功安裝了來賓新增(例如共用資料夾工作(讓我自己加入該
vboxsf
群組)) - 沒有
vboxusers
群組,我自己創建群組(按照某些線程的建議)並添加我自己沒有做任何事情 - 嘗試使用USB過濾器(空白過濾器和設備過濾器)
- 安裝了擴充包,在機器設定中嘗試了預設(1.0)、2.0和3.0 USB
- 嘗試了 USB 3.0 和 2.0 裝置與 3.0 和 2.0 連接埠的所有 4 種組合(Virtualbox 從版本 5 IIRC 開始支援 USB 3.0)
解決方案
在此 virtualbox bug 報告的註釋 21 和 26 中找到了解決方案:https://www.virtualbox.org/ticket/3033#comment:21
社群中有一些評論指出 VirtualBox USB 支援不適用於 Windows 主機上安裝的上層過濾器驅動程式。
- 開普勒2 7年前
解釋來自 nayasis 的解決方案https://forums.virtualbox.org/viewtopic.php?f=6&t=39104:
- 編輯註冊表:打開
regedit.exe
(在開始功能表中搜尋),找到HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Class\{36FC9E60-C465-11CF-8056-444553540000}
(點擊它) - 刪除
UpperFilters
右側條目 - 可能手動重新運行 Virtualbox 驅動程式:轉到
C:\Program Files\Oracle\VirtualBox\drivers\USB\filter
,右鍵單擊VboxUSBMon.inf
並“安裝”(我這樣做是為了安全,但我不確定是否有必要;似乎有些人只需要刪除註冊表項)- 這個Windows線程
LowerFilters
如果條目也存在,建議也將其刪除。我沒有LowerFilters
- 這個Windows線程
- 關閉您的虛擬機,刪除所有過濾器
- 重啟
- 插入 USB,啟動 VM,希望您現在可以新增 USB。 AFAIK,過濾器僅在自動新增 USB 裝置時才需要。它不應該影響您是否可以成功添加設備
找到所有其他不是問題的解決方案是非常令人沮喪的。希望這對未來的人有幫助!