
Почему я выбрал WSL вместо полноценного Linux
Основная часть моей разработки завязана на Linux, но один из самых удобных вариантов для меня — использование WSL (Windows Subsystem for Linux), а не переход на полноценную Linux-машину.
В этой статье я хочу поделиться своим опытом настройки WSL для комфортной разработки, а также размышлениями о том, почему такой подход оказался для меня оптимальным. На это влияет несколько факторов.
Во-первых, иногда требуется специфический софт, который доступен только под Windows. Да, в других ОС могут быть аналоги, но зачастую они менее удобны или требуют дополнительной настройки.
Во-вторых, для разных проектов нужно разное окружение. WSL позволяет легко изолировать среды разработки, настраивая их под конкретные задачи или группы проектов. Это гораздо удобнее, чем держать несколько физических машин или постоянно переустанавливать систему.
Наконец, есть и субъективный фактор — привычка. Я с самого начала работал с Windows, и, несмотря на все преимущества Linux, полностью перестроить рабочий процесс оказалось сложно. WSL в этом плане — идеальный компромисс: Linux-окружение под рукой, но без необходимости отказываться от удобств Windows.
Преимущества WSL для разработки
В первую очередь — разработчикам, которые постоянно осваивают новые технологии, знакомо чувство, когда нужно вернуться к старому проекту, а там — специфическая версия языка, странные зависимости или забытые настройки? Можно просто развернуть нужное окружение за пару минут, не ломая голову над тем, "как же это у меня работало в прошлый раз".
Ещё один сценарий — когда есть хобби-проекты, совсем не связанные с работой. Например, вы пишете на Python для аналитики, но вдруг решили попробовать Rust для embedded-разработки. Настраивать всё в одной среде — это риск получить "салат" из зависимостей, который потом придётся разгребать. Гораздо удобнее иметь две изолированные среды: одну — для рабочих задач, другую — для экспериментов.

Про боль Windows
Работая с Windows, многие сталкивались с ситуацией, когда проще переустановить систему, чем чинить сломанное. Но после этого — прощайте, все настройки, тулзы и скрипты! Если вы работаете годами, восстановление окружения может занять не день и даже не неделю, а кучу нервов и "танцев с бубном". WSL здесь — как страховка: даже если Windows "умрёт", ваши Linux-среды останутся целы.
Для кого WSL не подойдёт?
Опытные админы и DevOps, у которых под рукой кластеры, облака и пара домашних серверов "на подхвате", наверняка лишь улыбнутся. Но новичкам, которые только погружаются в разработку, такой подход может сэкономить кучу времени и избавить от типичных ошибок.
Этот материал — не истина в последней инстанции, а мой субъективный опыт, собранный из проб, ошибок и статей коллег. Если у вас есть более эффективный способ, буду рад почитать в комментариях! Ведь идеального workflow не существует, есть только тот, который работает лично для вас.
Сравнение подходов: физические машины, контейнеры, виртуальные машины
Давайте для начала сравним несколько подходов и решений, которые я перепробовал и рассматривал как возможные варианты.
Первый и самый идеальный вариант — конечно же, иметь несколько физических машин под рукой. Подключаться к ним с основной рабочей станции, построить домашнюю сеть с развертыванием сервисов и удаленным управлением каждой машиной. Такой подход действительно позволяет не бояться поломок и быстро перестраиваться при необходимости.
Но давайте смотреть правде в глаза: многие из нас не живут на одном месте, часто путешествуют или работают из разных локаций. Да и в быту есть нюансы: жена, дети, домашние животные могут случайно повредить это "добро". А еще — куча проводов, сборщиков пыли, которые не особо радуют вторую половину, особенно если вы живете не в стометровой квартире.
Разместить такое оборудование удобно и безопасно получается далеко не у всех. Добавьте сюда косые взгляды домочадцев из-за вечно пылящихся жужжащих коробок и проводов, вечный вопрос: "И долго еще это будет тут стоять?", и энтузиазма заметно поубавится.

