Чи існує спосіб встановлення підсистеми Windows для Linux на Win10 (v1709) без використання магазину?


50

Додаток Microsoft Store відключений груповою політикою мого університету. У мене є права адміністратора на моєму комп’ютері, і мені було цікаво, чи існує спосіб встановлення безпосередньо підсистеми Windows для Linux (WSL)? А може, за допомогою Chocolatey або якогось іншого методу командного рядка?

Зауважте, що починаючи з версії 1709 (оновлення Fall Creator's Upgrade), лише ввімкнення режиму розробника вже недостатньо.

Відповіді:


63

Інформація: Я спробував це на VM з Win10 Pro (v1709 & 1803) з фондовою груповою політикою (тобто, як є з новою установкою).

Тобто: вимкнення магазину gpedit.mscне змінило значення ...


Відповідно до "Посібника з установки Windows Server" від Microsoft :

Зверніть увагу, що ця відповідь показує кроки лише для Debian. Однак для Ubuntu, SLES, openSUSE та Kali все те ж саме - різниця буде лише у назві EXE (та URL-адресі, яку ви використовуєте).

  1. Активуйте Windows Subsystem for Linux.

    • Через Windows FeaturesGUI: напр. Win+ I->OptionalFeatures.exe
    • З допомогою PowerShell (як адміністратор): Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux.
  2. Завантажте Linux-пакет.

    • Виберіть свій дистрибутив. Просто скористайтеся однією з таких 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
      • СЛЕСИ: https://aka.ms/wsl-sles-12
      • Калі: https://aka.ms/wsl-kali-linux
    • Через PowerShell, запустіть Invoke-WebRequest -Uri https://aka.ms/wsl-debian-gnulinux -OutFile ~/Debian.zip -UseBasicParsing.
      • Якщо панель прогресу вам не потрібна, додайте $ProgressPreference = 'SilentlyContinue';в передній частині команди.
      • Зверніть увагу, що ви ~/Debian.zipможете змінити будь-який шлях та ім'я.
    • Ви також можете завантажити його "за мануал" - введіть URL-адресу у свій браузер (або менеджер завантажень), і ви можете отримати його і таким чином.
  3. Розпакуйте завантажений архів і помістіть його до місця призначення.
    • Зауважте, що ви можете використовувати будь-який шлях - будь то ~\IHateUbuntu\SLES_WSL, будь то C:\Ubuntuтощо. Однак це повинно бути на диску вашої системи (як правило C:\) Спасибі, @Matt Wenham !
    • Через PowerShell: Expand-Archive <ARCHIVE> <ITS_NEW_PATH>
    • Через графічний інтерфейс File Explorer
    • Або за допомогою будь-якого застібкового інструменту, наприклад 7-Zip.
  4. Виконати Debian.exe, який знаходиться всередині розпакованої папки.
    • Для інших дистрибутивів потрібно просто шукати правильний EXE.
    • Тепер це "встановить" ваш дистрибутив.
  5. Встановіть своє ім’я користувача та пароль.
    • Якщо з’являється помилка 0x80070005, вам потрібно запустити EXE як адміністратор. Дякую, @March Ho !
  6. Він рекомендував , щоб оновити все програмне забезпечення при першому запуску.
    • У Debian & Ubuntu це робиться запуском sudo apt update && sudo apt upgrade.
  7. (Необов’язково) Помістіть свій EXE у меню "Пуск".
    • Просто покладіть жорстке посилання Debian.exeна C:\ProgramData\Microsoft\Windows\Start Menu\Programs.
  8. (Необов’язково) Повторіть стільки дистрибутивів, скільки хочете.

Вам добре піти зараз. Запускайте, Debian.exeколи хочете запускати WSL.


3
Якщо ви отримуєте помилку 0x80070005, вам потрібно запустити файл exe як адміністратор.
Хо березня

Чи знаєте ви, чи можна встановити їх відразу для всіх користувачів ?
Андрій Савіних

2
Основні вказівки Спасибі. FYI: Якщо ти схожий на мене, і вперше розпакував дистрибутив у нерозумному місці ... Ти знайдеш wslconfig /listі будеш wslconfig /unregisterтвоїми друзями ...
spechter

1
Я вважаю, що дистрибутив слід отримати на вашому системному диску, як згадувалося тут: docs.microsoft.com/en-us/windows/wsl/…
Метт Венхем,

1
Примітка: 0x80070005помилки з'являються з багатьох причин. Якщо ви хочете шукати обхідні шляхи, подивіться тут: github.com/microsoft/WSL/isissue/3020
Bewc

15

Це коротка процедура, стосується оновлення Windows 10 Fall Creators та вище.

  1. Увімкніть функцію "Підсистема Windows для Linux" із OptionalFeatures.exeперезавантаження ПК. З Інструкції з установки Windows Server .
  2. Завантажте будь-який із наведених нижче файлів (із будь-яким браузером чи будь-яким менеджером завантажень):

  3. Відкрийте пакети Appx за допомогою 7ZIP . Витягніть лише виконуваний файл (наприклад, Ubuntu.exe) та install.tar.gz на будь-якому диску або будь-якій папці. Двічі натисніть на цей виконуваний файл, і він буде встановлений.

Примітки: Тепер ви можете встановити будь-який дистрибутив GNU / Linux, використовуючи стиснуті кулі RootFS (лише .tar.gz), що надаються на сайтах дистрибуції або із зображень докера.


3

Ви можете (1) завантажити інсталяторів з магазину Windows або (2) завантажити файл розподілу та встановити його за допомогою інструментів, таких як lxRunOffline або WSL Distrolauncher .

  • Ви можете встановити Ubuntu 18 або багато інших дистрибутивів, використовуючи другий варіант.

Завантаження інсталятора з магазину Windows

Ви можете завантажити інсталяторів з магазину Windows за допомогою Powershell . Наприклад, ви можете завантажити версію Ubuntu 16 за допомогою наступної команди

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

У наведеній вище команді вихідний файл є Ubuntu.appx. Це має бути названо таким чином. Ви можете запустити цю програму для встановлення Ubuntu.

PS> Ubuntu.appx

Використання LxRunOffline

По-перше, ви повинні завантажити якийсь файл розподілу. У вікі lxRunOffline доступно багато файлів розподілу .

Наприклад, щоб встановити той самий Ubuntu 16 з магазину Microsoft Windows, ви можете завантажити файл за адресою

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

Потім ви можете встановити дистрибутив Linux за допомогою 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

Для запуску дистрибутива ви можете використовувати той самий lxRunOffline

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

Використання DistroLauncher

Ви можете використовувати деякі DistroLauncher. На прикладі Microsoft існує багато версій для створення користувацьких дистрибутивів Linux для WSL. Наприклад, ви можете використовувати версію Yuk7 .

Ви повинні завантажити файл розподілу та launcher.exe. Щоб використовувати той самий файл розповсюдження, який згаданий вище, ви повинні перейменувати файл розповсюдження rootfs.tar.gzта запуск на ім'я дистрибутива, яке ви хочете. Пізніше ви повинні запустити панель запуску як адміністратор (у мене з’явилися помилки при запуску як звичайний користувач)

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

Перший раз, коли ви запустите запуск, він встановлює і запускає дистрибутив. Наступного разу він запускає дистрибутив Linux.


Після встановлення ви можете керувати розподілами за допомогою команд wslconfigабо lxrunoffline.

ПРИМІТКА. Крім згаданих вище файлів розподілу, ви можете створити новий файл на основі інших дистрибутивів Linux. Ви можете спробувати інструкції, включені до проекту WSLInstall . Вам можуть знадобитися додаткові кроки після встановлення, щоб правильно запустити новий Linux.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.