Сайт Романа ПарпалакаБлогКлючевые словаоперационные системы

операционные системы

Статьи по этой теме:
Windows vs. Ubuntu


WSL: Линуксовая подсистема в Windows

Полноценная веб-разработка на Windows всегда была нелегкой. Для небольших сайтов хватало сборок апача с PHP вроде Денвера. Но как только в проекте требуется memcached, redis или что-то более сложное, настройка окружения существенно усложняется или вообще становится невозможной.

В этот момент разработчики начинают использовать виртуальные машины, локальные или удаленные. Вместе с ними появляются проблемы синхронизации файлов в крупных проектах. Для продуктивной работы PhpStorm индексирует файлы проекта и наблюдает за их изменениями. Когда файлы редактируются на одной операционной системе, а исполняются и управляются из гита на другой, неизбежны задержки синхронизации или тормоза индексирования. Еще и composer где-то нужно запускать, что добавляет путаницы с синхронизацией.

Неискушенный читатель может спросить, зачем вообще разрабатывать на Windows. Причины могут быть разные. Например, корпоративная политика. Админам проще управлять кучей компьютеров с Windows.

Так или иначе, проблема удобной настройки окружения для веб-разработки на PHP была решена только в Windows 10. В ней появилась линуксовая подсистема, или WSL. Она позволяет запускать скомпилированные для линукса бинарники. При этом ядро линукса отсутствует, а системные вызовы к нему на лету транслируются в Win API. В общем, WSL — это Wine наоборот.

Несколько лет после выхода линуксовая подсистема была в состоянии беты, и пользоваться ей было невозможно. Но, начиная с Creators Update, выпущенного в апреле, ситуация изменилась, и nginx вместе с php-fpm нормально заводится и работает.

С практической точки зрения WSL — это командная строка bash, в которой можно устанавливать любой пакет из репозитория Ubuntu 16.04 через apt install. Диски компьютера примонтированы и доступны в файловой системе через /mnt/c, /mnt/d и т. д.

Ребята из Микрософта нацеливались на «интероперабельность»: из bash можно запустить не только линуксовые elf-бинарники, но и обычные exe-файлы. Процессы могут без проблем работать друг с другом. Например, мне было лень делать дамп и переносить базу данных, и я оставил ее в Windows. К ней успешно подключается php-fpm.

Я перевел ежедневную работу на линуксовую подсистему. Обнаружил две проблемы. Первая: не работают unix-сокеты. Решается использованием TCP-сокетов в конфигурации php-fpm и nginx. Вторая: nginx падает при загрузке файлов, из-за того что вызывает нереализованную функцию. Решается запуском встроенного в PHP веб-сервера при тестировании загрузки файлов. Ситуация у меня возникала редко. Может быть ее уже исправили, а я об этом и не знаю.

Еще есть особенность: не работают средства автозапуска программ. Пришлось добавить команды service start nginx в .bashrc.

И еще есть баг. Через некоторое время процесс beam начинает загружать процессор. Приходится останавливать сервис rabbitmq.

Положительные моменты: можно выкинуть MinGW, виртуальные машины и прочие попытки завести bash на Windows, и работать в полноценной линуксовой консоли. Софт в среде разработки идентичен софту на боевом сервере и обновляется одной командой apt upgrade.

Спустя три года я всё-таки перешел на Windows 10, линуксовая подсистема стала в этом решающим фактором.

8 января 2018 года, 01:23     веб-разработка · операционные системы · линукс     4 комментария

Windows vs. Ubuntu

Как-то знакомым нужно было помочь с компьютером. Искал установочный диск Windows XP. Во время поиска случайно наткнулся на диск с Ubuntu. «Не повезло знакомым», — пронеслось в голове.

20 декабря 2008 года, 17:49     lytdybr · операционные системы     3 комментария

SP3

Поставил на свою XP (которую не переустанавливал со времен последней смены жесткого диска) третий сервис-пак. Единственное, что произошло — в Quick Launch заново появился ярлык к Windows Media Player, с ним же стали ассоциированными все расширения видеофайлов.

Великая миссия Сервис-пака Третьего! :)

22 мая 2008 года, 21:22     операционные системы     Оставить комментарий

О дополнительных функциях операционных систем

