Comment activer le transfert direct d’un périphérique USB vers une machine virtuelle Hyper-V

Hyper-V se comporte un peu bizarrement avec les périphériques USB. Contrairement à VMware ou Proxmox, il ne facilite pas vraiment l’intégration directe d’une clé USB ou d’un dongle dans une machine virtuelle. Bien sûr, il existe quelques solutions de contournement, comme le mode session amélioré ou certaines manipulations avec RDP, mais globalement, la prise en charge native du transfert USB n’est pas optimale. Cela peut être frustrant car, soyons honnêtes, on aimerait simplement brancher un disque dur externe ou une clé de sécurité USB et qu’ils apparaissent directement dans la machine virtuelle, sans problème.

Après quelques essais, voici ce qui a fonctionné en pratique, moyennant quelques compromis. Si votre machine virtuelle doit accéder directement à un disque dur USB, le mieux est généralement de le connecter à l’hôte, puis de l’« intégrer » comme un disque physique au sein de la machine virtuelle. Pour d’autres périphériques, comme une clé USB, vous pourriez être limité, à moins de trouver une solution de contournement avec des outils tiers. Parfois, activer le mode session étendu permet de faire apparaître quelques périphériques USB supplémentaires, mais ce n’est pas infaillible. Gardez à l’esprit qu’aucune de ces solutions n’est parfaite et que, sur certaines configurations, il faut parfois tâtonner un peu pour obtenir un fonctionnement optimal.

Comment résoudre les problèmes de transfert USB dans Hyper-V

Accéder à un disque dur USB depuis une machine virtuelle Hyper-V

Cette méthode est généralement la plus simple pour les disques externes. Elle fonctionne si votre clé USB est détectée comme un disque permanent et non comme un périphérique amovible (ce qui peut être contraignant, car Windows a tendance à les considérer comme tels).Il s’agit en fait de tromper Windows pour qu’il traite ce disque comme un disque permanent, afin de pouvoir le connecter directement à la machine virtuelle.

  • Branchez la clé USB à l’hôte Hyper-V. Elle devrait apparaître dans la Gestion des disques ( diskmgmt.msc) avec une lettre de lecteur. Si vous ne la voyez pas, vérifiez si le disque est indiqué comme « hors ligne ».
  • Dans la Gestion des disques, cliquez avec le bouton droit sur le lecteur, puis choisissez Hors ligne ; il sera alors possible de le connecter. Sur certaines configurations, la gestion des disques via PowerShell est plus rapide Get-Disk -Number 1 | Set-Disk -IsOffline $true.
  • Ouvrez le Gestionnaire Hyper-V, localisez votre machine virtuelle, puis accédez à ses paramètres. Sous Contrôleur SCSI, ajoutez un nouveau disque et sélectionnez Disque dur physique. Dans la liste déroulante, choisissez le disque que vous venez de mettre hors ligne (il ressemblera à « Disque 1 20, 00 Go »).
  • Démarrez la machine virtuelle et connectez-vous. Dans la machine virtuelle, ouvrez à nouveau la Gestion des disques ( diskmgmt.msc).Le système d’exploitation devrait détecter le nouveau disque. S’il est hors ligne, faites un clic droit dessus et choisissez « En ligne ». Il apparaîtra probablement comme non alloué ; faites alors un clic droit dessus pour lui attribuer une lettre de lecteur ou un point de montage.

Sur certaines configurations, cela fonctionne parfaitement ; sur d’autres, c’est aléatoire. L’important est que le disque soit reconnu comme un disque physique connecté directement à la machine virtuelle. N’oubliez pas : éjectez ou retirez toujours correctement le disque avant de le débrancher du port USB. Sinon, vous risquez de corrompre des données ou de rencontrer des problèmes de démarrage, et personne ne souhaite cela.

Activation du mode session amélioré pour les périphériques USB

Le mode de session amélioré (ESM) permet d’étendre la prise en charge des périphériques USB via l’interface vmconnect. Il s’apparente au protocole RDP, mais pour les machines virtuelles. Toutefois, il ne prend en charge que les systèmes d’exploitation invités Windows, à partir de Windows 8.1 / Windows Server 2012 R2, et sa fiabilité n’est pas garantie pour tous les périphériques. Dans certains cas, il suffit cependant à rediriger certains périphériques USB, tels que les imprimantes, les webcams ou les périphériques de stockage que Windows reconnaît comme Plug and Play.

Pour que cela fonctionne, activez d’abord ESM sur l’hôte Hyper-V via PowerShell :

Set-VMHost -EnableEnhancedSessionMode $true

ou via les Paramètres Hyper-V sous Mode de session amélioré. Redémarrez ensuite le service Gestion des machines virtuelles Hyper-V ( Get-Service vmms | Restart-Service).Assurez-vous que les Services invités sont activés dans l’ onglet Services d’intégration de la machine virtuelle.

Connectez-vous à la machine virtuelle avec vmconnect.exe, cliquez avec le bouton droit sur la machine virtuelle et choisissez Se connecter. Dans la fenêtre de console qui s’affiche, cliquez sur Afficher les options, puis accédez à Ressources localesPlus. Vous pouvez alors sélectionner vos périphériques USB ; s’ils sont branchés, ils devraient maintenant être accessibles à la machine virtuelle. Remarque : certains périphériques peuvent ne pas fonctionner, notamment si Windows ne reconnaît pas le matériel ou si le pilote n’est pas compatible.

Autres options et solutions de contournement

Un dernier point important : des outils tiers comme VirtualHere USB Server ou usbip (principalement sous Linux) permettent de faire transiter des périphériques USB via un réseau IP. Bien que ces solutions ne soient pas parfaites, elles constituent parfois le seul moyen de rendre les périphériques USB accessibles de manière fiable au sein des machines virtuelles. Généralement, on installe un petit serveur exécutant ces outils sur l’hôte ou le réseau, puis on connecte la machine virtuelle à ce périphérique via TCP/IP. Ce n’est pas aussi simple que le plug-and-play, mais c’est souvent la seule solution pour les périphériques plus complexes.

Honnêtement, tenter de faire fonctionner parfaitement le transfert USB dans Hyper-V donne parfois l’impression de courir après un fantôme. C’est un peu une solution à moitié satisfaisante, mais avec un peu de patience et ces astuces, vous vous rapprocherez au moins du résultat souhaité. Parfois, une combinaison de méthodes est la plus efficace : par exemple, rediriger un disque de cette manière, puis activer la prise en charge étendue des sessions pour les autres périphériques. Mais ne vous attendez pas à ce que tout fonctionne parfaitement à chaque fois.