Czy istnieje sposób instalacji podsystemu Windows dla systemu Linux na Win10 (v1709) bez korzystania ze Sklepu?

50

Aplikacja Microsoft Store jest wyłączona przez zasady grupy przez mój uniwersytet. Mam uprawnienia administratora na swoim komputerze i zastanawiałem się, czy istnieje sposób bezpośredniej instalacji Podsystemu Windows dla Linux (WSL)? A może za pomocą Chocolatey lub innej metody wiersza poleceń?

Zwróć uwagę, że od wersji 1709 (Fall Creator's Upgrade) samo włączenie trybu programisty nie jest już wystarczające.

Gabriel Fair
źródło

Odpowiedzi:

63

Informacje: Wypróbowałem to na maszynie wirtualnej z Win10 Pro (v1709 i 1803) ze standardowymi zasadami grupy (tj. Jak w nowej instalacji).

To znaczy: wyłączenie sklepu gpedit.mscnie miało znaczenia ...


Zgodnie z „Przewodnikiem instalacji systemu Windows Server” firmy Microsoft :

Zauważ, że ta odpowiedź pokazuje kroki tylko dla Debiana. Jednak dla Ubuntu, SLES, openSUSE i Kali wszystko jest takie samo - jedyną różnicą będzie nazwa EXE (i używany adres URL).

  1. Aktywacji Windows Subsystem for Linux.

    • Przez Windows FeaturesGUI: np. Win+ I->OptionalFeatures.exe
    • Z PowerShell (jako administrator) Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux.
  2. Pobierz pakiet Linux.

    • Wybierz swoją dystrybucję. Wystarczy użyć jednego z tych adresów URL:
      • Debian: https://aka.ms/wsl-debian-gnulinux
      • Ubuntu 18.04: https://aka.ms/wsl-ubuntu-1804
      • Ubuntu 16.04: https://aka.ms/wsl-ubuntu-1604
      • openSUSE: https://aka.ms/wsl-opensuse-42
      • SLES: https://aka.ms/wsl-sles-12
      • Kali: https://aka.ms/wsl-kali-linux
    • Uruchom za pomocą PowerShell Invoke-WebRequest -Uri https://aka.ms/wsl-debian-gnulinux -OutFile ~/Debian.zip -UseBasicParsing.
      • Jeśli nie potrzebujesz paska postępu, dodaj $ProgressPreference = 'SilentlyContinue';przed poleceniem.
      • Pamiętaj, że ~/Debian.zipmożesz zmienić dowolną ścieżkę i nazwę.
    • Możesz go również pobrać „na manus” - podaj adres URL do przeglądarki (lub menedżera pobierania) i możesz go również pobrać w ten sposób.
  3. Rozpakuj pobrane archiwum i umieść je w ścieżce docelowej.
    • Pamiętaj, że możesz użyć dowolnej ścieżki - czy to ~\IHateUbuntu\SLES_WSL, czy to C:\Ubuntu, itd. Pp. Musi jednak znajdować się na dysku Twojego systemu (zwykle C:\) Dzięki, @Matt Wenham !
    • Przez PowerShell: Expand-Archive <ARCHIVE> <ITS_NEW_PATH>
    • Poprzez GUI Eksploratora plików
    • Lub za pomocą dowolnego narzędzia do kompresowania, takiego jak 7-Zip.
  4. Uruchom Debian.exe, który znajduje się w rozpakowanym folderze.
    • W przypadku innych dystrybucji musisz po prostu znaleźć poprawny plik EXE.
    • Spowoduje to „zainstalowanie” twojej dystrybucji.
  5. Ustaw swoją nazwę użytkownika i hasło.
    • Jeśli 0x80070005pojawi się błąd , musisz uruchomić EXE jako administrator. Dzięki, @March Ho !
  6. Jest zalecane , aby zaktualizować wszystkie programy w pierwszym starcie.
    • W Debian i Ubuntu odbywa się to przez uruchomienie sudo apt update && sudo apt upgrade.
  7. (Opcjonalnie) Umieść plik EXE w menu Start.
    • Po prostu umieść twardy link Debian.exew C:\ProgramData\Microsoft\Windows\Start Menu\Programs.
  8. (Opcjonalnie) Powtórz dla dowolnej liczby dystrybucji.

Możesz już iść. Uruchom Debian.exeza każdym razem, gdy chcesz uruchomić WSL.

flolilo
źródło
3
Jeśli pojawia się błąd 0x80070005, musisz uruchomić plik exe jako administrator.
Marzec Ho
Czy wiesz, czy można je zainstalować jednocześnie dla wszystkich użytkowników ?
Andrew Savinykh,
2
Najlepsze instrukcje. Dzięki. FYI: Jeśli jesteś podobny do mnie i rozpakowałeś dystrybucję w głupim miejscu za pierwszym razem ... Znajdziesz wslconfig /listi wslconfig /unregisterjesteś swoimi przyjaciółmi ...
spechter
1
Uważam, że dystrybucję należy rozpakować na dysk systemowy, jak wspomniano tutaj: docs.microsoft.com/en-us/windows/wsl/…
Matt Wenham
1
Uwaga: 0x80070005błędy pojawiają się z wielu powodów. Jeśli chcesz poszukać obejścia, zajrzyj tutaj: github.com/microsoft/WSL/issues/3020
Bewc
15

Jest to krótka procedura, dotyczy aktualizacji Windows 10 Fall Creators i nowszych.

  1. Włącz funkcję „Windows Subsystem For Linux” na OptionalFeatures.exekomputerze i uruchom ponownie komputer. Z Przewodnika instalacji systemu Windows Server .
  2. Pobierz dowolny z następujących plików (w dowolnej przeglądarce lub dowolnym menedżerze pobierania):

  3. Otwórz pakiety Appx za pomocą 7ZIP . Wyodrębnij tylko plik wykonywalny (np. Ubuntu.exe) i install.tar.gz z dowolnego dysku lub dowolnego folderu. Kliknij dwukrotnie ten plik wykonywalny, a zostanie on zainstalowany.

Uwagi :: Możesz teraz zainstalować dowolną dystrybucję GNU / Linux za pomocą skompresowanych plików RootFS (tylko .tar.gz) podanych w witrynach dystrybucji lub z obrazów dokera.

Biswapriyo
źródło
3

Możesz (1) pobrać instalatory ze Sklepu Windows lub (2) pobrać plik dystrybucyjny i zainstalować go za pomocą narzędzi takich jak lxRunOffline lub WSL Distrolauncher .

  • Możesz zainstalować Ubuntu 18 lub wiele innych dystrybucji za pomocą drugiej opcji.

Pobieranie instalatora ze Sklepu Windows

Możesz pobrać instalatory ze Sklepu Windows za pomocą Powershell . Na przykład możesz pobrać wersję Ubuntu 16 za pomocą następującego polecenia

PS> Invoke-WebRequest -Uri https://aka.ms/wsl-ubuntu-1604 -OutFile Ubuntu.appx -UseBasicParsing

W powyższym poleceniu plik wyjściowy to Ubuntu.appx. Musi być tak nazwany. Możesz uruchomić tę aplikację, aby zainstalować Ubuntu.

PS> Ubuntu.appx

Korzystanie z LxRunOffline

Najpierw musisz pobrać plik dystrybucyjny. Istnieje wiele plików dystrybucyjnych dostępnych na wiki wiki lxRunOffline .

Na przykład, aby zainstalować to samo Ubuntu 16 ze Sklepu Microsoft Windows, możesz pobrać plik ze strony

https://lxrunoffline.apphb.com/download/UbuntuFromMS/16

Następnie możesz zainstalować dystrybucję Linuksa za pomocą lxRunOffline

# lxrunoffline install -n <name> -d <folder> -f <distribution file>

C:\wsl> lxrunoffline install -n copy -d c:\wsl\copy -f 16.04.2-server-cloudimg-amd64-root.tar.gz

Aby uruchomić dystrybucję, możesz użyć tego samego lxRunOffline

C:\wsl> lxrunoffline run -n copy -w

Korzystanie z DistroLauncher

Możesz użyć DistroLauncher. Istnieje wiele wersji opartych na przykładzie Microsoft do tworzenia niestandardowych dystrybucji linuksa dla WSL. Na przykład możesz użyć wersji Yuk7 .

Musisz pobrać plik dystrybucyjny i plik launcher.exe. Aby użyć tego samego pliku dystrybucyjnego wymienionego powyżej, należy zmienić nazwę pliku dystrybucyjnego na, rootfs.tar.gza program uruchamiający na żądaną nazwę dystrybucji. Później musisz uruchomić program uruchamiający jako administrator (wystąpiły błędy podczas uruchamiania go jako zwykły użytkownik)

PS> ren launcher.exe mydistro.exe
PS> ren .\16.04.2-server-cloudimg-amd64-root.tar.gz rootfs.tar.gz
PS> .\mydistro

Przy pierwszym uruchomieniu program uruchamiający instaluje się i uruchamia dystrybucję. Następnym razem uruchamia dystrybucję Linuksa.


Po instalacji możesz zarządzać dystrybucjami za pomocą poleceń wslconfiglub lxrunoffline.

UWAGA: Oprócz plików dystrybucyjnych wymienionych powyżej, możesz utworzyć nowy plik w oparciu o inne dystrybucje linuksowe. Możesz wypróbować instrukcje zawarte w projekcie WSLInstall . Po poprawnym uruchomieniu nowego systemu Linux mogą być potrzebne dodatkowe kroki .

Jaime
źródło