>>174543
Да это я так.
В systemd в целом ничего хорошего нет, по-моему, правда sysvinit еще хуже.
Но systemd, надо думать, решает массу проблем, из-за которых "линукс не годится для десктопа". В частности, с logind можно выкинуть весь тот зоопарк костылей для multiseat capability, что там был до того.
Лично мне не нравятся наполеоновские планы этого проекта и этих планов, собственно, воплощение. В принципе, systemd архитектурно видится мне неким монстром, который будет дополнительной прослойкой (более фичастой, чем sysvinit) для юзерспейса и, в частности, для всей этой тучи демонов, которые необходимы. До момента, когда фичи systemd были запилены (разработка началась в 2010), юзер (больше, правда, программист, чем юзер) вставал перед вопросом, например, "Как мне повысить привилегию какого-то действия, требующего root (например, настроить сетевой интерфейс), если я сижу не из-под рута?" Для таких задач запускаются специально сделанные программы, которые предлагают сервисы определенным категориям пользователей. И вот, у нас вроде есть более-менее разумная интерактивная система.
Я бы сказал больше, чем набор плохо связанных очевидностей, но вначале хотелось бы заполнить свои пробелы именно в этой области: управление процессами, взаимодействие процессов, коммуникация между процессами (IPC) и так далее. Пока для меня это темный лес.
В общем, кому-то не хватало тех способов IPC, что предоставлял голый sysvinit, и был запилен systemd. Он меняет многое в линукс-системе архитектурно. Есть много буков от Поттеринга на эту тему:
http://0pointer.de/blog/projects/systemd.html
У меня все время вставал вопрос по поводу каждой фичи: а вот это нужно вообще? А вот это? А вот это можно накостылить на скриптах… Ну, и так далее. НО! Решение, которое предлагает systemd, более глобальное и, наверно, более инженерно верное. Я говорю "наверно", потому что в мире ПК каждый сам решает, что ему крутить на своей машине. Ну, или за него уже решили, что крутить на машине, на которой он работает/которую он обслуживает. В общем, точно знать нельзя, насколько он "нужен всем", так сказать. Но все основные дистры уже на него перешли, Гента работает в два инита, полумаргинальная слака все еще сидит на сисвиините, но не исключено, что Патрик захочет поставить себе системди тоже (он вроде не был замечен в хейтерах).
В мире встраиваемых систем, скорее всего, так и останется сисвиинит, поскольку все сервисы и устройства почти всегда определяются там раз и навсегда при загрузке ОС.
Почему у системди есть противники? Ну, он Линукс-онли, и можно написать systemd-aware приложение, которое будет работать только с ним. Это значит, что "пропатчить kde под freebsd" уже не выйдет так просто. В принципе, когда в массовое использование выйдет еще и wayland, Линукс отчалит от остальных юниксов еще дальше. Но это, видимо, следствие того, что Линукс медленно убивает почти все остальные никсы (хотя они еще живы, просто постепенно теряют рынки). Наиболее активная разработка и инновации — Линукс.
Что не понравилось в systemd лично мне? Он сырой и у проекта не хватает разрабов. Хоть прям щас беги и фигачь код, вот только знаний у меня нет. :D
Пример: в systemd-networkd на одной из моих систем (на остальных не проверял, это была та, на которой мне бы хотелось это иметь) не работает wake-on-lan (по magic packet). Составляешь этот юнит-конфиг как надо, сеть он настраивает, а wake-on-lan не врубается. С ethtool все работает, как и раньше работало. Честно, в лом разбираться, что там может быть не так, но c ethtool работает — я виню systemd. Смысл мне ставить systemd, если не избавляться от init-скриптов (вот где багов все время вагоны) по максимуму? Ну, может, смысл есть, но маленький. В общем, миграция на systemd еще лет пять займет, и, мож, весь код нормально напишут. Думаю потыкать веточкой в эту лапочку на предмет новых багов.
Еще он нарушает KISS и unix way, но бог уж с ним, если он будет нормально работать.
Спасибо за внимание!