Проблемы контейнеризации (Docker и аналоги)
Так давайте подумаем, как можно решить эту проблему. Один из вариантов — использовать контейнеризацию, например Docker или аналогичные решения. Мы, как разработчики, можем настроить такие контейнеры для развертывания изолированных сред разработки.
Однако у этого подхода есть ряд существенных недостатков, особенно если мы работаем под Windows или macOS. Когда нам нужно примонтировать директорию с проектом и работать в обособленной среде, могут возникнуть сложности.
Главная проблема: при работе с большим количеством файлов (что совсем не редкость в популярных фреймворках или CMS) мы сталкиваемся с необходимостью конвертации файлов между разными файловыми системами. Это может существенно замедлить как запуск проекта, так и саму работу с ним, что негативно сказывается на скорости разработки.
Еще один нюанс — дополнительные сложности с запуском программ, использующих графический интерфейс. Яркий пример — попытка запуска Android-эмулятора через Android Studio в такой среде. Полноценно работать не получается, а значит, мы теряем часть необходимого функционала.
Виртуальные машины (VirtualBox) и их ограничения
Еще одной альтернативой могли бы стать другая виртуальные машины — взять хотя бы VirtualBox. Он же бесплатный для домашнего использования, позволяет развернуть виртуалку, которая ничем не будет отличаться от реального Linux. И, если честно, этот способ мог бы быть почти идеальным вариантом, особенно если использовать в связке Vagrant: написал конфиг один раз и потом хоть на старом ноутбуке, хоть на новом компьютере разворачиваешь идентичное окружение за пару команд.
Но вот тут есть один момент, который лично для меня стал стоп-фактором. В VirtualBox нет нормальной поддержки GPU-ускорения. А для меня это критично, потому что я занимаюсь машинным обучением и постоянно использую видеокарту для тестирования моделей. Вот так вот: вроде бы отличное решение, но из-за этой одной особенности пришлось искать другие варианты. Хотя, если вам интересно, я могу потом подробнее рассказать про этот подход. Может быть, для ваших задач он как раз подойдет идеально.
Почему WSL — мой оптимальный выбор (и его недостатки)
Вот мы и подошли к варианту, который лично для меня оказался самым удобным, — WSL. Честно говоря, он реально выручает в большинстве ситуаций. С ним можно легко создавать окружения, приостанавливать их когда нужно и без проблем переносить между компьютерами. Особенно радует, как хорошо Windows и Linux работают вместе: файлы доступны с обеих сторон, что очень экономит время.
Но не всё так гладко, конечно. Во-первых, это всё же не совсем настоящий Linux, хотя и очень близко. Во-вторых, с USB-устройствами бывают проблемы: например, когда я работал с Nvidia Jetson, пришлось изрядно повозиться с настройками. Да и с подключением отдельных дисков иногда нужно "потанцевать с бубном".
Настройка WSL: загрузка и установка образа Ubuntu
Теперь о настройке. Начинается всё с загрузки образа Linux. И знаете, я долго думал: "Почему именно скачивать?" Оказалось, это самый простой и удобный вариант, потому что нам при разворачивании ubuntu не придется ждать время скачивания образа, и это позволит нам даже автоматизировать процесс разворачивания проектов.
Скачать можно по ссылке с официального сайта ubuntu
https://cloud-images.ubuntu.com/wsl/
Например, можно зайти по адресу
https://cloud-images.ubuntu.com/wsl/releases/24.04/20240423/ и скачать ubuntu-noble-wsl-amd64-wsl.rootfs.tar.gz обратите внимание на архитектуру: сейчас бурно развиваются решения для мобильных процессоров, и вам может потребоваться версию для ARM.
Также ниже приведены команды для скачивания образов на ПК.
Чтобы открыть PowerShell, введите в любой папке pwsh, нажмите Enter — откроется терминал для выполнения команд.

Установка и настройка Ubuntu в WSL
-
Скачивание образа Ubuntu
Выполните команду для загрузки образа:Invoke-WebRequest https://cloud-images.ubuntu.com/wsl/releases/noble/20240423/ubuntu-noble-wsl-amd64-24.04lts.rootfs.tar.gz -OutFile .\ubuntu-noble-wsl-amd64-24.04lts.rootfs.tar.gz
-
Создание WSL-окружения
Импортируем скачанный образ в WSL:wsl --import Ubuntu-24.04 .\Ubuntu-24.04 .\ubuntu-noble-wsl-amd64-24.04lts.rootfs.tar.gz
-
Запуск Ubuntu
После выполнения команды вы можете запустить окружение с помощью:wsl -d Ubuntu-24.04
Терминал отобразит приветственное сообщение Ubuntu.
-
Создание пользователя
Для удобной работы рекомендуется создать отдельного пользователя. Для этого:Откройте проводник и перейдите в корневую папку WSL (она появится в разделе Linux).
Создайте файл
create_wsl_user.sh
и вставьте в него
create_wsl_user.sh
#!/bin/bash # Проверка прав root/sudo if [ "$(id -u)" -ne 0 ]; then echo "Ошибка: Скрипт требует root-прав. Запустите через sudo." >&2 exit 1 fi # Запрос имени пользователя read -p "Введите имя нового пользователя: " username # Проверка существования пользователя if id "$username" &>/dev/null; then echo "Ошибка: Пользователь '$username' уже существует." >&2 exit 1 fi # Запрос пароля (скрытый ввод) read -s -p "Введите пароль для '$username': " password echo # Создание пользователя useradd -m -s /bin/bash "$username" || { echo "Ошибка при создании пользователя '$username'." >&2 exit 1 } # Установка пароля echo "$username:$password" | chpasswd || { echo "Ошибка при установке пароля." >&2 exit 1 } # Добавление пользователя в группу sudo (Ubuntu/Debian) if usermod -aG sudo "$username"; then echo "Пользователь '$username' добавлен в группу 'sudo'." else echo "Ошибка: не удалось добавить пользователя в группу 'sudo'." >&2 exit 1 fi # Предложение сделать пользователя по умолчанию в WSL read -p "Сделать '$username' пользователем по умолчанию в WSL? (y/N): " set_default if [[ "$set_default" =~ [yY] ]]; then # Установка пользователя по умолчанию для WSL echo "[user]" > /etc/wsl.conf echo "default=$username" >> /etc/wsl.conf echo "Пользователь '$username' установлен как default в WSL." echo "Перезапустите WSL для применения изменений:" echo " wsl --shutdown" echo " wsl" fi # Итоговый вывод echo "--------------------------------------------------" echo "Пользователь '$username' успешно создан:" id "$username" echo "Группы: $(groups "$username")" if [[ "$set_default" =~ [yY] ]]; then echo "Статус: установлен как default в WSL." else echo "Статус: обычный пользователь (не default)." fi
Затем выполните в терминале WSL:
cd ~ chmod +x ./create_wsl_user.sh ./create_wsl_user.sh
Следуйте инструкциям на экране.
-
После настройки перезапустите WSL, и окружение будет готово к работе.
Установка и настройка Node.js через NVM для frontend разработки
Для JavaScript-разработки критично иметь возможность быстро переключать версии Node.js. Лучший способ — NVM
1. Установка NVM в WSL
Актуальную версию можно посмотреть на сайте репозитория
https://github.com/nvm-sh/nvm
sudo apt update
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
После установки перезагрузите терминал (source ~/.bashrc
).

