Contenu | Rechercher | Menus

Ceci est une ancienne révision du document !



Les périphériques USB avec VirtualBox

Cette page n'est qu'une annexe destinée à alléger la page principale de VirtualBox .

Ubuntu 9.04 - Jaunty Jackalope - VirtualBox 3

FIXME : Les périphériques USB fonctionnent parfaitement après installation si l'on déclare l'utilisateur courant dans le groupe "vboxusers" ; donc toutes les modifications, concernant l'USB, qui suivent sont inutiles dans ce cas précis ! FIXME : Il n'est apparemment plus non plus nécessaire de déclarer l'utilisateur "root" dans le groupe "vboxusers"

L'usb n'est pas utilisable d'origine dans ubuntu ! Référez vous à la Partie activation de l'usb un peu plus bas !

Pour voir les périphériques USB dans votre OS Guest, il vous suffit de cocher « Enable USB Controller » avant de lancer votre machine virtuelle.

VirtualBox offre la possibilité de filtrer les périphériques USB (rendre disponible certains périphériques USB dans l'OS Guest). En clair, cette fonction sert à monter automatiquement les périphériques lors du démarrage du guest.

Il faut d'abord peupler la liste des périphériques et leurs caractéristiques dans le champ ad hoc. Si le périphériques USB est connecté et monté dans l'OS Host, il suffit de cliquer sur « Ajouter » (à droite de la zone de filtres) les champs « Filtre USB » se remplissent automatiquement. Si non, il faudra entrer les informations à la main dans les champs.

La case à cocher à gauche du périphérique déclaré précédemment permet (si cochée) de monter automatiquement le périphérique dans l'OS Guest lors de sa connexion.

Attention, le périphérique n'est disponible que dans un OS à la fois (l'OS Host ou un des OS Guest). Ceci a des conséquences.

Par exemple, si vous démarrez votre OS Guest alors que votre clé USB (périphérique USB déclaré et coché dans « USB controller ») est en cours de transfert sur votre OS Host, ce transfert sera interrompu de manière « sauvage » (sans éjection). Cette fonction automatique est donc à utiliser avec prudence.

Si un périphérique USB n'est pas déclaré dans le champ filtre (ou est déclaré mais avec la case ad hoc décochée) et s'il est monté dans l'OS Host, il apparaitra dans la liste déroulante en bas à droite de la fenêtre du Guest (le sigle USB)une fois l'OS Guest lancé et pourra être monté d'un simple clic si nécessaire. Il se retire (virtuellement) par la même manipulation et est de nouveau disponible pour le Host.

Activation de l'usb

Si la fonction usb n'apparaît pas dans les options ou que vous obtenez un message du genre :

Could not load the Host USB Proxy Service (VERR_FILE_NOT_FOUND). The service might be not installed on the host computer.

Commun à Ubuntu Gutsy et Hardy

FIXME : Cette section semble inutile : vous devriez pouvoir passer directement à la partie Hardy ou Gutsy.

Modifiez le fichier /etc/init.d/mountdevsubfs.sh

Changer cette ligne (Ligne 40~):

#
# 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

par :

#
# 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

Ubuntu Hardy & Intrepid

 grep vbox /etc/group
 vboxusers:x:124:ionstorm

Repérer le n° après le x (ici, 124, mais il sera peut-être différent chez vous)

 sudo gedit /etc/fstab

Ajouter ces 2 lignes à la fin, en remplaçant au besoin 124 par votre n° :

## usbfs is the USB group in fstab file:
none /proc/bus/usb usbfs devgid=124,devmode=664 0 0
 sudo gedit /etc/init.d/mountkernfs.sh

Rajouter ces lignes après "do_start () {" en remplaçant au besoin 124 par votre n° :

## Mount the usbfs for use with Virtual Box
domount usbfs usbdevfs /proc/bus/usb -o noexec,nosuid,nodev,devgid=124,devmode=664

Allez dans Administrations–> Utilisateurs et Groupes –> Gérer les Groupes

Assurez-vous d'avoir les droits sur vboxusers en cliquant sur propriétés et en cochant l'utilisateur approprié

Redémarrer ubuntu.

Ubuntu Gutsy

Modifiez aussi la ligne du fichier /etc/udev/rules.d/40-permissions.rules

Changer cette ligne (Ligne 67~):

USB devices (usbfs replacement)
SUBSYSTEM==”usb_device”, MODE=”0664″

par celle ci:

# USB devices (usbfs replacement)
SUBSYSTEM==”usb_device”, GROUP=”usbusers”, MODE=”0664″

Allez ensuite dans système → administration → Utilisateurs et groupes

cliquez sur Gérer les groupes puis ajouter un groupe

Remplissez la première ligne par :

usbusers

et cochez les utilisateurs qui doivent être membres de ce groupe.

ensuite vérifier le group_id crée pour le groupe "usbusers", grâce à la commande:

