Konfigurace sériového portu Hyper-V: Pokyny krok za krokem

Už jsme si dali tu práci a prošli způsoby, jak přistupovat k COM portům ve virtuálním stroji (článek najdete zde.) I když je Serial to Ethernet Connector skvělým řešením pro průchod sériového portu COM v Hyper-V, stojí za to podívat se na několik dalších možností, jak přidat port COM k sériovému portu Hyper-V — které si níže probereme.

Jak přistupovat k sériovému portu v Hyper-V

Pokud se potřebujete připojit k sériovému portu virtuálního počítače, budete potřebovat Přesměrovač sériového portu. Postupujte podle těchto kroků, abyste se dozvěděli, jak tento nástroj používat a jak jej použít k přístupu k virtuálnímu portu:

1. Získejte Serial to Ethernet Connector na virtuálním počítači i na hostitelském operačním systému.

2. Začněte tím, že otevřete aplikaci ve VM. Otevřete nabídku „Připojení“ a vyberte „Nové připojení k serveru“.

Nové připojení k serveru

3. Vyplňte potřebné informace o portu, který budete sdílet, včetně jeho čísla a portu TCP použitého pro připojení.

Poznámka: zaškrtněte políčko, aby byl port virtuální.

sériový na ethernetový konektor – vytvořit serverový COM port

4. Stiskněte „Vytvořit“.

5. Nyní na hostitelském počítači přepněte na Serial to Ethernet. Otevřete „Vzdálená připojení“.

6. Pokud bylo vše správně nastaveno, měl by se port virtuálního stroje objevit v seznamu. Vyberte jej.

7. Nastavte možnosti připojení klienta, například port, který bude použit k příjmu dat.

8. Stiskněte znovu „Vytvořit“ a máte hotovo.

Video tutoriál:

Jak připojit sériový hardware k virtuálnímu stroji pomocí PipeDream

Pro uživatele virtuálních strojů, kteří chtějí přidat port COM k sériovým portům Hyper-V, je PipeDream ideální volbou. Tento nástroj pro sériový port v Hyper-V běží na stejném serveru, který hostuje Hyper-V (tj. na virtualizačním hostiteli), a překlenuje tak mezeru mezi virtuálními stroji a sériovými porty.

PipeDream funguje tak, že přenáší data přijatá ze sériového hardwaru (cokoli je připojeno do portu COM) a pomáhá virtuálnímu stroji jej rozpoznat a získat k němu přístup (a naopak).

PipeDream navíc nepotřebuje ke spuštění na serveru žádný prvek na straně klienta, což činí průchod podpory sériových portů Hyper-V ještě pohodlnějším. PipeDream nevyžaduje žádnou instalaci (zařízení, softwaru ani čehokoli jiného) na zúčastněném virtuálním stroji (virtuálních strojích) — čímž maximalizuje kompatibilitu se staršími OS/softwarem a spolehlivou podporu pro operační systémy XP (a starší).

PipeDream umožňuje hostujícím virtuálním počítačům ovládat sériové porty na hostiteli virtualizace (nebo na jiných počítačích). Tento nástroj funguje díky podpoře pojmenovaných rour v Hyper-V, což znamená, že pro komunikaci není potřeba síťové připojení. Stačí v Hyper-V vytvořit název roury a PipeDream se po spuštění programu PipeDream připojí k sériovému zařízení hostujícího VM.

Zřeknutí se odpovědnosti: Software PipeDream pro sériové porty v Hyper-V je kompatibilní s Microsoft Hyper-V, ale jde o nástroj třetí strany bez jakékoli spojitosti se společností Microsoft. Naše použití termínu „Hyper-V“ nemá za cíl schvalovat ani navazovat spojení se společností Microsoft Corporation.

Pro ty, kteří mají virtuální počítač Hyper-V 1. generace

Postupujte podle níže uvedeného podrobného průvodce a zjistěte, jak přidat port COM do Hyper-V.

1. Spusťte Správce Hyper-V a otevřete nastavení hostovaného počítače (VM, kterou chcete nastavit);

2. V novém okně vyberte COM1 nebo COM2 (umístěné v levém seznamu hardwaru);

3. Toto je sériový port umožňující virtuálnímu stroji přistupovat k sériovému zařízení dle vašeho výběru (tj. port, který se zobrazí ve VM, se může lišit od fyzického sériového portu hostitele);

4. Připojte pojmenovanou rouru „PipeDream“ k sériovému portu hosta (provedete to kliknutím na Pojmenovaná roura a zadáním „PipeDream“ jako názvu roury — viz obrázek níže pro referenci);