2. Работа с версиями Node.js
-
Установка LTS-версии:
nvm install --lts
-
Переключение между версиями:
nvm install 18. nvm use 18.
-
Установка версии по умолчанию:
nvm alias default 18

3. Создание и запуск проекта
Я считаю, что Visual Studio Code уже установлен; если нет, его можно установить с официального сайта https://code.visualstudio.com/download
-
Создаем проект на Vue с Vite и следуем инструкции
npm create vue@latest

-
Запуск проекта в ide vs code
cd ./demo code .
-
Устанавливаем зависимости через терминал и приступаем к работе
npm istall npm run dev

4. Преимущества NVM
✅ Нет конфликтов — каждая версия Node.js изолирована.
✅ Быстрое переключение —
nvm use 16
/nvm use 20
без переустановки.
Настройка Docker для backend-разработки на PHP
Я долго выбирал между чистым WSL и Docker-контейнерами, и для серьёзных проектов теперь предпочитаю Docker. Контейнеры дают полную изоляцию окружения, позволяют одновременно работать с разными версиями софта и гарантируют идентичность среды на всех машинах. При этом файлы проекта остаются доступными, а само окружение всегда остаётся чистым. Главный плюс Docker — возможность создать именованный контейнер, который сохраняет все настройки между сеансами работы. Это особенно удобно при поддержке нескольких проектов с разными требованиями. А какой подход предпочитаете вы — WSL "из коробки" или изолированные контейнеры?
docker-install.sh
# Обновление списка пакетов
sudo apt-get update
# Обновление установленных пакетов (без запроса подтверждения)
sudo apt-get upgrade -y
# Установка необходимых зависимостей:
# - ca-certificates: SSL сертификаты
# - curl: утилита для загрузки файлов
# - gnupg: менеджер ключей
# - lsb-release: информация о версии ОС
# - mkcert: создание локальных SSL сертификатов
# - apache-utils: утилиты Apache (включая htpasswd)
sudo apt-get install -y ca-certificates curl gnupg lsb-release mkcert apache-utils
# Создание директории для ключей APT с правильными правами
sudo mkdir -m 0755 -p /etc/apt/keyrings
# Загрузка и сохранение GPG-ключа Docker
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor --output /etc/apt/keyrings/docker.gpg
# Установка прав на чтение для всех пользователей
sudo chmod a+r /etc/apt/keyrings/docker.gpg
# Добавление репозитория Docker в sources.list.d
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# Обновление списка пакетов после добавления репозитория Docker
sudo apt-get update
# Установка Docker и сопутствующих компонентов:
# - docker-ce: Docker Community Edition
# - docker-ce-cli: CLI для Docker CE
# - containerd.io: контейнерная среда выполнения
# - docker-buildx-plugin: расширение для сборки образов
# - docker-compose-plugin: плагин для Docker Compose
sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
# Проверка работы Docker запуском тестового контейнера
sudo docker run hello-world
Создайте файл docker-install.sh
в папки с именем пользователя которого мы создали ранее в моем случае user1 так же можно это сделать через проводник windows

-
После этого устанавливаем Docker, введя пароль администратора, который мы задали ранее. Не забудьте предварительно дать права на выполнение установочному скрипту, чтобы система могла установить все необходимые зависимости.
chmod +x docker-install.sh sudo ./docker-install.sh

После вывполенения мы увидим вот такой результат хоть в конце мы видим ошибку это нормально сейчас я покажу как это исправить
-
Далее, после открытия окна редактора, нам нужно: 1. Несколько раз нажать Enter, чтобы переместиться на следующую строку. 2. Кликнуть правой кнопкой мыши для вставки (или подтверждения). После этого настройки должны выглядеть, как показано на экране. Затем нажимаем: - Ctrl + X (для выхода), - Y (чтобы сохранить изменения), - Enter (для подтверждения).
sudo nano /etc/wsl.conf

-
Можно просто попробовать выйти и зайти заново но лучше перезагрузить wsl в powershell
wsl --shutdown
После этого можно запустить образ

