在 ubuntu 12.04 中通过 udev 在 VirtualBox 中自动挂载 USB 驱动器

在 ubuntu 12.04 中通过 udev 在 VirtualBox 中自动挂载 USB 驱动器

如何在 ubuntu 12.04 中将 USB 驱动器直接自动安装到 VirtualBox

答案1

我设法自己解决了这个问题。这仅适用于 USB 存储(我需要它)

请记住在您的 Vbox 机器上创建一个 USB 过滤器,它可以接收所有 USB 设备并使其可用。

在 /etc/udev/rules.d 中创建 udev 规则文件

我将其命名为 80-automnt.rules

内容:

DRIVERS=="usb-storage", RUN+="/etc/udev/vboxusb.sh %p"

创建 /etc/udev/vboxusb.sh 文件。

内容:

#!/bin/bash
vendorid=`/sbin/udevadm info --query=all --path=$1 | sed 's/E: -*//g' | grep "ID_VENDOR_ID" | awk -F"=" '{print $2}'`
modelid=`/sbin/udevadm info --query=all --path=$1 | sed 's/E: -*//g' | grep "ID_MODEL_ID" | awk -F"=" '{print $2}'`

set `/usr/bin/lsusb -d $vendorid:$modelid | sed 's/:.*//g'`
while [ ! -z "$1" ]; do
  case $1 in
    Bus) shift
    busdevice="$1"
    ;;
    Device) shift
    busdevice=${busdevice}"/$1"
    ;;
  esac
  shift
done
if [ ! -z "$busdevice" ]; then
  address=$(VBoxManage list usbhost | grep "Address:" | grep $busdevice | sed -e 's/Address://' -e 's/^[ \t]*//')
  if [ ! -z "$address" ]; then
    su - YOURVBOXUSER -c "VBoxManage controlvm YOURVBOXNAME usbattach $address"
  fi
fi

答案2

据我了解,Virtualbox 有两个版本。一个是开源的,无法自动挂载 USB 设备。另一个版本有免费软件许可证(只能从 Oracle 网站下载),可以自动挂载 USB 设备。我不知道它是否真的有效,但请看一下

祝你好运!

相关内容