5. Pro ty, kteří mají sériové zařízení na vzdáleném počítači, se ujistěte, že je zaškrtnuto políčko „Vzdálený počítač“, a zadejte název počítače;

6. Klikněte na OK;

název potrubí

Jak nakonfigurovat pro virtuální počítače Gen-2

Pro ty, kteří provozují virtuální počítače Gen-2, nejsou výše zobrazená nastavení kanálu konfigurovatelná pomocí GUI, proto musí uživatelé použít příkazy PowerShell.

1. Otevřete relaci Powershell;

2. Spusťte Get-VM;

3. Zkopírujte název virtuálního počítače s požadovaným sériovým portem;

4. Spusťte Set-VMComPort -Number < 1 nebo 2, pro sériový port COM1 nebo COM2 > -Path \.pipePipeDream

5. Pomocí Get-VMComPort potvrďte vytvoření roury (viz snímek obrazovky zobrazený níže, kde je pro příklad použit virtuální počítač s názvem „SillyRabbit“).

Potvrdit vytvoření pipe

Ale pro virtuální počítače Gen 2 nejsou žádné porty COM, že…?

Upřímně řečeno, odpověď je kombinace ano i ne (přičemž „ne“ je zaměřeno hlavně na výchozí možnosti průchodu sériového portu v Hyper-V.) Skvělou zprávou je, že to lze upravit!

Níže uvedené snímky obrazovky jsou z virtuálního počítače s Windows 8 (konkrétně s využitím média vytvořeného v předchozí části, kde byl přidán ovladač pro softwarovou klávesnici.)

V níže uvedeném příkladu uvidíte, že nastavení základního virtuálního počítače gen-2 postrádá možnosti portu COM.

Nastavení Hyper v

Důvodem je to, že bez ohledu na to, zda jsou sériové porty k dispozici, nebo ne, Správce Hyper-V Gen-2 nikdy nezobrazuje porty COM.

Níže se podíváme na to, co k tomu říká PowerShell:

PowerShell

Všimněte si, že PowerShell zobrazuje dva dostupné porty COM? Pokud však otevřete Správce zařízení hostovaného počítače, nebudou pro VM uvedeny žádné porty COM.

Podívejte se na níže uvedený příklad (s použitím COM1), jak nakonfigurovat cestu k rource pro porty COM, zatímco je virtuální počítač spuštěný:

nastavit cestu potrubí

Jak již bylo zmíněno dříve, při kontrole Správce zařízení v hostovaném systému se COM1 nezobrazuje – ale jakmile je virtuální počítač vypnut a znovu spuštěn, požadovaný port COM bude nyní k dispozici v seznamu (viz níže).

Správce zařízení port COM

Pro ty, kteří mají zkušenosti s laděním jádra, je zbývající postup poměrně jednoduchý a přímočarý — s jedinou drobnou výjimkou specifickou pro virtuální počítače Gen-2 (ještě konkrétněji pro počítače založené na UEFI používající Secure Boot.)

Přes msconfig jsme pro VM na COM1 povolili ladění jádra. Jakmile jsme však klikli na OK, zobrazí se následující chybová zpráva:

konfigurace systému

Proč? Protože zásady systému Windows uvádějí, že Zabezpečené spouštění a ladění jádra nejsou kompatibilní. To znamená, že by uživatelé měli vypnout virtuální počítač a poté v nastavení firmwaru zakázat Zabezpečené spouštění.

povolit Secure Boot
  1. Znovu použijte msconfig k povolení ladění jádra (tentokrát bude úspěšné);
  2. Restartujte virtuální počítač;
  3. Připojte se k rource prostřednictvím windbg v nadřazeném oddílu;
připojit k potrubí

Závěr

Shrnuto: přestože Hyper-V neposkytuje virtuálním počítačům přímé předávání fyzického portu COM, sériovou komunikaci lze stále realizovat pomocí pojmenovaných rour, konfigurace v PowerShellu a specializovaných nástrojů pro přesměrování. Tyto metody umožňují pracovat s virtuálními počítači Gen 1 i Gen 2 pro úlohy, jako je podpora staršího softwaru, integrace hardwaru nebo ladění.

V situacích, kdy přímý sériový přístup není praktický, může být účinnou alternativou konektor Serial to Ethernet. Převodem sériových dat na síťový provoz umožňují taková zařízení přístup k vybavení využívajícímu porty COM přes TCP/IP a jeho snadné sdílení s virtuálními počítači. Ve spojení se softwarem pro přesměrování sériových portů nabízí tento přístup větší flexibilitu a zjednodušuje přístup k fyzickým sériovým zařízením ve virtualizovaných prostředích Hyper-V.