Такие читатели, как вы, помогают поддерживать MUO. Когда вы совершаете покупку по ссылкам на нашем сайте, мы можем получать партнерскую комиссию.
Подсистема Windows для Linux или WSL — отличный способ для разработчиков, которым необходимо запускать Linux и Windows, чтобы сделать это без необходимости настраивать виртуальную машину или двойную загрузку.
Одной из основных новых функций является возможность запуска systemd на WSL, что полезно для веб-разработчиков, настраивающих тестовую среду локально. Вот как его включить и использовать.
Зачем устанавливать systemd на WSL?
Службы WSL по умолчанию запускают старую службу инициализации System V, а службы запускаются с помощью команды службы. В сентябре 2022 г. Майкрософт добавлена возможность использовать systemd для управления службами. Большинство основных дистрибутивов Linux уже перешли на systemd.
Несмотря на разногласия, в реальном использовании гораздо проще запускать и останавливать службы с помощью systemd. Также легче следовать другим руководствам по Linux, поскольку вам не нужно так сильно менять команды.
Локальная среда тестирования LAMP будет ближе к стандартному серверу Linux, поэтому ваше приложение будет легче отлаживать.
Как включить systemd на WSL
Чтобы включить systemd, вы должны запустить правильную версию WSL. systemd требует WSL версии 0.67.6 или выше. Вы можете проверить номер версии, открыв PowerShell и набрав:
wsl --версия
Если у вас установлена более старая версия и вы хотите использовать systemd, вы можете обновить WSL, используя:
wsl --обновлять
Теперь вам нужно настроить systemd в любом дистрибутиве, который вы установили с помощью WSL. Процесс одинаков для любого дистрибутива WSL, будь то Ubuntu, Debian, Fedora или что-то еще.
Просто отредактируйте /etc/wsl.conf файл в вашей системе как root и добавьте следующие строки:
[ботинок]
системад=истинный
Если файл wsl.conf не существует, не беспокойтесь и создайте его самостоятельно. Эти строки будут работать независимо.
Сохраните файл, и теперь вам придется перезапустить все работающие дистрибутивы WSL. Для этого откройте окно PowerShell и введите следующую команду:
wsl --неисправность
Откройте другой терминал, и вы сможете управлять службами с помощью systemd на WSL.
Запуск и остановка служб WSL с помощью systemd
Теперь вы можете использовать systemctl для запуска и остановки служб в WSL.
Предположим, вы использовали Apache для запуска локального веб-сервера для тестирования разрабатываемого вами веб-приложения.
Вы бы запустили Apache так:
судоsystemctlначинатьапач2.услуга
Если вы хотите, чтобы он запускался автоматически, вы должны включить его, используя:
sudo systemctl включить apache2.service
И отключите его с помощью:
судоsystemctlостанавливатьсяапач2.услуга
Теперь вы можете запускать systemd на WSL
Благодаря последним обновлениям WSL теперь вы можете включать systemd и запускать и останавливать службы по мере необходимости. Это делает WSL хорошей средой для разработки веб-приложений, поскольку вы можете тестировать их, как если бы вы использовали любую другую стандартную машину Linux.
Также очень легко установить сервер LAMP (Linux, Apache, MySQL, PHP) в подсистеме Windows для Linux.