Вчера с другом заговорили о софте. Он разочаровался в Windows Vista. Сказал, что в ней кроме красивости интерфейса ничего особо нового нет. Я заявил, что еще не скоро поставлю себе Windows Vista. Ее и ставить, вообще-то, мне некуда. Мой компьютер ее не потянет. Еще добавил, что мне Windows XP вполне хватает. В принципе, наверно хватило бы и NT 4.0 (правда, я ее никогда не ставил). Он ответил, что XP слишком старая, например, она не поддерживает запись DVD, только CD. Я возразил, что отключаю встроенные средства записи дисков и ставлю Nero. В последнем хотя бы можно настроить гораздо больше параметров записи, и я знаю, что же именно я делаю.

А вот и материал в тему о встроенных в XP zip-папках.

16 февраля 2007 года, 19:28     операционные системы · софт     Оставить комментарий

Некоторые замечания о переустановке системы

Позавчера решил всё-таки переустановить систему у себя на компьютере. Я не переустанавливал ее с февраля прошлого года. Я понимаю, что для Windows XP это не предел. Думаю, она смогла бы проработать еще столько же, причем тоже без глюков. Просто я решил поставить новые версии используемых программ.

Эх, где те времена, когда часа за полтора можно было установить Windows 98, MS Office 97, драйверы, еще несколько программ и жить спокойно :)

Замечу, что обозначенный выше процесс отнял у меня целый вечер (с шести до полвторого). После многочисленных безуспешных попыток активировать Norton AntiVirus 2007 я ушел спать. Вчера поставил 2006-ю версию антивируса. Какой-то Norton Protection Center всё время предлагал восстановить значения настроек антивируса (которых и так не очень много) по умолчанию. Причем делал это весьма назойливо. Пришлось удалить его из списка загружаемых служб. Ибо нефиг :)

При этом мне еще надо поставить Photoshop, Delphi. Помимо переустановки, я переразбил жесткий диск, выделив отдельный NTFS-раздел для музыки (чтобы использовать заманчивую возможность создания жестких связей). Спасибо Partition Magic'у, что не заглючил и сохранил мои данные в целости и сохранности. Да, вдобавок я поставил Windows 98. Так, для прикола. А также для тестирования на ней программ и сайтов в IE 5.

Поставил вчера MS Office 2007. Особо в нем не разбирался. Загружается он дольше, чем 2003, например. По поводу новых версий программ хочется сказать следующее. Практически всегда они грузятся и работают медленнее, чем более ранние версии. Поэтому для отдельных программ я не использую последние версии. Например, Photoshop 9.0 тормозил гораздо больше, чем 8.0. Угадайте, какой я себе поставлю? :) Поэтому снесу я, наверно, MS Office 2007 и поставлю MS Office 2003.

Сейчас поставил Денвер — Apache, PHP и MySQL в одном флаконе. Всё установилось практически без лишних вопросов, настроилось, и локальная копия сайта сразу заработала. Почему я раньше им не пользовался, а ставил всё отдельно?

Думал поменять редактор HTML и PHP. Сейчас у меня стоит Crimson Editor. Конечно, выглядит слегка незаконченным, и не все возможности в нем есть, какие хотелось бы. Но в нем сбоку отображается дерево папок и файлов, а также есть вкладки. Поэтому не нужно переключаться между окнами, чтобы открыть несколько файлов. Автоотступы, нахождение парных скобок, подсветка. Правда, криво работает поиск среди нескольких файлов. Но, самое главное, он может открывать и сохранять файлы по FTP. Таким образом, когда я ковыряюсь в сайте, то переключаюсь всего между двумя программами: браузером и этим редактором. Пока достойной замены ему я не нашел.

Вот такие дела и мысли. А некоторые думают, нажал на компьютере несколько кнопок, и всё заработало. Эх, если бы...

9 января 2007 года, 13:01     операционные системы · софт     Оставить комментарий

За что я люблю Windows XP

Не, я серьезно. Три вещи, которые мне нравятся в Windows XP по сравнению с Windows 98:

1. Большая надежность, хотя если использовать Windows 98 SE, да еще и аккуратно...
2. Более корректная на мой взгляд реализация многозадачности. Хоть отдельная запущенная программа в XP выполняется медленнее, если запущена куча программ, Winamp практически никогда не перестает играть.
3. Сглаживание шрифтов ClearType. Жить без него не могу. Просто не представляю, почему отдельные личности его не любят.

Ну и еще Hibernate, разумеется (спящий режим). Гениальная вещь, которая позволяет не перезагружать компьютер неделями.

18 декабря 2006 года, 02:06     операционные системы     4 комментария
Поделиться
Записи