Гид по технологиям

Как запускать Linux-команды на Windows с помощью WSL 2

• 7 min read • DevOps • Обновлено 05 Dec 2025
Запуск Linux-команд на Windows с WSL 2
Запуск Linux-команд на Windows с WSL 2

Разные файлы и каталоги Linux в терминале

WSL 2 (Windows Subsystem for Linux 2) строится на успехе первоначального WSL и привносит улучшенную производительность и совместимость за счёт реального Linux-ядра, запускаемого внутри лёгкой виртуализации. Это позволяет запускать Linux-команды и утилиты напрямую в Windows без необходимости настраивать полноформатную виртуальную машину вроде VirtualBox или VMware.

Что такое WSL 2 и зачем он нужен

WSL 2 — это совместная подсистема, которая запускает Linux-ядро в оптимизированной виртуализированной среде, интегрированной с Windows. Одной строкой: WSL 2 даёт вам настоящий Linux-ядро и файловую систему, доступные из Windows, с минимальными накладными расходами.

Короткие определения терминов:

  • WSL 2 — обновлённая подсистема Windows для запуска Linux с полноценным ядром.
  • Дистрибутив (distro) — сборка пакетов и настроек Linux (Ubuntu, Debian, Kali и т. д.).
  • Shell — интерфейс командной строки (bash, zsh).

Почему выбрать WSL 2

  • Быстрый запуск Linux-приложений и инструментов разработки без отдельной VM.
  • Простая интеграция с Windows-файловой системой и IDE (VS Code, JetBrains).
  • Подходит для разработчиков, тестировщиков и инженеров данных, которым нужны Linux-инструменты на Windows.

Важно: если вам нужна изоляция на уровне отдельной физической машины, аппаратная виртуализация с полной VM всё ещё остаётся вариантом. Для большинства задач разработки и CI/CD WSL 2 достаточен.

Логотип Windows Subsystem for Linux на фоне терминала

Совместимость Windows

WSL 2 поддерживается в Windows 10 (Build 19041 и выше) и в Windows 11. На старых сборках Windows 10 установка WSL 2 потребует ручной активации компонентов и, возможно, обновления ОС.

Как установить WSL 2 (пошагово)

Ниже — минимальные и проверенные шаги для установки WSL 2 с Ubuntu. Если в вашей системе уже включена поддержка виртуализации и обновления, команда автоматизирует большую часть процесса.

  1. Откройте меню «Пуск», найдите «Командная строка» и выберите Запуск от имени администратора.

  2. Введите команду для автоматической установки WSL (в современных версиях Windows):

wsl --install

Эта команда установит подсистему, загрузит и установит дистрибутив (по умолчанию — Ubuntu) и включит необходимые возможности Windows.

  1. Чтобы установить конкретный дистрибутив (например, Debian или Kali), используйте:
wsl --install -d 

Замените на имя из списка доступных дистрибутивов.

  1. Чтобы просмотреть список доступных дистрибутивов:
wsl.exe -l -o
  1. После завершения установки запустите установленный дистрибутив через меню «Пуск» — например, “Ubuntu”. Первый запуск выполнит первичную настройку и предложит создать пользователя и пароль.

  2. Проверить версию установленного дистрибутива можно командой:

lsb_release -a

Критерии приёмки установки:

  • Дистрибутив запускается без ошибок и выводит приглашение shell.
  • Команда wsl --list --verbose показывает дистрибутив и версию WSL (должно быть WSL 2).
  • lsb_release -a возвращает данные по установленному дистрибутиву.

Как использовать Linux-команды в WSL 2

После запуска дистрибутива у вас есть терминал с полноценным набором Linux-инструментов. Примеры основных команд и сценариев:

Быстрый список команд (чек-лист для новичка):

  • Перемещение по каталогам — cd
  • Просмотр содержимого — ls
  • Создание каталога — mkdir
  • Просмотр файла — cat
  • Поиск по содержимому — grep
  • Создание пустого файла / обновление timestamp — touch
  • Запуск последовательности команд — &&
  • Справка по командам — man
  • Очистка экрана терминала — clear
  • Загрузка файлов из интернета — wget

Примеры с командами:

# перейти в папку проекта
cd ~/projects/myapp

# показать файлы и каталоги
ls -la

# создать новую папку
mkdir new_folder

# прочитать содержимое текстового файла
cat README.md