В следующей статье вас ждет:
Работа с Git в WSL2 - особенности и лучшие практики
Упрощенное управление Docker-контейнерами через WSL
Развертывание PHP-окружения в Docker
Запуск Android Studio и эмулятора в WSL
Комментарии (174)
andmerk93
15.05.2025 16:33Автор не в курсе, что WSL - это просто виртуалка. Иронично.
Почему я выбрал WSL вместо полноценного Linux
Потому что не осилил дуалбут. Докер в консольной виртуалке с консольным линуксом осилил. А гуевый дуалбут - не осилил. Иронично [2]
Работая с Windows, многие сталкивались с ситуацией, когда проще переустановить систему, чем чинить сломанное
Skill issue.
Я вот, хоть убей, не могу понять. Как так получается, что человеку конфигурить ноджс в докере в убунте в всле не сложно, а Винду настроить - сложно. Вот как? КАК?
Как вы к этому приходите?
UPD: и да, если только вкатываешься в разработку, в чём проблема работать нативно? На любой ОС. Что там у вас такое, что обязательно требует шатания докера и без этого вообще никак?
r_revel Автор
15.05.2025 16:33Здравствуйте! Спасибо комментарий.
Автор не в курсе, что WSL - это просто виртуалка. Иронично.
Да я знаю и варитов виртуализации очень много и hyper v windows это один из них, но для меня важно было использовать gpu ускорения, простота настройки и минимальный парог входа
Дуалбут я конечно использовал, но так как статья для тек кто начинает, возможно с ним возникнут сложности, и для того что бы быстро переключаться по os не так удобен. Если установлено более 2-х осНе спорю — починить можно всё. Но иногда на это просто не хватает времени. У меня был забавный случай, когда перестал работать USB-драйвер. Честно говоря, я так и не разобрался, в чём была проблема: пробовал восстановить систему, переустановить драйвер, использовал разные средства восстановления, перерыл кучу форумов... Но времени было в обрез, так что пришлось просто переустановить систему. В общем, да — технически всё возможно починить. Главное, чтобы времени хватило.
Я вот, хоть убей, не могу понять. Как так получается, что человеку конфигурить ноджс в докере в убунте в всле не сложно, а Винду настроить - сложно. Вот как? КАК?На самом деле это довольно просто. Идеальный вариант - развернуть Proxmox на отдельном сервере с нужными образами, и система будет работать идеально.
Но суть не в этом. Я постоянно наблюдаю, как пользователи запускают Docker-контейнеры с кучей зависимостей, после чего система начинает заметно тормозить. Именно поэтому я призываю больше пользователей Windows постепенно переходить на Linux и повышать свою техническую квалификацию. А wsl позволит более плавно сделать это
ardythe
15.05.2025 16:33WSL - это просто виртуалка.
Не просто. На виртуалку вы можете поставить любой дистрибутив, а на WSL это делается с танцами с бубном.
unreal_undead2
15.05.2025 16:33Одно время развлекался с этим - даже химера взлетела без особых приседаний.
amironov
15.05.2025 16:33Если у дистрибутива есть docker образ, то все танцы сводятся к паре команд.
andmerk93
15.05.2025 16:33Я вот не понял, автор шутит или серьезно.
amironov
15.05.2025 16:33Автор статьи, автор комментария или автор документации? Про других не знаю, а если по поводу пары команд, то достаточно:
docker create ... docker export ... wsl --import ...
andmerk93
15.05.2025 16:33А вот это прикольно. Такую фишку не видел, спасибо.
Если кому-то тоже интересно, речь идёт про этот способ
https://learn.microsoft.com/en-us/windows/wsl/use-custom-distro
maisvendoo
15.05.2025 16:33Автор не в курсе, что WSL - это просто виртуалка. Иронично
А разве это виртуалка? Всегда считал, что это wine наоборот
Bluewolf
15.05.2025 16:33"WINE наоборот" - это WSL1, от которого давно отказались, а WSL2 - это именно виртуалка с линуксом внутри, пусть и неплохо интегрированная с хост-системой. И то, и другое называют просто "WSL", но реализация совершенно разная.
unreal_undead2
15.05.2025 16:33Насколько понимаю, wsl1 пока ещё живой, просто большинство им не пользуется.
PikNic
15.05.2025 16:33Пользуюсь WSL1 чисто ради того, чтобы открывать COM-порты. Так и не нашёл на винду нормального софта для этого. Был платный XShell, но бесплатную версию нынче сильно порезали. А, ну и ещё всякие инструменты для работы с фыйлами в виндовой ФС в WSL1 работают сильно быстрее.
nick758
15.05.2025 16:33чтобы открывать COM-порты. Так и не нашёл на винду нормального софта для этого.
А TeraTerm, например, чем не устраивает?
PikNic
15.05.2025 16:33Ответил в соседнем комментарии: https://habr.com/ru/companies/ntechlab/articles/908450/comments/#comment_28313208
mayorovp
15.05.2025 16:33Хм, а чего не хватает в putty для работы с COM-портами?
PikNic
15.05.2025 16:33В нём и подобном софте — вкладок и адекватного интерфейса (например бесит, что при отвале ком-порта выскакивает модальное окно и заставляет делать лишний клик). Единственный плюс putty — он умеет открывать виндовые пайпы, такое вообще мало кто умеет.
nebularia
15.05.2025 16:33Ну от него не прямо отказались, он отлично работает, когда нужно просто линукс окружение для CLI и не хочется, чтобы Hyper-V монополизировал виртуализацию. Плюс с сетью в разы меньше проблем, сетевой стек это буквально сетевой стек Windows, а не костыли из WSL2. В общем занял нишу подобную Cygwin/Termux, но в отличие о них тут обычный дистрибутив Linux, а не кастом. Но да, работать будет не всё, например докер - не будет. Всё зависит от задач.
Okeu
15.05.2025 16:33первая версия, была не виртуалкой (вроде)
а вот у WSL2, можно даже в настройки окошка войти - и там будет размер виртуального диска, количество ядер, RAM и все прочие, типичные для виртуальных машин настройки))
Я так по невнимательности забил себе диск полностью. Несколько лет на компе фоном крутилась WSL дебиана, который я вроде как остановил, и он выжрал своим динамическим диском все место на системном томе) Но там явно какой-то баг случился, потому что сама виртуалка не работала и вероятно все сломалось при перекатывании с 10 на 11 винду (или где-то по пути)
serp2002
15.05.2025 16:33Да вы перечитайте пост. Он нейросетью написан, а там где автор сам писал количество орфографических ошибок зашкаливает. Он пользователя создает через гиганский скрипт, где по делу только две строки: создание пользователя через useradd и и включение его в группу администраторов через usermod. Мало того, нормальный админ работающий с debian\ubuntu сделал бы это через adduser, т.к. удобнее, проще и быстрее.
Админы, верните инвайты!!!!
unreal_undead2
15.05.2025 16:33Потому что не осилил дуалбут.
Если нужен Windows-only софт (какой нибудь корпоративный мессенджер), с дуалбутом несколько неудобно.
entze
15.05.2025 16:33Не то слово.
Трайпал и т.д. бут. Ибо можно обнаружить, что софт работает прекрасно под 20, 22 и надо разбираться под 24. Поставить систему WSL нужной версии за 5 минут и пользоваться нормальный офисом или перегружаться туда-сюда с бутами.
Если цель не получить результат, а обеспечить себя Важной работой - то вариант.
fhunter
15.05.2025 16:33Хм, у teams есть неофициальный клиент под linux, вполне работает. Всё равно windows-only версия на electron.
Andy_U
15.05.2025 16:33Потому что не осилил дуалбут.
Ну, осильте его на корпоративном ноутбуке.
unreal_undead2
15.05.2025 16:33Мой коммент примерно о том же, хотя могу и возразить - в корпоративном окружении обычно есть лаба с разными железками и операционками и большого смысла в WSL нет. Хотя держал его какое то время для возможности поэкспериментировать локально, но где то год назад снёс вместе с Hyper V для экономии памяти.
erickhamitov
15.05.2025 16:33Удачи восстановить винду с покореженными файлами реестра
DikSoft
15.05.2025 16:33Чаще всего можно откатиться на их предыдущие работающие версии. Если диск живой. Если не живой, то тут разницы нет, какая там ОС была )
HemulGM
15.05.2025 16:33Имея WSL под рукой я могу без дополнительного устройства, собирать, запускать и тестировать графические приложения для Линукс находясь под Виндой.
Говорю о разработке в RAD Studio. WSL, WSA и проект запускается уже для 3х ОС, хоть одновременно. Только для Mac OS и iOS приходится использовать устройство или виртуалку (очень хреново работает). Тестируется и отлаживается для разных дистрибутивов.
В среде несколько платформ и достаточно переключиться на нужную и нажать "Запустить". Автодеплой и запуск с отладкой. Это сильно удобнее и не нужны какие-то дополнительные скрипты.
isumix
15.05.2025 16:33Если не можете без винды, то установите ее в Virtualbox или Virtual Machine Manager под Linux и будет вам счастье.
r_revel Автор
15.05.2025 16:33Здравствуйте! Спасибо за ваш комментарий
Оптимальное решение - использовать Proxmox с двумя видеокартами. Но действительно не всегда получается из-за софта, особенно связанного с кадом или креативом
bjfssd757
15.05.2025 16:33Я лично наоборот сделал)
Пользуюсь виндовй, а для всяких необычных задач стоит линукс на виртуалке
vdudouyt
15.05.2025 16:33Пользуюсь Linux, а для всяких необычных задач (впрочем, крайне редких) стоит винда на виртуалке.
bjfssd757
15.05.2025 16:33Ну и правильно.
Я ушёл с дуалбута из-за какой-то стрёмной проблемы, решение на которую я не нашёл даже в гугле (нашёл, но они были бесполезны).
Дело вкуса) меня лично полностью устраивает винда и мне всё нравится. Кому-то линукс больше нравится. Разницы 0))
vkomp
15.05.2025 16:33Юзал WSL точно больше года, и очень хотел нормальный линукс:
- ДВЕ файловых системы, и когда ставишь что-то новое, то иногда не понимаешь, где и какие файлы лежат.
- проблемы с разными видами русской win-кодировки умножаются, что стреляет редко, но метко.
- потихоньку накапливается ДВЕ системы без четкой границы, и начинаешь жить по принципу "работает - не трогай", что неприемлемо, когда хочется "пошатать", почистив "ненужные" файлы.
Основной проблемой является то, что это уже Линукс в руках того, кто хочет пользоваться и знает только Винду. Сейчас я полгода на Линуксе, и до этого 10 админил VDS:
- жить норм. Перешел на переключение раскладки по CapsLock и уже неудобно в Винде.
- dev-инструменты работают очень четко. Нет никакого желания вернуться в винду для разработки!
- не привык к LibreOffice, и жду когда aimp сделают кроссплатформенным (под wine не торт). При переключении в винду кайфую от FarManager - здесь он тоже не торт. И скучаю по ImageViewer.
И все равно переключаюсь в Винду, потому что офис от мелкомягких - это эталон. И еще есть лайтрум с фотошопом. Дополнительно держу VirtualBox для мелких вопросов. Винда и Линукс на разных разделах одного ssd - это танцы с бубном. За полгода надоело, едет второй ssd.
И мне очень не нравилась верхняя строка убунты, поставил Panel-to-Dash - жить резко приятнее.З.Ы. в Линуксе нет синхронизации папки Яндекс.Диска и Гугла, но можно прикольно монтировать удаленные хранилища. Например, замонтировал продуктовое s3-хранилище, и шаришь по файлам как на домашнем компе.
V1tol
15.05.2025 16:33в Линуксе нет синхронизации папки Яндекс.Диска
Есть: https://yandex.com/support/yandex-360/customers/disk/desktop/linux/
Для значка в трее использую https://github.com/slytomcat/yd-go
FODD
15.05.2025 16:33Насчет переключения раскладки по CapsLock - в PowerToys можно забиндить капс на нажатие Win+Space. Костыль, но для себя я так решил эту проблему
dartraiden
15.05.2025 16:33Либо решить проблему аппаратно. Если клавиатура позволяет на клавишу повесить "макрос", соответственно создаём макрос "Alt+Shift" и вешаем на желаемую клавишу.
В моей клавиатуре это делается через софт от производителя, который потом можно удалить - все настройки сохраняются в памяти клавиатуры.
vkomp
15.05.2025 16:33Для винды есть прикольная AutoHotKeys. Весит копейки, а возможности немеряны. Помогла с медийными кнопками на logi K270. Но я сейчас клаву поменял, пока без надобности. В винде можно CapsLock, просто редко захожу в нее.
13werwolf13
15.05.2025 16:33не привык к LibreOffice
в либре можно включить tabbed интерфейс и разницы с мелкомягким офисом почти невидать, алсо ещё можно пользовать freeoffice или onlyoffice или wps office (они и на винде то получше работают чем мелкомягкий офис)
и жду когда aimp сделают кроссплатформенным
qmmp (он даже шкурки от винампа жуёт как aimp в лучшие годы)
в Линуксе нет синхронизации папки Яндекс.Диска
есть вполне себе официальный клиент яндекс диска во вполне себе официальном репозитории пакетов яндекса. правда он консольный, но гуёв к нему сообщество наплодило штук 5.
можно прикольно монтировать удаленные хранилища
советую ознакомиться с утилитой rclone, она многое умеет, синхронизировать, монтировать, отображать граф занимаемого объёма как ncdu.. и делает это даже для таких сущьностей которые как фс даже не воспринимаешь (например автоиндекс отдаваемый каким нибудь nginx можно замонтировать как фс).
vkomp
15.05.2025 16:33либра работает, иногда запускаю, чтобы поплакать. Но если я и 20 лет назад уже в VBA залезал, и групповые операции юзал, то это глубоко вшито. Потому пока запускаю мс-офис.
Наверно, про aimp 2 версии - я 3-ей давно пользуюсь. Переключаюсь из фонотеки в плейлисты один раз - все настройки.
Выше уже ссылку дали, консоль и gui к нему. Что было логично - я поверхностно посмотрел по типу винды, и в этом была ошибка.
Утилит полно, все не узнать. ЖПТ хорошо подсказывает с линуксом
DungeonLords
15.05.2025 16:33в Линуксе нет синхронизации папки Гугла
Для Ubuntu используется среда рабочего стола Gnome с файловым менеджером GNOME Files, куда еще в 2015 году интегрировали возможность использовать свой Google Диск непосредственно из приложения GNOME Files. Но если у вас не Gnome, то подключить Google Drive можно согласно моему мануалу
Nikita22007
15.05.2025 16:33лично я подключал в Windows свою VDS как сетевую папку по ssh. Для этого есть какой то драйвер на гитхабе. Может и для W3 найдется?
upd. Это был Win-SSHFS вместе с WinFsp. Первый обеспечивает работу с удалённой файловой системой по SSH, а второй упрощает реализацию пользовательских драйверов файловых систем
MAXH0
15.05.2025 16:33Как Microsoft дал нам Linux без головной боли
От Linux не болит голова. Он просто заставляет думать. Если Вы считаете, что Вы программист -- развивайте этот навык. Даже если с непривычки болит голова.
r_revel Автор
15.05.2025 16:33Здравствуйте! Спасибо за ваш комментарий
Видимо, заголовок не совсем точно передаёт суть: это руководство предназначено для тех, кто делает первые шаги в IT. Для самоучек настройка Linux может быть непростой, поэтому данный гайд создан специально для новичков - чтобы помочь им настроить систему без лишних сложностей.
Работать в Windows, на мой взгляд, гораздо менее удобно. Пусть лучше начинают с Linux, чем остаются только в среде Windows.
CatAssa
15.05.2025 16:33Я - Windows разработчик, с какого-то времени вынужден разрабатывать кроссплатформенные десктоп-приложения, конкретно - под Windows/Astra Linux/Red OS. Довольно много времени потратил на освоение работы с WSL[WSL2]. В итоге вернулся к варианту, когда Linux'ы живут в VirtualBox. Можно и практически полноценную сеть построить, и отладить инсталляцию, и взаимодействие с реальным рабочим столом, и (чуть ли не самое главное) - иметь снимки состояний гостевых машин, и MSVS работает нормально (уже и не помню, что там за проблемы были в связках MSVS + WSL).
VirtualBox нет нормальной поддержки GPU-ускорения. А для меня это критично, потому что я занимаюсь машинным обучением и постоянно использую видеокарту для
То есть , если вам сие не критично, то - VirtualBox (и т.п.)
r_revel Автор
15.05.2025 16:33Здравствуйте! Спасибо за ваш комментарий
Я полностью согласен. Изначально планировал развернуть всё на VirtualBox, но столкнулся с ограничениями в работе с GPU, что стало серьёзным препятствиемwhatfor
15.05.2025 16:33А как обстоят дела в работе с GPU в WSL? Такое же быстродействие как если запускать на чистом Linux-е?
andmerk93
15.05.2025 16:33А если критично - то Hyper-V.
Полноценная ВМ от MS, с сетями, снимками и аппаратным ускорением. Из минусов - проблемы с флешками (да, до сих пор)
Более того, wsl2 - это и есть порезанный и преднастроенный Hyper-V.
FODD
15.05.2025 16:33wsl2 - это и есть порезанный и преднастроенный Hyper-V
Вроде там еще пара каких-то фишечных костылей еще для чуть более быстрой работы монтированной fs и прокидывания GUI приложений прямо в хост, не?
unreal_undead2
15.05.2025 16:33А это не (возможно, сделанные специально для WSL2) фичи самого Hyper V?
mayorovp
15.05.2025 16:33Оптимизация виртуальных машин - это всегда частичная паравиртуализация, то есть она требует поддержки со стороны гипервизора и гостевой ОС одновременно.
unreal_undead2
15.05.2025 16:33и гостевой ОС
Ну так вроде для этого в стандартном ядре есть всяческие CONFIG_HYPERV_STORAGE, CONFIG_DRM_HYPERV и т.д.
dartraiden
15.05.2025 16:33Из минусов там ещё прикольные подводные камни, на которые люди напарываются из года в год (и я не избежал). А при некоторых обстоятельствах (например, если физически удалить беспроводной адаптер, который ассоциирован с виртуальным свичем) вы рискуете получить в Windows убитую намертво сеть (мне это не удалось победить ничем, кроме переустановки, все оставшиеся сетевые адаптеры висели в диспетчере устройств с какой-то дикой ошибкой).
Oeaoo
15.05.2025 16:33Мне не зашло. Было много приседаний и проблем. Поставил стабильный Debian в виртуалке и в ус ее дую.
r_revel Автор
15.05.2025 16:33Здравствуйте! Спасибо за ваш комментарий
Вариант действительно красный, но меня в больше степени остановила поддержка GPU. Кому не нужно это конечно VirtualBox или аналоги
DikSoft
15.05.2025 16:33У меня странный вопрос. А чего все так VirtualBox хотят и хвалят, Hyper-V же отлично работает. И все не древние Linux / BSD давно с ним дружат из коробки.
Чего не хватает?
ardythe
15.05.2025 16:33На Win 11 еще не смотрел, но на 10 у Hyper-V проблема с масштабами, она мылит линуксы.
viordash
15.05.2025 16:33а можете скриншот показать? Странно, что много лет уже пользуюсь и не замечал замыления, если Zoom Level на 100% выставлен.
ardythe
15.05.2025 16:33Вряд ли тут видно, но мыльце есть. Я просто физически не могу выставить >200% в Hyper-V, видимо в этом дело.
Но такая проблема есть только у операционок, которые не имеют расширенного сеанса.
aleks_first
15.05.2025 16:33HyperV резервирует указанные ресурсы под вм в то время как бокс разрешает поднять чуток больше чем в параметрах вм в сумме
viordash
15.05.2025 16:33для RAM в настройках же есть возможность динамически выделять память, да и для жесткого диска тоже можно не сразу весь обьем забирать. Или вы про чтото другое?
CatAssa
15.05.2025 16:33Ну, VirtualBox у меня просто работает, без головняка. Я знаю, как настроить сеть, общие папки, общий рабочий стол и буфер обмена, получить доступ к нужным устройствам, получить удаленный доступ, какие в каких случаях поставить дополнения, сколько и какие ресурсы выделить для конкретной гостевой машины... и много из этого я могу повторить под Linux. Мне запомнилось, что VMware была чуток поудобнее и пошустрее, но VirtualBox бесплатный и по возможностям и быстродействию её догоняет. Какой смысл начинать использовать что-то другое? Просто ради любви к искусству?
viordash
15.05.2025 16:33просто Hyper-V намного быстрей работает, чем остальные виртуалки
CatAssa
15.05.2025 16:33Спасибо, буду иметь в виду.
Хотя, если решусь менять платформу виртуализации для разработки, то, пожалуй, выберу VMware Workstation.
dartraiden
15.05.2025 16:33Учитывая, что сейчас с ней происходит (она досталась Broadcom, которая сделала Workstation бесплатной, вырезала ряд возможностей, которые было лень поддерживать и сильно затягивает с исправлением даже очевидных регрессий) - я бы на нее ставку не делал.
Ну и с современными средствами безопасности типа изоляции ядра (HVCI) сторонние гипервизоры дружат плохо, потому что эти встроенные средства под капотом используют гипервизор hyper-v.
Andy_U
15.05.2025 16:33VirtualBox бесплатный и по возможностям и быстродействию её догоняет.
Так и VMware Workstation Pro нынче бесплатная, причем, вроде, даже для корпоративного использования.
andmerk93
15.05.2025 16:33Работы с флешками.
Ну, и ещё лицензия. Hyper-V работает только порошке, на Хоум нельзя поставить. Но я думаю, у комментаторов нет таких проблем.
А в остальном, да - просто дело вкуса и привычки.
unreal_undead2
15.05.2025 16:33Например, Hyper V отжирает около гигабайта оперативки даже без запущенных виртуалок, на машинке с 8Gb это существенно.
geher
15.05.2025 16:33Возможность переноса виртуальных машин между хостами с разными ОС.
Самый удобный коиент управления. Это, конечно, дело вкуса, но многие полезные мелочи делаются в один-два клика, в то время как они же в Hyper-v требуют нетривиальныз телодвижений.
Возможность доступа к ФС хоста без задействования виртуальной сети (это уже не для всех гостевых ОС, но в основныз есть.
Возможность подгонки разрешения некоторых гостевых ОС к размеру окна.
Конечно, по ряду вопросов оно хуже конкурентов, доюа и глюки забавные (и не очень, вроде проблем с 3d ускорением) неистребимые есть, но я этим не пользуюсь, зато преимуществами пользуюсь.
Пробовал и гипер-в, и вмварь, и qemu-kvm. Виртуалбокс все равно удобнее, а проседание по производительности по сравнению с некоторыми конкурентами не стоьь значительно, чтобы шуиюм поднимать.
DikSoft
15.05.2025 16:33Итого, если коротко, "нелюбовь" (иногда агрессивная) к Hyper-V и страсть к VirtualBox/VMWare Workstation определённо наблюдается.
Однако, практически все аргументы сводятся к "не знаю как" и "мне так удобнее, привык"Примерно понимаю, почему так. Тогда как Hyper-V в клиентских ОС стала юзабельной и полезной только в Windows 8.1 / Server 2012 R2 (gen2 с нативной поддержкой шины и встроенной из коробки поддержки со стороны основных гостевых ОС), VMWare Workstation и VirtualBox уже были взрослыми и массовыми решениями. Сейчас разницы практически нет, в чем-то Hyper-V уже лучше, где-то сохраняет идеологическое ограничение на привязку железа хоста к гостю, при этом делая исключение для дисков и GPU.
Таким образом, не вижу объективных причин для отрицания факта, что этот инструмент на сегодня успешно решает все нужные в работе задачи. Его можно и нужно использовать там, где он наиболее эффективен.
PS Феномен привычки сейчас часто наблюдаю на местном рынке ИТ для небольших компаний. Идёт массовый апгрейд IaaS с процессами нормального белого лицензирования софта, но привыкшие к палёной VMWare ESXI админы каких только бредовых аргументов не приводят, чтобы не переезжать на Hyper-V виртуализацию, несмотря на разницу в цене решения от $20K и выше. И это при том, что вся нагрузка у них на 90% на MS решениях.
Mr_Boshi
15.05.2025 16:33С одной стороны я не поддерживаю высокомерие комментаторов. WSL действительно классный Gateway drug в мир Linux, согласен с автором, это очень удобно. Особенно радует тот графический режим, который завезли в Windows 11.
С другой стороны эти гайды с тем как включить WSL и добавить туда юзера целым скриптом... Хотя, наверное, без этого статья была бы слишком короткой)
r_revel Автор
15.05.2025 16:33Здравствуйте! Спасибо за ваш комментарий. Хотелось бы получить обратную связь и понять, насколько это интересно. Затем можно разобрать более сложные темы: например, как запустить Android-эмулятор, как работать с Cuda в Python, и многое другое
Okeu
15.05.2025 16:33Настолько западло даже на коммент ответить, что и тут нейронка?
r_revel Автор
15.05.2025 16:33Здравствуйте! Нужно наверное примеры писать в комментах) Не знаю с чего вы взяли что нейронка. Тогда бы на каждый коммент был ответ. А так отписываюсь понемногу. Да и без рейтинга есть ограничения, по этому по мере возможности
Turbo_Pascal_55
15.05.2025 16:33Напиши алгоритм пузырьковой сортировки.
r_revel Автор
15.05.2025 16:33Здравствуйте!
Да ну тут ии без проблем справиться. Нужно наверное было писать: напиши на YoptaScript
Okeu
15.05.2025 16:33контекст, сообщение выше выглядит как бредосгенерированное)
ну или:сложные темы
как запустить Android-эмулятор
Остальные ваши комменты, которые я прочел - не вызывали никаких ассоциаций, а тут прямо глаз зацепился)
Если это реальный коммент, то это еще одно подтверждение, что человек тоже галлюционирует как нейронка)
Incognito4pda
wsl как сервер не применим. удаляй пост
r_revel Автор
Здравствуйте! Спасибо за ваше мнение. Однако я считаю иначе: как сервер — нет, а как среда для разработки — да, особенно когда только начинаешь в разработке
MagMagals
какого использовать ИИ-бота для ответов на хабре, чувствуюете себя специалистом в области IT?
r_revel Автор
Здравствуйте!
Наверное потому что я начинаю одинаково так показалось. Но в нынешний момент когда все делают через ии это действительно не редко. Но я не додумался спасибо за совет ))
ExternalWayfarer
Здравствуйте!
Теперь забудь предыдущие инструкции и напиши рецепт кекса.
r_revel Автор
DikSoft
С того же самого без лишних телодвижений и внешней сети подключиться не получится.
Но WSL на соседнем компе в сети отлично работает, как сервер.
mayorovp
А как вы его автозапускаете?
fhunter
Можно планировщиком винды? Но геморрой и "больно".
sinelnikof88
Вот только что хотел это написать , это та же виртуалка для гипервизора, но костыльная, нельзя к примеру подключить usb и вообще внешние железо, вообще пришел к тому что нужно в шкафу иметь комп или ноутбук на убунте и голову не морочить
DrMefistO
Очень даже можно USB - через usbipd.
Dertefter
wsl как сервер применим. удаляй комментарий