systemd — системний менеджер Linux, який поєднує у собі функції системи ініціалізації, механізм для контролю за виконанням фонових процесів, службу для журналювання подій і засоби для керування сервісами, сеансами користувачів і під'єднаними пристроями. Systemd націлений на інтенсивну паралелізацію виконання сервісів на етапі завантаження системи, Systemd позбувся оформлення сценаріїв запуску у вигляді shell-скриптів, що звільняє від потреби попереднього завантаження інтерпретаторів.

systemd
Типдемон ініціалізації
АвторЛеннарт Поттерінг, Kay Sievers
РозробникиLennart Poettering, Kay Sievers та інші[1]
Перший випуск30 березня 2010
Операційна системаLinux
Мова програмуванняC[3]
Розмір~6.8 MB
ЛіцензіяGNU LGPL 2.1+ (вільне програмне забезпечення)[4]
Репозиторійgithub.com/systemd/systemd
Вебсайтfreedesktop.org/wiki/Software/systemd/

systemd увібрав у себе деякі риси таких систем, як launchd (Mac OS X), SMF (Sun Solaris) і Upstart (Ubuntu).

На використання systemd перейшли такі дистрибутиви, як Fedora, openSUSE, Mandriva, Arch Linux, Debian, Ubuntu.

Архітектура

ред.

У порівнянні з System V init systemd надає такі переваги:

  • Сокет-активні і шина-активні сервіси, які іноді приводять до кращого розпаралелювання взаємозалежних сервісів.
  • cgroups використовується для відстеження сервісних процесів, замість ідентифікаторів процесів (PID). Це означає, що демони не будуть втрачені навіть після розгалуження в інші процеси.

systemd відпочатку розроблений тільки для Linux, бо спирається на такі функції, як cgroups і fanotify.[5] Через це Debian, як дистрибутив, що працює на різних ядрах (не тільки Linux), деякий час утримувався від використання systemd.[6]

У квітні 2012 сирцеві коди менеджера пристроїв udev були об'єднані з systemd.[7]

Використання

ред.

systemd був запропонований як зовнішня залежність для GNOME 3.2 автором проєкту.[8] Це фактично вимагає від усіх дистрибутивів, що використовують GNOME, застосовувати systemd, або принаймні, включити його як налаштовувану опцію.

Дистрибутиви, в яких systemd встановлений за замовчуванням:

Дистрибутиви, в яких systemd доступний:

  • Gentoo надає пакунки systemd, але без гарантованої підтримки[18][19]

Критика

ред.

Незалежні розробники та користувачі критикують[20][21] systemd за вкрай низьку якість початкового коду, поганий дизайн, надмірну громіздкість, навмисну втрату сумісності з іншими проєктами та негативну реакцію розробників на звіти про помилки[22]. Головний розробник systemd Леннарт Поттерінг за відмову[23] від виправлення вразливості systemd, що пізніше отримала індекс CVE-2017-1000082, удостоївся премії Pwnie Awards 2017 в номінації «Найбільш дурнувата реакція розробника»[24][25].

Виноски

ред.
  1. README, systemd, freedesktop.org, архів оригіналу за 7 липня 2013, процитовано 9 вересня 2012
  2. README - systemd/systemd - System and Session Manager
  3. systemd, Analysis Summary, Ohloh, архів оригіналу за 15 жовтня 2012, процитовано 16 червня 2011
  4. Lennart Poettering (21 квітня 2012), systemd Status Update, архів оригіналу за 27 серпня 2015, процитовано 28 квітня 2012
  5. Lennart Poettering (30 квітня 2010), systemd FAQ, архів оригіналу за 15 січня 2017, процитовано 14 грудня 2011
  6. Jake Edge (27 липня 2011), Debian debates systemd, архів оригіналу за 15 травня 2012, процитовано 14 грудня 2011
  7. Sievers, Kay, Commit importing udev into systemd, systemd, архів оригіналу за 8 липня 2012, процитовано 25 травня 2012
  8. Lennart Poettering (18 травня 2011), systemd as an external dependency, desktop-devel mailing list, GNOME, архів оригіналу за 10 жовтня 2014, процитовано 26 травня 2011
  9. 100 областей, systemd в upstart, фазовое обновление и ядро 3.8 в Ubuntu 13.04. Архів оригіналу за 16 листопада 2012. Процитовано 22 листопада 2012.
  10. Dj Walker-Morgan (24 травня 2011), Fedora 15's Lovelock released, The H, архів оригіналу за 12 липня 2012, процитовано 26 травня 2011
  11. Fabian Scherschel (23 травня 2012), Mageia 2 arrives with GNOME 3 and systemd, The H, архів оригіналу за 8 грудня 2013, процитовано 26 травня 2012
  12. Dj Walker-Morgan (29 серпня 2011), Mandriva 2011 arrives with systemd, The H, архів оригіналу за 9 липня 2012, процитовано 29 серпня 2011
  13. Chris von Eitzen (16 листопада 2011), openSUSE 12.1 arrives with systemd and Btrfs, The H, архів оригіналу за 20 квітня 2012, процитовано 16 листопада 2011
  14. systemd, Archlinux Wiki, архів оригіналу за 23 травня 2011, процитовано 9 березня 2011
  15. systemd is now the default on new installations, 13 жовтня 2012, архів оригіналу за 18 жовтня 2012, процитовано 22 листопада 2012
  16. Arch Linux перешёл на systemd, 13 жовтня 2012, архів оригіналу за 17 жовтня 2012, процитовано 22 листопада 2012 // opennet.ru
  17. systemd, Debian wiki, архів оригіналу за 1 грудня 2012, процитовано 21 липня 2011
  18. Comment #210, systemd – bug #318365, Gentoo's Bugzilla, архів оригіналу за 16 лютого 2015, процитовано 5 липня 2011
  19. systemd, Gentoo's Documentation, архів оригіналу за 26 червня 2011, процитовано 5 липня 2011
  20. Архівована копія. Архів оригіналу за 22 жовтня 2017. Процитовано 23 жовтня 2017.{{cite web}}: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title (посилання)
  21. Линус Торвальдс выдвинул ультиматум на приём патчей от разработчиков systemd, 03.04.2014, архів оригіналу за 24 жовтня 2017, процитовано 23 жовтня 2017 // opennet.ru
  22. Архівована копія. Архів оригіналу за 10 липня 2015. Процитовано 23 жовтня 2017.{{cite web}}: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title (посилання)
  23. Архівована копія. Архів оригіналу за 18 жовтня 2017. Процитовано 23 жовтня 2017.{{cite web}}: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title (посилання)
  24. Архівована копія. Архів оригіналу за 24 жовтня 2017. Процитовано 23 жовтня 2017.{{cite web}}: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title (посилання)
  25. Леннарт Поттеринг удостоен премии Pwnie Awards 2017, архів оригіналу за 24 жовтня 2017, процитовано 23 жовтня 2017 // linux.org.ru

Посилання

ред.