grep 'usbusers' /etc/group

Notez le group_id retourné la commande précédente, qui a la forme suivante:

usbusers:x:[votre numéro de groupe]:[La liste des utilisateurs membre du groupe]

ensuite ajoutez cette ligne au fichier /etc/fstab :

none /proc/bus/usb usbfs devgid=<GROUP_ID>,devmode=664 0 0

Avec <GROUP_ID> l'identifiant de groupe retourné par la commande précèdent.

Redémarrer Ubuntu.

Ubuntu 6.06 LTS

Si, au démarrage du périphérique, une fenêtre apparaît, vous demandant de vérifier les droits usbfs (exemple : Not permitted to open the USB device, check usbfs options), il vous faut :

  • vérifier que le groupe usbfs existe et que vous êtes membre de ce groupe. Dans une console, tapez :
grep 'usbfs' /etc/group

qui, si tout est correctement paramètré, devrait vous retourner :

usbfs:x:[un numéro]:[La liste des utilisateurs membre du groupe]

- Si le terminal ne vous affiche rien, le groupe usbfs n'existe pas. Lisez le paragraphe précédent.

- Si le groupe existe mais que votre nom d'utilisateur n'apparaît pas à la fin de la ligne, tapez dans votre console ouverte :

sudo  addgroup $LOGNAME usbfs

- Si tout est correct, notez le nombre que le terminal a affiché, puis éditez le fichier /etc/fstab. Recherchez la ligne :

none  /proc/bus/usb  usbfs  devgid=<un_nombre>,devmode=664  0  0 

et assurez-vous que la valeur de devgid correspond bien à ce que vous avez noté. Sinon, remplacez la valeur, enregistrez puis redémarrez votre ordinateur (le vrai, pas le virtuel).

Problème 3

Si ça ne marche toujours pas, essayez de modifier le fichier /etc/udev/rules.d/40-permissions.rules.

Changer cette ligne (Ligne 67~):

SUBSYSTEM=="usb_device", MODE="0664"

par :

# Edited to enable USB devices with VirtualBox
# Original line commented out
# SUBSYSTEM=="usb_device", MODE="0664"
SUBSYSTEM=="usb_device", MODE="0666"

le « # » est au cas où vous voudriez revenir en arrière

Modifiez aussi la ligne du fichier /etc/fstab rajoutée dans la solution 1 :

none  /proc/bus/usb  usbfs  devgid=<NoGroupefstab>,devmode=666  0  0 

Le devmod doit être cohérent : 666 au lieu de 664.

Ubuntu toutes versions

FIXME Est-ce encore d'actualité ?

Problème 4

Le périphérique n'est toujours pas reconnu? Peut-être avez vous coché trop tardivement la case "enable USB" après le lancement de la VM? Rien n'est perdu. Revenez sur VirtualBox, supprimez (delete) la VM en question (en commençant par les snapshots). Pas d'inquiétude, le VDI est sauvegardé par défaut. Recréez une nouvelle VM en chosisissant comme disque le VDI sauvegardé (et non un nouveau disque), cochez bien toutes vos options et démarrez la VM. Cela devrait normalement suffire…

Scanners USB

Ce qui suit n'est plus d'actualité, au moins pour le scanner Epson V100 Photo, depuis la sortie fin décembre 2007 de la version 1.5.4 de VirtualBox : cette version corrige les problèmes rencontrés sur la version 1.5.2.

Certains scanners ont des problèmes avec la version 1.5.2 de VirtualBox. C'est en particulier le cas du scanner Epson V100 Photo mais aussi de scanners Canon ou HP (source : forum VirtualBox). En ce qui concerne le Epson V100 Photo il est bien reconnu sous XP, mais, lorsque l'on lance une pré-visualisation ou un scan à partir du programme Epson Scan on a un message d'erreur indiquant que le scanner ne répond pas et le programme plante.

Un retour à la version 1.4 de VirtualBox permet de contourner ce problème si, bien sûr, l'on n'a pas besoin aussi d'une fonctionnalité nouvelle de la version 1.5.2.

Pour les versions antérieures à Gutsy il suffit de télécharger ici le paquet correspondant à votre version d'Ubuntu et de l'installer après avoir désinstallé la version 1.5.2.

Pour Gutsy, comme il n'existe pas de paquet, il faut utiliser le fichier .run (disponible ici) qui s'installe avec la commande :

sudo ./VirtualBox_1.4.0_Linux_x86.run install

Lors du passage de 1.5.2 à 1.4 on peut continuer d'utiliser la même image disque (fichier .vdi). Par contre il faudra créer une nouvelle machine virtuelle car le format des fichiers xml ou sont décrits les machines virtuelles n'est pas le même entre les 2 versions. Lors de la création de cette nouvelle machine virtuelle il suffira de choisir le fichier vdi existant au lieu d'en créer un nouveau.



Le contenu de ce wiki est sous licence : CC BY-SA v3.0