Pourquoi mon Hyper-V convertit le disque en SCSI


0

J'ai un disque SATA et j'ai installé Windows 10 dessus. Après avoir activé Hyper-V, j'ai créé des ordinateurs virtuels. Cependant, tous les ordinateurs virtuels voient un disque SCSI et je ne vois pas comment le changer. Même la partition parente (voir https://en.wikipedia.org/wiki/Hyper-V#Architecture ) uniquement voir le disque SCSI; Je l'ai vérifiée à partir du Gestionnaire de périphériques, dans l'onglet Détails, propriété Ids de matériel. Ça dit

SCSI\DiskSamsung_SSD_850_PRO_256G

Tandis que mon disque dur devrait être disponible uniquement en SATA. Est-il possible de demander à Hyper-V d'émuler une interface SATA?

plus de fond

J'exécute Arch Linux en tant qu'invité. Cela montre que j’ai besoin d’un pilote pour le périphérique wd719x; Je suppose qu’il est imité par Hyper-V. Il s’agit d’un très vieux disque dur de Western Digital, et l’installation de pilote officiel peut résoudre ce problème. Cependant, je suis inquiet car la série WD719x n’est plus prise en charge par Wester Digital (même le pilote a été supprimé du site Web). Cela semble très traditionnel, ce dont je n’ai pas besoin parce que je crée une nouvelle machine virtuelle, mais n’exécute pas une machine virtuelle créée il ya 10 ans.


Est-ce que ça importe? Le protocole SCSI a toutes les mêmes caractéristiques (et probablement plus) que ATA.
grawity

Les ordinateurs virtuels ne voient pas votre disque physique, ils voient ce que Hyper-V émule, les interfaces IDE et SCSI. Sauf si vous essayez de faire des tests spécifiques, peu importe qu'il s'agisse de SATA ou de SCSI. La partition parente est votre système d'exploitation hôte. Le matériel réel sera donc visible. Si vous pouvez publier une capture d'écran de votre matériel identifié de manière erronée, j'aimerais le voir car cela ne peut vraiment pas se produire, sinon votre système ne pourrait pas démarrer (à moins que votre BIOS ne fasse quelque chose comme créer une matrice RAID à partir de vos disques).
essjae

@grawity a expliqué ma préoccupation dans la question mise à jour.
Franklin Yu

@essjae Le SCSI est émulé par l'hyperviseur. Je pense que Hyper-V voit très bien les disques SATA, mais je ne sais pas comment confirmer, car Hyper-V (en tant qu’hyperviseur de type 1) peut contrôler les éléments à exposer. Si vous souhaitez toujours une capture d'écran, quelles informations spécifiques sont intéressantes? La machine appartient à mon employeur, alors…
Franklin Yu

Utilisez-vous une machine virtuelle gen1 ou gen2? Attachez-vous un disque physique entier à la machine virtuelle ou juste un fichier .vhd? Notez que wd719x est un SCSI adaptateur hôte , pas un disque.
grawity

Réponses:


0

Je connecte un disque dur virtuel à la machine virtuelle

Ensuite, vous n'attachez pas votre disque physique de quelque manière que, et son transport est complètement hors de propos. L'hyperviseur lui-même agit en tant que contrôleur de disque des ordinateurs virtuels et n'interagit pas avec le stockage physique au-delà de la lecture / écriture de fichiers. (Il n'est pas rare de stocker des disques durs virtuels sur un serveur de fichiers SMBv3 externe ...)

J'exécute Arch Linux en tant qu'invité. Cela montre que j’ai besoin d’un pilote pour le périphérique wd719x; Je suppose qu’il est imité par Hyper-V.

Je vais deviner que cela n'a rien à voir avec le matériel de votre VM, qu'il soit émulé ou non. Vous voyez probablement un tas d’avertissements de "micrologiciel manquant" lorsque Mkinitcpio construit son image "de repli" initramfs.

Le initramfs standard est adapté au système exact sur lequel il est construit; la variante "fallback" ignore toute détection automatique de périphérique et ajoute autant de pilotes de périphérique de bloc que possible (de sorte que le même initramfs puisse être démarré sur de nombreuses machines différentes), même si aucun système n'est connecté au système actuel.

En réalité, si vous avez sélectionné un contrôleur IDE / ATA dans Hyper-V, vous obtiendrez un système assez standard. ata_piix (comme on peut le voir dans lspci -v ).

Si vous utilisez une machine virtuelle "Génération 2" et / ou si vous ajoutez un contrôleur SCSI, vous obtiendrez un contrôleur SCSI natif basé sur VMBus via le hv_storvsc pilote (mécanisme de Microsoft similaire à virtio ).

Même la partition parent ne voit que le disque SCSI; Je l'ai vérifiée à partir du Gestionnaire de périphériques, dans l'onglet Détails, propriété Ids de matériel. Ça dit

SCSI\DiskSamsung_SSD_850_PRO_256G

Cela semble être normal en mode AHCI - bien que je n’aie trouvé aucune explication officielle, du moins en ce qui concerne les chauffeurs propriétaires.

(D'après ce que j'ai pu comprendre: la seule alternative aurait été IDE\, mais ce n’est pas vraiment un bon choix - par exemple il suppose la présence de canaux IDE primaire / secondaire et de ports maître / esclave, qui n'existent ni dans SATA / AHCI. Les développeurs Windows ont peut-être découvert que le mappage de SATA sur SCSI est Plus facile que le mapper à IDE / PATA?

Quoi qu'il en soit, Windows ne serait pas le premier système d'exploitation à le faire - Linux présente les périphériques IDE / ATA comme s'ils étaient SCSI depuis la publication de la version 2.6 du noyau vers 2004).

Tant que le périphérique parent apparaît en tant que contrôleur SATA AHCI (à l'aide de storahci, msahci ou du pilote IRST d'Intel), vous vous débrouillez.


Donc, le contrôleur de disque dur fourni par Hyper-V ne peut être que IDE (ATA) ou SCSI? Pourquoi il n'y a pas de contrôleur SATA? Est-ce trop compliqué pour un hyperviseur?
Franklin Yu

Si vous parlez d’un contrôleur SATA AHCI, probablement parce qu’il n’ya aucun avantage réel pour les machines virtuelles si elles ont déjà SCSI, etc.? Dans VirtualBox, vous avez un large éventail de choix de compatibilité de système d’exploitation, etc., mais je dirais que HyperV a des objectifs opposés - au point que les machines virtuelles Gen2 n’ont même pas tous les périphériques PCI, juste le propriétaire VMBus.
grawity
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.