Вопрос или проблема
Я пытаюсь использовать WSL на сервере с Windows Server 2019 (Версия 1809). Я включил функцию WSL и могу выполнить команду wsl
в PowerShell.
PS C:\Users\user> wsl
Windows Subsystem for Linux не имеет установленных дистрибутивов.
Дистрибутивы могут быть установлены, посетив Microsoft Store:
https://aka.ms/wslstore
Судя по всему, приложение Microsoft Store не поддерживается этой версией Windows.
Я попробовал скачать пакет appx
с помощью
curl.exe -L -o ubuntu.appx https://aka.ms/wslubuntu2204
и установить его с помощью Add-AppxPackage
, но это дает мне следующую ошибку:
(base) PS C:\Users\user> Add-AppxPackage ubuntu.appx
Add-AppxPackage : Установка не удалась с HRESULT: 0x80080204, Манифест пакета Appx неверен.
ошибка 0xC00CE015: Ошибка проверки манифеста приложения: Манифест приложения должен быть действительным в соответствии со схемой: Строка 22, Столбец 96,
Примечание: Схема для MaxVersionTested не распознает XML-поля с пространством имен
"http://schemas.microsoft.com/appx/manifest/uap/windows10/10". Пожалуйста, убедитесь, что у вас указана правильная
MaxVersionTested. Причина: Атрибут
'{http://schemas.microsoft.com/appx/manifest/uap/windows10/10}Parameters' на элементе
'{http://schemas.microsoft.com/appx/manifest/foundation/window
Есть ли способ скачать и установить дистрибутив Linux (предпочтительно Ubuntu) для этой версии Windows?
Насколько я могу судить, я вынужден оставаться на версии WSL 1 и не могу обновиться до версии WSL 2, потому что моя версия Windows слишком старая.
С помощью инструкций по установке, на которые меня указали @Abdel.Hou в его ответе, я наконец смог установить Ubuntu в WSL. Это не сработало, как описано в этих инструкциях по установке, потому что использование Add-AppxPackage
, как там описано, потерпело неудачу. Вот почему я хочу документировать шаги в отдельном ответе. Шаги следующие (с командами PowerShell):
- Включите WSL в Windows с помощью:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
- Скачайте Ubuntu, например, Ubuntu 22.04:
Invoke-Webrequest -Uri https://aka.ms/wslubuntu2204 -OutFile .\Ubuntu2204.appx -UseBasicParsing
-
Переименуйте загруженный файл
Ubuntu2204.appx
вUbuntu2204_.zip
, затем извлеките этот архив. Внутри находятся разные файлы appx для разных платформ. Выберите файл для вашей платформы, например,Ubuntu_2204.1.7.0_x64.appx
. -
Переименуйте файл appx для вашей платформы в
Ubuntu2204.zip
и извлеките этот архив. -
Извлеките файлы из
Ubuntu2204.zip
в целевое место, где вы хотите, чтобы ваш дистрибутив Linux находился. -
Откройте папку целевого местоположения с файлами
Ubuntu2204.zip
и запустите файлubuntu.exe
, который находится внутри папки. Это установит дистрибутив. Важно, чтобы вы больше не перемещали папку после установки, так как это приведет к ошибке при запуске Ubuntu позже. -
Добавьте папку, содержащую файл
ubuntu.exe
, в переменную PATH. Ubuntu затем можно будет запустить черезubuntu
в командной строке.
Вы можете попробовать эту процедуру: learn.microsoft.com – Установите WSL на предыдущих версиях Windows Server
цитата:
Чтобы установить WSL на Windows Server 2019 (версия 1709+), выполните следующие шаги по ручной установке.
у меня по-другому
https://wslstorestorage.blob.core.windows.net/wslblob/Ubuntu2404-240425.AppxBundle
скачайте Ubuntu2404-240425.AppxBundle
Add-AppxPackage .\Ubuntu2404-240425.AppxBundle
и в меню “Пуск” появляется значок ubuntu 24.04 lts, он отображается из магазина Windows
нажмите и запустите
Пожалуйста, создайте учетную запись по умолчанию UNIX. Имя пользователя не должно совпадать с вашим именем пользователя Windows. Для получения дополнительной информации посетите: https://aka.ms/wslusers
Введите новое имя пользователя UNIX: xx
Новый пароль:
Повторите новый пароль:
passwd: пароль успешно обновлен
Установка выполнена успешно!
Чтобы выполнить команду от имени администратора (пользователь "root"), используйте "sudo <command>". Смотрите "man sudo_root" для подробностей.
Добро пожаловать в Ubuntu 24.04 LTS (GNU/Linux 4.4.0-17763-Microsoft x86_64)
* Документация: https://help.ubuntu.com
* Управление: https://landscape.canonical.com
* Поддержка: https://ubuntu.com/pro
Системная информация на среду, 13 ноября 2024 г., 18:46:02 DST
Нагрузка системы: 0.52 Процессы: 8
Использование /: 19.5% из 150.00GB Пользователи в системе: 0
Использование памяти: 41% IPv4-адрес для eth0: 192.168.X.X
Использование подкачки: 1%
Это сообщение отображается один раз в день. Чтобы отключить его, пожалуйста, создайте
Ответ или решение
Установка операционной системы Linux (например, Ubuntu) на Windows Server 2019 с использованием Windows Subsystem for Linux (WSL) версии 1 может представлять собой определенные трудности, особенно в условиях отсутствия поддержки Магазина Microsoft на старых версиях Windows Server. В данном руководстве я опишу подробный процесс, который поможет вам успешно установить дистрибутив Linux на вашем сервере.
Шаг 1: Включение WSL
Прежде всего, необходимо включить функциональность Windows Subsystem for Linux на вашем сервере. Для этого выполните следующую команду в PowerShell с правами администратора:
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
Проверьте, успешно ли включена опция, перезагрузив сервер, если потребуется.
Шаг 2: Скачивание дистрибутива Ubuntu
Поскольку вы сталкиваетесь с проблемами загрузки через Магазин Microsoft, вам нужно загрузить дистрибутив Ubuntu непосредственно. Используйте PowerShell для выполнения следующей команды:
Invoke-Webrequest -Uri https://aka.ms/wslubuntu2204 -OutFile .\Ubuntu2204.appx -UseBasicParsing
Шаг 3: Переименование и извлечение файлов
После скачивания переименуйте файл .appx
в .zip
и извлеките его содержимое. Это можно сделать вручную или с помощью команд PowerShell:
- Переименуйте файл:
Rename-Item .\Ubuntu2204.appx .\Ubuntu2204.zip
- Извлеките содержимое zip-файла:
Expand-Archive -Path .\Ubuntu2204.zip -DestinationPath .\Ubuntu2204
Шаг 4: Установка нужного пакета
В результате предыдущих действий в папке Ubuntu2204
вы найдете несколько файлов. Вам нужно выбрать соответствующий файл для вашей платформы, например:
Ubuntu_2204.1.7.0_x64.appx
Переименуйте этот файл, чтобы он стал Ubuntu2204.zip
и вновь извлеките его содержимое.
Rename-Item .\Ubuntu2204\Ubuntu_2204.1.7.0_x64.appx .\Ubuntu2204.zip
Expand-Archive -Path .\Ubuntu2204.zip -DestinationPath .\Ubuntu2204
Шаг 5: Запуск установки дистрибутива
Перейдите к папке, куда вы извлекли файлы из Ubuntu2204.zip
, и запустите файл ubuntu.exe
:
cd .\Ubuntu2204
.\ubuntu.exe
Это инициирует процесс установки дистрибутива. Вам будет предложено создать нового UNIX-пользователя и задать пароль.
Шаг 6: Обновление переменной среды PATH
После установки добавьте путь к папке с файлами ubuntu.exe
в системную переменную PATH. Это позволит запускать дистрибутив из командной строки, просто набрав ubuntu
.
Для добавления в PATH выполните следующую команду PowerShell:
[System.Environment]::SetEnvironmentVariable("Path", $env:Path + ";C:\path\to\Ubuntu2204", [System.EnvironmentVariableTarget]::Machine)
(Замените C:\path\to\Ubuntu2204
на фактический путь к папке).
Заключение
Теперь вы успешно установили дистрибутив Ubuntu на Windows Server 2019 с использованием WSL версии 1. Этот процесс позволяет вам использовать множество инструментов и программного обеспечения, доступных для Linux, прямо на вашем сервере Windows. Пройдя все шаги, вы сможете без труда запускать терминал Ubuntu и использовать его в своей работе.
Если у вас возникнут дополнительные вопросы или трудности, я рекомендую обратиться к официальной документации Microsoft по WSL.