Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Tato příručka vás provede kroky potřebnými k připojení zařízení USB k distribuci Linuxu spuštěné na WSL 2 pomocí opensourcového projektu USB/IP usbipd-win.
Nastavení projektu USB/IP na počítači s Windows umožní běžné vývojářské scénáře USB, jako je flashování Arduino nebo přístup ke čtečce smart karet.
Požadavky
- Běží Windows 11 (build 22000 nebo novější). (Podpora Windows 10 je možná, viz poznámka níže).
- Vyžaduje se počítač s procesorem x64 nebo ARM64. (x86 se v současné době nepodporuje u usbipd-win).
- Služba WSL je nainstalovaná a nastavená s nejnovější verzí.
- Linuxová distribuce je nainstalovaná a nastavená na WSL 2.
Poznámka:
Pokud chcete zkontrolovat verzi a číslo buildu Windows, vyberte klávesu s logem Windows + R, zadejte winver, vyberte OK. Pokud chcete aktualizovat na nejnovější verzi Windows, vyberte Start>Nastavení>Windows Update>Vyhledat aktualizace.
Pokud chcete zkontrolovat verzi jádra Linuxu, otevřete distribuci Linuxu a zadejte příkaz: uname -a. Pokud chcete ručně aktualizovat na nejnovější jádro, otevřete PowerShell a zadejte příkaz: wsl --update.
Důležité
WSL teď podporuje Windows 10 i Windows 11 prostřednictvím Microsoft Storu, což znamená, že uživatelé Windows 10 teď mají přístup k nejnovějším verzím jádra, aniž by museli zkompilovat ze zdroje. Pro informace o tom, jak aktualizovat na verzi WSL podporovanou ve Storu, nahlédněte do WSL v Microsoft Store, které je nyní obecně dostupné na Windows 10 a 11. Pokud nemůžete aktualizovat verzi WSL podporovanou ve Storu a automaticky přijímat aktualizace jádra, přečtěte si USBIPD-WIN úložiště projektu s pokyny pro připojení zařízení USB k linuxové distribuci běžící na WSL 2 vytvořením vlastního jádra WSL 2 s podporou USBIP.
Instalace projektu USBIPD-WIN
Podpora pro připojení zařízení USB není nativně dostupná ve WSL, takže budete muset nainstalovat opensourcový projekt usbipd-win.
Požadavky na jádro
Pokud chcete používat USBIPD se subsystémem Windows pro Linux (WSL), musíte mít linuxovou verzi jádra 5.10.60.1 nebo vyšší. Pokud je nainstalovaná verze jádra starší než 5.10.60.1, může být aktualizována tak, že nejprve vypnete všechny spuštěné instance WSL pomocí wsl --shutdowna potom spustíte příkaz: wsl --update.
Instalace USBIPD na WSL
- Přejděte na nejnovější stránku vydání projektu usbipd-win.
- Vyberte soubor .msi, který stáhne instalační program. (Může se zobrazit upozornění s výzvou, abyste potvrdili, že tomuto stažení důvěřujete).
- Spusťte stažený soubor instalačního programu usbipd-win_x.msi.
Poznámka:
Alternativně můžete také nainstalovat projekt usbipd-win pomocí Správce balíčků systému Windows (winget). Pokud jste už nainstalovali winget, stačí použít příkaz: winget install --interactive --exact dorssel.usbipd-win k instalaci usbipd-win. Pokud vynecháte --interactive, winget může okamžitě restartovat počítač, pokud je to nutné k instalaci ovladačů.
Tím se nainstaluje:
- Volá se služba
usbipd(zobrazovaný název: Hostitel zařízení USBIP). Stav této služby můžete zkontrolovat pomocí aplikace Služby z Windows. - Nástroj
usbipdpříkazového řádku. Umístění tohoto nástroje se přidá do proměnné prostředí PATH. - Pravidlo brány firewall s názvem
usbipd, které povoluje všem místním podsítím připojení ke službě. Toto pravidlo brány firewall můžete upravit tak, aby vyladily řízení přístupu.
Připojení zařízení USB
Před připojením zařízení USB se ujistěte, že je otevřený příkazový řádek WSL. Tím zůstane aktivní jednoduchý virtuální počítač WSL 2.
Poznámka:
V tomto dokumentu se předpokládá, že máte usbipd-win 5.0.0 nebo novější verzi nainstalovanou.
Zobrazte seznam všech zařízení USB připojených k Windows tak, že otevřete PowerShell v režimu správce a zadáte následující příkaz. Jakmile jsou zařízení uvedená, vyberte a zkopírujte ID sběrnice zařízení, které chcete připojit k WSL.
usbipd listPřed připojením zařízení USB musí být příkaz
usbipd bindpoužit ke sdílení zařízení, což umožňuje připojení k WSL. To vyžaduje oprávnění správce. Vyberte ID sběrnice zařízení, které chcete použít ve WSL, a spusťte následující příkaz. Po spuštění příkazu pomocí příkazuusbipd listznovu ověřte, že je zařízení sdílené.usbipd bind --busid 4-4Pokud chcete připojit zařízení USB, spusťte následující příkaz. (Už nemusíte používat výzvu správce se zvýšenými oprávněními.) Ujistěte se, že je otevřený příkazový řádek WSL, aby byl jednoduchý virtuální počítač WSL 2 aktivní. Upozorňujeme, že pokud je zařízení USB připojené k WSL, nelze ho používat ve Windows. Po připojení k WSL může být zařízení USB používáno libovolnou distribucí spuštěnou jako WSL 2. Ověřte, že je zařízení připojené pomocí
usbipd list. Na příkazovém řádku WSL spusťtelsusbpříkaz, abyste ověřili, že je uvedené zařízení USB, a můžete s ním pracovat pomocí nástrojů pro Linux.usbipd attach --wsl --busid <busid>Otevřete Ubuntu (nebo upřednostňovaný příkazový řádek WSL) a pomocí příkazu zobrazte seznam připojených zařízení USB:
lsusbMělo by se zobrazit zařízení, které jste právě připojili a mohli s ním pracovat pomocí normálních linuxových nástrojů. V závislosti na vaší aplikaci možná budete muset nakonfigurovat pravidla udev tak, aby uživatelům, kteří nejsou rooty, povolili přístup k zařízení.
Jakmile zařízení ve WSL už není potřeba, můžete zařízení USB fyzicky odpojit nebo spustit příkaz v PowerShellu:
usbipd detach --busid <busid>
Další informace o tom, jak to funguje, najdete v blogu příkazového řádku Windows a v úložišti usbipd-win na GitHubu.
Ukázku videa najdete v WSL 2: Připojení zařízení USB (Taby vs Mezery)
Windows Subsystem for Linux