Использование USB в VirtualBox

Пишу для себя, что б не забыть, но может еще кому-то пригодится.

Для начала расскажу что такое VirtualBox.
VirtualBox - виртуальная машина, имеющая статус Open Source. Работает на системах Windows, MacOS X, Linux.
Из особенностей, отличающих программу от VmWare:

  • Возможность вручную выставлять размер видеопамяти (от 1 до 128 метров. Если они есть конечно :)
  • Работа с устройствами, подключаемыми к USB.

более подробно тут:
http://ru.wikipedia.org/wiki/VirtualBox
http://www.ixbt.com/cm/virtualization-virtualbox.shtml

официальный сайт тут:
http://www.virtualbox.org/

Ну а теперь про наших баранов - поддержке USB.
Пользователи Ubuntu/Debian наверняка заметили, что в VirtualBox "из коробки" не заводится поддержка USB-устройств.
При попытке включить USB выдается сообщение об ошибке:
Could not load the Host USB Proxy Service (VERR_FILE_NOT_FOUND). The service might be not installed on the host computer.

Либо, как вариант, этого сообщения нет, подключенные usb-устройства видны в интерфейсе virtualbox'а, но не активны.

Проблема в отключенной по умолчанию usbfs и правах доступа. Решение, конечно же, есть.
Вероятно, это решение справедливо и для других дистрибутивов в случае возникновения такой проблемы.
Необходимо проделать следующее:

Шаг 1.
Необходимо прописать права группы для USB-устройств, в которую включен тот пользователь, которым логинимся при входе в систему в /etc/udev/rules.d/40-permissions.rules (Для Debian - это файл /etc/udev/rules.d/020_permissions.rules). Лично я использую группу vboxusers, которую мы должны были настроить после установки самой программы VirtualBox. Редактировать файл нужно своим любимым редактором, но с полномочиями суперпользователя:

Ubuntu:

$ sudo joe /etc/udev/rules.d/40-permissions.rules

Debian:

$ sudo joe /etc/udev/rules.d/020_permissions.rules

В этом файле нам необходимо строки

# USB devices (usbfs replacement)
SUBSYSTEM=="usb_device", MODE="0664"

изменить на

# USB devices (usbfs replacement)
SUBSYSTEM=="usb_device", GROUP="vboxusers", MODE="0664"

А если точнее, то всего лишь добавить группу, членом которой является наш пользователь.

Шаг 2.
Правим файл /etc/init.d/mountdevsubfs.sh, как всегда с правами root-а

$ sudo joe /etc/init.d/mountdevsubfs.sh

Для Ubuntu:
Найдите строку # Magic to make /proc/bus/usb work и следующие ниже нее строки раскомментировать (убрать значок # в начале сток). В итоге у нас должно получиться, что-то типа этого (фрагмент файла):

#
# Magic to make /proc/bus/usb work
#
mkdir -p /dev/bus/usb/.usbfs
domount usbfs "" /dev/bus/usb/.usbfs -obusmode=0700,devmode=0600,listmode=0644
ln -s .usbfs/devices /dev/bus/usb/devices
mount --rbind /dev/bus/usb /proc/bus/usb

Для Debian:
В функцию do_start () в самый низ добавьте:

domount usbfs usbdevfs /proc/bus/usb -onoexec,nosuid,nodev

а потом, для Debian, в файл /etc/fstab добавьте строку:

none /proc/bus/usb usbfs rw,user,devgid=1001,devmode=0666 0 0

Все, после этих нехитрых операций надо просто перезагрузить систему и USB в VirtualBox будет работать.

использованы материалы:
Поддержка USB в VirtualBox
Использование USB в VirtualBox
Debian Etch USB Support and Shared Folder

Изображение пользователя Damphil.

Санёк ты говоришь Бокс лучше чем Варе ???

я не говорю - я УТВЕРЖДАЮ!
тем более что варя платная, а бокс халявный.
бокс, кстати, пошустрее и полегче вари.
между прочим 4 сентября вышла версия 2.0.0
http://www.virtualbox.org/wiki/Downloads

Изображение пользователя Damphil.

вару можно крякнуть, не проблема с платой
но, возьму на заметку.
..так случилось что приходится возится с этой дрянью (:

я вару где-то месяца три использовал, пока с боксом не познакомился.
и вот уже почти с год именно на нем и сижу.
кстати, двух человек с вари на бокс уже переманил. обратно на варю они уже не желают перелазить :)

Изображение пользователя kieshiro.

а мне в VirtualBox не понравилось то что нельзя использовать физический привод.. только виртуальный..или я в нём не разобрался просто ине нашёл как виртуальной машиной увидеть фаилы нах-одящиесе на физическом диске...сеть меж ними шоли виртуальную поднимать?..

как использовать физический привод я незнаю. мне это пока без надобности было.
(кстати, а VMware это умеет?)
а вот увидеть файлы, находящиеся на жестком диске очень просто:
достаточно настроить "общие папки".
свойства виртуальной машины -> "общие папки" -> "добавить"

Изображение пользователя kieshiro.

ага спасибо.. разобрался, действительно довольно просто..
кстаи привод увидело нада было указать привод и включить возможность управления физическим устройством..

...то я просто линуху с диска стартовал на виртуальной машине.. нада ж было както её запустить с диска..
оказалось всё просто ))

хорошая прожка =)

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".