Підсистема Windows для Linux: Повний Огляд WSL2
Windows та Linux є двома провідними операційними системами у світі. Windows відома своєю зручністю, проте Linux, завдяки широким можливостям кастомізації, стає фаворитом серед розробників, продуктивних користувачів та студентів.
Традиційно, для одночасного використання обох систем потрібна віртуалізація в Windows або створення подвійного завантаження.
На щастя, з’явилася нова функція Windows, що дозволяє легко інтегрувати Linux у середовище Windows.
Представляємо WSL2 – підсистему Windows для Linux. Це інноваційна функція, що відкриває доступ до Linux безпосередньо з Windows.
У цьому матеріалі ми детально розглянемо WSL2: її визначення, призначення, процес встановлення та ефективні методи застосування.
Розпочнімо.
Що Таке Підсистема Windows для Linux?
Підсистема Windows для Linux надає можливість взаємодіяти з середовищем GNU/Linux прямо з терміналу Windows. Це усуває необхідність у подвійному завантаженні або використанні віртуалізації. Ви отримуєте прямий доступ до ядра Linux, що дозволяє використовувати всі його інструменти, командний рядок, додатки та утиліти, безпосередньо з Windows.
WSL2 є новітньою версією підсистеми Windows, що пропонує вдосконалену функціональність та вищу швидкість роботи порівняно з WSL1 (впровадженою у Windows 10). Більшість інсталяцій Windows вже мають WSL, хоча для використання її потрібно активувати.
В основі WSL2 лежить технологія віртуальної машини Hyper-V від Windows. Це забезпечує високу сумісність WSL2 з Linux та значно, майже у 20 разів, підвищує швидкість виконання порівняно з WSL1.
Отже, WSL2 – це сучасна підсистема Windows, що надає користувачам Windows безпосередній доступ до ядра Linux.
Початок Роботи з WSL2
У цьому посібнику ми будемо використовувати термінал Windows, як зручний та рекомендований інструмент для взаємодії з командним рядком у Windows. Це швидкий та ефективний термінал, що ідеально підходить для роботи з командними інструментами та WSL.
Вимоги до ПК
Не кожен комп’ютер здатний запустити WSL2. Ваша система має підтримувати віртуалізацію, оскільки WSL2 використовує Hyper-V.
Також необхідний 64-розрядний процесор з підтримкою SLAT (перетворення адрес другого рівня), яка є у більшості сучасних процесорів.
Щодо дискового простору, потрібно не менше 1 ГБ вільного місця.
Увімкнення Віртуалізації з BIOS
Якщо ваше обладнання відповідає вимогам, потрібно активувати віртуалізацію у BIOS материнської плати.
Щоб увійти в BIOS, під час запуску комп’ютера натискайте клавіші F2, Del або F10.
У налаштуваннях BIOS знайдіть та активуйте AMD Secure Virtual Machines (SVM) або Intel Virtualization Technology VTx. Після цього перезавантажте комп’ютер.
За необхідності, зверніться до інструкції “Як встановити Ubuntu у Windows 10 за допомогою Hyper-V” для отримання додаткових відомостей.
Активація Функцій Windows для WSL2
Після перевірки відповідності обладнання, можна активувати WSL2 у Windows.
Спочатку перевірте версію Windows, що допоможе визначити її підтримку WSL.
Для цього натисніть CMD + R і введіть “winver”. Відобразиться ваша версія Windows.
Користувачі Windows 10, ймовірно, використовують WSL1, тоді як більшість користувачів Windows 11 мають WSL2.
Усі версії Windows 10 та 11, окрім Windows S, підтримують WSL2. Windows S орієнтована на безпеку і має відключену віртуалізацію.
Якщо ви використовуєте Windows S, потрібно перейти на іншу версію, як Windows Home або Pro. Для цього перейдіть у Налаштування > Оновлення та безпека > Активація.
Також переконайтеся, що встановлено останні оновлення Windows для повної сумісності з WSL2. Оновлення можна знайти у “Параметри” > “Оновлення Windows”.
Щоб використовувати WSL2, потрібно увімкнути кілька функцій Windows.
Перейдіть до Панелі керування > Програми та засоби, а потім виберіть “Увімкнення або вимкнення функцій Windows”. У новому вікні “Функції Windows” знайдіть “Hyper-V”, “Платформа віртуальної машини” та “Підсистема Windows для Linux”.
Після цього необхідно перезавантажити комп’ютер, щоб зміни набули чинності.
Можна також активувати ці функції за допомогою наступних команд:
$ dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart $ dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
Встановлення WSL2
Виконавши усі попередні вимоги, переходимо до інсталяції WSL.
Відкрийте термінал Windows (Windows 10) або Windows PowerShell (Windows 11) і введіть команду:
$ wsl
#вихід
Copyright (c) Microsoft Corporation. All rights reserved. Usage: wsl.exe [Argument] Arguments: …..
Це означає, що WSL доступна, але не активована.
Для встановлення WSL запустіть наступну команду від імені адміністратора:
$ wsl --install
#вихід
PS C:UsersLogan99> wsl --install Installing: Virtual Machine Platform Virtual Machine Platform has been installed. Installing: Windows Subsystem for Linux Windows Subsystem for Linux has been installed. Installing: Ubuntu Ubuntu has been installed. The requested operation is successful. Changes will not be effective until the system is rebooted.
Примітка: Якщо ви вже увімкнули необхідні функції Windows, ви можете не побачити цей вивід, а натомість отримати наступний результат. (Якщо так, перейдіть до наступного розділу).
Ubuntu is already installed. Launching Ubuntu... Installing, this may take a few minutes... Please create a default UNIX user account. The username does not need to match your Windows username. For more information visit: https://aka.ms/wslusers Enter new UNIX username: New password: Retype new password:
Щоб перевірити версію WSL, введіть команду:
$ wsl --version
#вихід
WSL version: 1.1.6.0 Kernel version: 5.15.90.1 WSLg version: 1.0.50 MSRDC version: 1.2.3770 Direct3D version: 1.608.2-61064218 DXCore version: 10.0.25131.1002-220531-1700.rs-onecore-base2-hyp Windows version: 10.0.22621.1413
Якщо ви бачите, що WSL версії 1.1.6.0 вже встановлено, але вона не працює, значить, WSL не інстальовано.
Для переходу на WSL2 виконайте команду:
$ wsl --set-default-version 2
Оскільки WSL вже попередньо встановлена, ви можете отримати відповідне повідомлення.
Ви також можете інсталювати WSL через Microsoft Store. Знайдіть у магазині “Підсистема Windows для Linux” і натисніть “Отримати”. Дочекайтеся завершення встановлення.
Після встановлення натисніть “Відкрити”, і відкриється термінал Windows з повідомленням: “Підсистема Windows для Linux не має встановлених дистрибутивів”.
Встановлення Дистрибутива на WSL
Тепер, коли WSL встановлена, настав час встановити дистрибутив Linux.
За замовчуванням WSL встановлює версію Ubuntu LTS. Для цього виконайте команду:
$ wsl --install
Почнеться встановлення Ubuntu. Під час процесу потрібно буде задати ім’я користувача та пароль UNIX.
Після завершення встановлення з’явиться командний рядок Ubuntu Linux. Тут можна використовувати всі команди Linux. Перевіримо версію Ubuntu:
$ lsb_release -a
#вихід
No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 22.04.1 LTS Release: 22.04 Codename: jammy
Готово! Тепер у вас є доступ до ядра Linux.
Щоб вийти з дистрибутива, введіть команду:
$ exit
#вихід
[email protected]:/mnt/c/Users/Logan99$ exit logout
Встановлення Додаткових Дистрибутивів
Аналогічно можна встановити інші дистрибутиви, такі як Fedora, Debian та OracleLinux_8_5. Щоб переглянути доступні дистрибутиви, введіть команду:
$ wsl --list --online
Для встановлення Debian, введіть команду:
$ wsl --install -d Debian Or $ wsl.exe --install Debian
Як і у випадку з Ubuntu, вам буде запропоновано встановити ім’я користувача та пароль.
#вихід
Перевіримо версію Debian:
$ cat /etc/issue
#вихід
$ Debian GNU/Linux 11 n l
А як щодо Fedora? Вона відсутня у списку, коли ви використовуєте команду wsl –list –online.
Ви також можете інсталювати дистрибутиви через Microsoft Store.
Відкрийте Microsoft Store і введіть назву потрібного дистрибутива Linux. Тут ви знайдете лише офіційно підтримувані дистрибутиви.
Для отримання неофіційної підтримки дистрибутива, потрібно шукати вручну. Однак, вони можуть бути менш надійними та можуть містити помилки. Використовуйте їх лише для експериментів.
Натисніть “Встановити”, щоб зробити дистрибутив доступним у вашій системі.
Налаштування Дистрибутива За Замовчуванням
Для перегляду списку встановлених дистрибутивів, скористайтеся командою:
$ wsl --list
Позначка “Default” біля Ubuntu означає, що цей дистрибутив Linux запускається за замовчуванням, коли в командному рядку вводиться “wsl”.
Щоб змінити дистрибутив за замовчуванням, введіть команду:
$ wsl --setdefault <DistroName>
Щоб встановити Debian як дистрибутив за замовчуванням, введіть:
$ wsl --setdefault Debian
Наступного разу, коли ви введете “wsl” у терміналі, запуститься Debian.
Зміна Версії WSL для Дистрибутива
За замовчуванням дистрибутиви використовують WSL2. Щоб переглянути список встановлених дистрибутивів та їх версії WSL, введіть команду:
$ wsl --list --verbose
#вихід
NAME STATE VERSION * Ubuntu Stopped 2 Debian Stopped 2
Тут * позначає дистрибутив Linux, що використовується за замовчуванням.
Щоб змінити версію WSL з 2 на 1, введіть:
$ wsl --set-version Ubuntu 1
А щоб повернутися з 1 на 2, введіть:
$ wsl --set-vesion Ubuntu 2
Примітка: Процес перетворення може зайняти певний час. Не закривайте вікно під час перетворення.
Запуск Окремих Дистрибутивів з Різними Іменами Користувачів
Якщо потрібно запустити конкретний дистрибутив, введіть команду:
$ wsl -d <DistroName> Or $ wsl --distribution <DistroName>
Щоб запустити Ubuntu, введіть:
$ wsl -d Ubuntu
Для запуску з певним іменем користувача, додайте –user після імені дистрибутива:
$ wsl -d <DistroName> --user <UserName>
Наприклад, для запуску Debian з іменем користувача “root”:
$ wsl -d Debian --user root
Примітка: Якщо дистрибутив запускається з неіснуючим користувачем, з’явиться повідомлення про помилку “Користувача не знайдено”.
Оновлення Linux
Оновлення дистрибутива Linux можна виконати за допомогою наступних команд:
$ sudo apt update $ sudo apt upgrade
Також можна перевірити наявність оновлень ядра Linux для WSL:
$ wsl --update
Налаштування Visual Studio Code з WSL2
Можна налаштувати VS Code для роботи з WSL. Таким чином ви отримаєте доступ до терміналу WSL безпосередньо з VS Code. Це дозволить розробляти програми на базі Linux, маючи доступ до всіх необхідних інструментів та утиліт.
Крім того, ви зможете використовувати усі можливості VS Code для підвищення продуктивності у середовищі Windows.
Для цього встановіть розширення Remote Development. Знайдіть його у вкладці розширень VS Code за назвою.
Якщо ви працюєте локально, відкрийте “Перегляд” > “Термінал” у VS Code. Це відкриє термінал. Натиснувши на символ ‘>’, ви побачите список терміналів WSL.
Тут можна вибрати “Профіль за замовчуванням”.
Це можливо завдяки тому, що VS Code має прямий доступ до \\wsl$ та будь-яких налагоджувачів, що працюють на локальному хості.
Робота з Графічними Додатками та WSL2
Для роботи з графічними додатками потрібно встановити відповідні драйвери для WSL2. Intel, AMD та Nvidia надають драйвери для WSL, щоб графічні програми Linux працювали стабільно.
Однак, ви все одно можете зіткнутися з проблемами. Графічні додатки можуть мати несправні функції, а деякі програми можуть не працювати взагалі. В такому разі потрібно буде шукати альтернативи.
Варто зазначити, що цей метод є скоріше експериментальним, і може потребувати значних затрат часу.
Рекомендовано ознайомитися з офіційним посібником WSL2 щодо роботи з графічними програмами за допомогою Ubuntu.
Docker Desktop WSL2 у Windows
Якщо ви не бажаєте використовувати Hyper-V, можна скористатися Docker Desktop, який офіційно підтримує WSL2. Це дозволить використовувати інструменти Docker безпосередньо в Windows. Детальніше можна дізнатися з посібника.
Чому Microsoft Серйозно Ставиться до Linux?
Microsoft є приватною компанією, що розробляє закриті рішення, такі як Windows, і прагне, щоб користувачі залишалися в екосистемі Windows.
Проте, у 2016 році компанія оголосила про підтримку Open Source. Ця позиція змінилася з початку 2001 року, коли Стів Балмер назвав Linux “раковою пухлиною”.
У 2023 році все змінилося. Microsoft активно використовує Linux у своїй екосистемі. WSL2 була анонсована в травні 2019 року, а в жовтні 2021 року з’явилася у Windows Store. WSL2 v1.0 була випущена в листопаді 2022 року.
Microsoft також зробила програмне забезпечення, таке як Edge та Teams, доступним для користувачів Linux. Компанія активно сприяє розробці ядра Linux і є членом Linux Foundation.
Все це свідчить про те, що Microsoft серйозно ставиться до Linux. Однак, деякі скептики не вірять в щирість намірів компанії.
Підсумовуючи, Microsoft зацікавлена в Linux. Їхня підсистема Windows є доказом турботи про Linux і відкритий код. Але, найголовніше, це означає, що вони хочуть забезпечити користувачам безперешкодний доступ до ядра Linux без необхідності використовувати віртуалізацію або подвійне завантаження.
Заключні Слова
У суперечках “яка ОС найкраща для розробників”, ви можете отримати переваги обох систем. WSL2 надає доступ до ядра Linux через різні дистрибутиви Linux. Крім того, вона швидка та сумісна з Docker.
WSL2 постійно розвивається, вирішуючи проблеми сумісності та надаючи більше можливостей розробникам. Отже, майбутнє WSL2 виглядає багатообіцяючим, і Microsoft докладає усіх зусиль, щоб зробити ядро Linux доступним для користувачів Windows.
Ознайомтеся з різними дистрибутивами Linux, щоб покращити свої знання як системний адміністратор та розробник.