systemd

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

CMNS: systemd у Вікісховищі

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

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.[6] Через це Debian, як дистрибутив, що працює на різних ядрах (не тільки Linux), деякий час утримувався від використання systemd.[7]

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

Використання[ред. | ред. код]

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

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

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

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

Критика[ред. | ред. код]

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

Виноски[ред. | ред. код]

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

Посилання[ред. | ред. код]