# найти все строки, содержащие 'error' в логах
grep -n "error" /var/log/*.log

# создать файл и сразу открыть редактор
touch notes.txt && nano notes.txt

# скачать файл
wget https://example.com/archive.tar.gz

Советы по использованию:

  • Используйте man <команда> для подробного справочного руководства.
  • Для более мощного поиска применяйте grep -R (рекурсивный) или ripgrep (rg), если установлен.
  • Для удобной работы с Windows-файлами: в WSL путь к диску C: доступен как /mnt/c/.

Полезные сценарии и примеры

  1. Быстрая сборка и запуск Node.js-проекта:
cd /mnt/c/Users/you/Projects/my-node-app
npm install
npm run build && npm start
  1. Поиск и замена в нескольких файлах (через sed или perl):
# заменить 'foo' на 'bar' во всех .conf-файлах
grep -R --include="*.conf" -l "foo" . | xargs sed -i 's/foo/bar/g'
  1. Создание виртуального окружения Python и установка зависимостей:
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt

Когда WSL 2 не подойдёт (ограничения и контрпримеры)

  • Полная изоляция или симуляция аппаратного окружения: для тестирования драйверов или низкоуровневого ПО нужна полноценная VM/физическая машина.
  • Высоконагруженные базы данных в продакшене: для долговременных высоконагруженных рабочих нагрузок лучше использовать серверы Linux или контейнеры в облаке.
  • Специфические аппаратные интеграции, требующие прямого доступа к PCI устройствам — иногда WSL не обеспечит необходимого уровня доступа.

Альтернативы:

  • Полноценная виртуальная машина (VirtualBox, VMware, Hyper-V).
  • Контейнеры Docker (локально или в облаке) — хороши для изоляции приложений.
  • Двойная загрузка (dual-boot) — прямой доступ к железу и нативная производительность.

Роли и контрольные списки (role-based checklists)

Разработчик:

  • Установить WSL 2 и предпочитаемый дистрибутив.
  • Настроить SSH-ключи и менеджер версий (git).
  • Настроить интеграцию с редактором (VS Code Remote - WSL).
  • Проверить доступ к Windows-файлам через /mnt.

Системный администратор / DevOps:

  • Настроить резервное копирование конфигураций дистрибутива.
  • Проверить настройки сети и доступ к Docker (при необходимости).
  • Обеспечить ограничения и контроль доступа (политики Windows).

Аналитик данных / ML-инженер:

  • Установить Python, venv/conda, нужные библиотеки (numpy, pandas, scikit-learn).
  • Проверить доступ к GPU при использовании WSLg/WSL2 с поддержкой GPU (уточнить совместимость).

Cheatsheet: команды и сочетания

КомандаОписаниеПример
cdСменить каталогcd ~/projects
lsСписок файловls -la
mkdirСоздать каталогmkdir logs
catВывести содержимое файлаcat file.txt
grepПоиск по содержимомуgrep -n “TODO” -R
touchСоздать файл/обновить timestamptouch .env
&&Последовательное выполнениеmake build && make test
manСправка по командеman tar
wgetСкачивание по URLwget https://…

Безопасность и права доступа

  • По умолчанию WSL запускается от имени пользователя внутри дистрибутива. Для действий с привилегиями используйте sudo.
  • Файлы Windows доступны в /mnt, будьте внимательны при изменении системных файлов Windows.
  • Резервное копирование: используйте экспорт WSL (wsl --export) для создания архива дистрибутива.

Пример создания бэкапа дистрибутива:

wsl --export Ubuntu ubuntu-backup.tar

И восстановления:

wsl --import MyUbuntu C:\WSL\MyUbuntu ubuntu-backup.tar --version 2

Советы по отладке и производительности

  • Проверить статус подсистемы и версию WSL:
wsl --list --verbose
  • Если возникают медленные операции с файлами, храните проектные файлы внутри файловой системы WSL (~), а не на /mnt/c, для лучшей производительности.
  • Отключите антивирусное сканирование конкретных директорий Windows, если оно существенно замедляет доступ к файлам через /mnt.

Глоссарий (1 строка каждый термин)

  • WSL 2 — механизм в Windows, который запускает реальное Linux-ядро в лёгкой виртуализации.
  • Дистрибутив — собранная версия Linux с пакетами и настройками (Ubuntu, Debian и т. д.).
  • Shell — программный интерфейс командной строки (bash, zsh).
  • /mnt — точка монтирования Windows-дисков внутри WSL.

Часто задаваемые вопросы

Можно ли запускать GUI-приложения Linux через WSL 2?

Да. Современные версии Windows и WSL поддерживают запуск GUI-приложений (WSLg) в определённых сборках Windows 10 и в Windows 11; проверьте совместимость и наличие компонентов WSLg.

Где хранятся мои файлы WSL?

Файлы дистрибутива обычно находятся в виртуальной файловой системе WSL и доступны из Windows, но для прямого доступа рекомендуется работать через /mnt/c/... или использовать экспорт/импорт.

Как установить другой дистрибутив?

Выполните wsl --install -d или загрузите дистрибутив из Microsoft Store.

Итог и рекомендации

WSL 2 — эффективный и удобный способ получить Linux-инструментарий на Windows без тяжёлой виртуализации. Он идеально подходит для разработки, быстрого тестирования и большинства рабочих сценариев, когда нужна совместимость с Linux. Если нужна полная аппаратная эмуляция или долговременное продакшен-окружение, рассмотрите полноценную VM или сервер Linux.

Важные заметки:

  • Начните с wsl --install, затем запустите дистрибутив и выполните lsb_release -a для проверки.
  • Держите проектные файлы внутри файловой системы WSL для лучшей производительности.
  • Делайте резервные копии дистрибутива командой wsl --export.

Краткое резюме и что делать дальше:

  1. Установите WSL 2 и Ubuntu через wsl --install.
  2. Овладейте базовыми командами: cd, ls, mkdir, grep, touch, wget.
  3. Настройте интеграцию с вашей IDE и настройте резервное копирование.
Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро