Aracılığıyla paylaş


USB cihazlarını bağlama

Bu kılavuz, USB/IP açık kaynak projesi usbipd-win'i kullanarak BIR USB cihazını WSL 2 üzerinde çalışan bir Linux dağıtımına bağlamak için gereken adımları adım adım inceleyecektir.

Windows bilgisayarınızda USB/IP projesinin kurulumu, Arduino'nun firmware'ını yüklemek veya güncellemek ve bir akıllı kart okuyucuya erişmek gibi genel geliştirici USB senaryolarını gerçekleştirmenize olanak tanır.

Önkoşullar

  • Windows 11'i çalıştırma (Derleme 22000 veya üzeri). (Windows 10 desteği mümkündür, aşağıdaki nota bakın).
  • x64 veya ARM64 işlemcisi olan bir makine gereklidir. (x86 şu anda usbipd-win ile desteklenmemektedir).
  • WSL yüklenir ve en son sürümle ayarlanır.
  • Linux dağıtımı yüklendi ve WSL 2 olarak ayarlandı.

Uyarı

Windows sürümünüzü ve derleme numaranızı denetlemek için Windows logo tuşu + R'yi seçin, winver yazın ve Tamam'ı seçin. Başlangıç>Ayarları> WindowsUpdate> Güncelleştirmeleri denetle'yi seçerek en son Windowssürümüne güncelleştirebilirsiniz. Linux çekirdek sürümünüzü denetlemek için Linux dağıtımınızı açın ve şu komutu girin: uname -a. En son çekirdeği el ile güncelleştirmek için PowerShell'i açın ve şu komutu girin: wsl --update.

Önemli

WSL artık Microsoft Store aracılığıyla hem Windows 10'u hem de Windows 11'i destekliyor, yani Windows 10 kullanıcıları artık kaynaktan derlemeye gerek kalmadan en son çekirdek sürümlerine erişebilir. WSL'nin Store tarafından desteklenen sürümüne güncelleştirme hakkında bilgi için bkz. Microsoft Store'daki WSL artık Windows 10 ve 11'de genel kullanıma sunuldu . WSL'nin Store tarafından desteklenen sürümüne güncelleştiremiyorsanız ve otomatik olarak çekirdek güncelleştirmeleri alıyorsanız kendi USBIP özellikli WSL 2 çekirdeğinizi oluşturarak USB cihazlarını WSL 2 üzerinde çalışan bir Linux dağıtımına bağlama yönergeleri içinUSBIPD-WIN proje deposuna bakın.

USBIPD-WIN projesini yükleme

USB cihazlarını bağlama desteği WSL'de yerel olarak sağlanmadığından açık kaynak usbipd-win projesini yüklemeniz gerekir.

Çekirdek gereksinimleri

USBIPD'yi Linux için Windows Alt Sistemi (WSL) ile kullanmak için Linux çekirdek sürümünün 5.10.60.1 veya üzeri olması gerekir. Yüklü çekirdek sürümü 5.10.60.1'den eskiyse, öncelikle wsl --shutdown ile çalışan WSL örneklerini kapatıp, sonra wsl --update komutunu çalıştırarak güncelleyebilirsiniz.

WSL'ye USBIPD yükleme

  1. usbipd-win projesi için en son sürüm sayfasına gidin.
  2. Yükleyiciyi indirecek .msi dosyasını seçin. (Bu indirmeye güvendiğinizi onaylamanızı isteyen bir uyarı alabilirsiniz).
  3. İndirilen usbipd-win_x.msi yükleyici dosyasını çalıştırın.

Uyarı

Alternatif olarak, Windows Paket Yöneticisi'ni (winget) kullanarak usbipd-win projesini de yükleyebilirsiniz. Winget'i zaten yüklediyseniz usbipd-win yüklemek için komutunu winget install --interactive --exact dorssel.usbipd-win kullanmanız gerekir. --interactive seçeneğini kullanmazsanız, sürücülerin yüklenmesi gerekiyorsa winget bilgisayarınızı hemen yeniden başlatabilir.

Bu, şu şekilde yüklenir:

  • usbipd adlı bir hizmet (görünen ad: USBIP Cihaz Ana Bilgisayarı). Windows'tan Hizmetler uygulamasını kullanarak bu hizmetin durumunu de kontrol edebilirsiniz.
  • Komut satırı aracı usbipd. Bu aracın konumu PATH ortam değişkenine eklenecektir.
  • Tüm yerel alt ağların hizmete bağlanmasına izin vermek için çağrılan usbipd bir güvenlik duvarı kuralı. Erişim denetiminde ince ayar yapmak için bu güvenlik duvarı kuralını değiştirebilirsiniz.

USB cihazı ekleme

USB cihazınızı takmadan önce bir WSL komut satırının açık olduğundan emin olun. Bu, WSL 2 basit VM'yi etkin tutar.

  1. PowerShell'i yönetici modunda açıp aşağıdaki komutu girerek Windows'a bağlı tüm USB cihazlarını listeleyin. Cihazlar listelendikten sonra WSL'ye eklemek istediğiniz cihazın veri yolu kimliğini seçin ve kopyalayın.

    usbipd list
    
  2. USB cihazını takmadan önce, cihazın WSL'ye eklenebilmesi için komut usbipd bind kullanılarak paylaşılmalıdır. Bunun için yönetici ayrıcalıkları gerekir. WSL'de kullanmak istediğiniz cihazın veri yolu kimliğini seçin ve aşağıdaki komutu çalıştırın. Komutu çalıştırdıktan sonra, cihazın paylaşıldığını tekrar usbipd list komutunu kullanarak doğrulayın.

    usbipd bind --busid 4-4
    
  3. USB cihazını eklemek için aşağıdaki komutu çalıştırın. (Artık yükseltilmiş yönetici istemi kullanmanız gerekmez.) WSL 2 basit VM'sini etkin tutmak için bir WSL komut isteminin açık olduğundan emin olun. USB cihazı WSL'ye bağlı olduğu sürece Windows tarafından kullanılamadığını unutmayın. WSL'ye bağlandıktan sonra, USB cihazı WSL 2 olarak çalışan herhangi bir dağıtım tarafından kullanılabilir. Cihazın usbipd list kullanılarak bağlandığını doğrulayın. WSL isteminde komutunu çalıştırarak lsusb USB cihazının listelendiğini ve Linux araçları kullanılarak etkileşime alınabildiğini doğrulayın.

    usbipd attach --wsl --busid <busid>
    
  4. Ubuntu'u (veya tercih ettiğiniz WSL komut satırını) açın ve aşağıdaki komutu kullanarak ekli USB cihazlarını listeleyin:

    lsusb
    

    Yeni eklediğiniz cihazı görmeniz ve normal Linux araçlarını kullanarak cihazla etkileşim kurabilmeniz gerekir. Uygulamanıza bağlı olarak, kök olmayan kullanıcıların cihaza erişmesine izin vermek için udev kurallarını yapılandırmanız gerekebilir.

  5. Cihazı WSL'de kullanmayı tamamladıktan sonra USB cihazının bağlantısını fiziksel olarak kesebilir veya PowerShell'den şu komutu çalıştırabilirsiniz:

    usbipd detach --busid <busid>
    

Bunun nasıl çalıştığı hakkında daha fazla bilgi edinmek için Windows Komut Satırı Blogu'na ve GitHub'da usbipd-win deposuna bakın.

Video gösterimi için bkz. WSL 2: USB cihazlarını bağlama (Sekmeler ve Boşluklar gösterisi).