Архитектура
Подсистема оперирует специально оформленными файлами конфигурации — модулями (англ. unit). Каждый модуль отвечает за отдельно взятую службу, точку монтирования, подключаемое устройство, файл подкачки, виртуальную машину и тому подобные ресурсы. Существуют специальные типы модулей, которые не несут функциональной нагрузки, но позволяют задействовать дополнительные возможности systemd, к ним относятся модули типа target, slice, automount и ряд других. На октябрь 2016 года systemd поддерживает следующие типы модулей:
- .target — позволяет группировать модули, воплощая концепцию уровней запуска;
- .service — отвечает за запуск сервисов (служб), также поддерживает вызов интерпретаторов для исполнения пользовательских скриптов;
- .mount — отвечает за монтирование файловых систем;
- .automount — позволяет отложить монтирование файловых систем до фактического обращения к точке монтирования;
- .swap — отвечает за подключение файла или устройства подкачки;
- .timer — позволяет запускать модули по расписанию;
- .socket — предоставляет службам поддержку механизма сокет-активации;
- .slice — отвечает за создание контейнера cgroups;
- .device — позволяет реагировать на подключение устройств;
- .path — управляет иерархией файловой системы.
По сравнению с традиционной системой инциализации в стиле System V, systemd даёт преимущества в следующем:
- контроль состояния службы, реакция на изменения состояния;
- сокет-активные и шина-активные службы, которые иногда приводят к лучшему распараллеливанию взаимозависимых служб;
- использование cgroups для отслеживания служебных процессов, вместо идентификаторов процессов (PID), это означает, что демоны не будут потеряны даже после разветвления в другие процессы.
В апреле 2012 года исходные коды менеджера устройств udev были объединены с systemd[10].
Подсистема изначально разработана только для Linux, и опирается на специфичные для него функции, такие как cgroups и fanotify[de][11]. По этой причине Debian, как дистрибутив, работающий на различных ядрах (не только Linux), не полностью использует systemd[12].
Возможности
Помимо простого запуска и контроля сервисов, systemd предлагает некоторые другие удобные функции, для использования которых ранее системным администраторам приходилось прибегать к помощи дополнительных программ-демонов. Среди таких функций:
- сокет-активация служб (заменяет inetd);
- запуск сервисов по расписанию (заменяет cron)[13];
- работа с аппаратным сторожевым таймером (заменяет watchdog);
- смена корня (заменяет chroot);
- автомонтирование томов и сетевых ресурсов (заменяет mount и fstab).
Использование
Подсистема была предложена как внешняя зависимость для GNOME 3.2 автором проекта[14]; это фактически потребовало от всех дистрибутивов, использующих GNOME, использовать systemd, или по крайней мере, включить его в качестве настраиваемой опции. GNOME версии 3.8 и выше уже нельзя установить без systemd.
Дистрибутивы, в которых systemd установлен по умолчанию:
Дистрибутивы, в которых systemd доступен:
В большинстве дистрибутивов оставлены другие системы инициализации как опциональные и пользователи могут перейти на них. Частично компоненты systemd были использованы в Ubuntu 13.04, а именно такие компоненты как hostnamed, localed и timenamed[28], начиная с версии 16.04 Ubuntu переведён на systemd по умолчанию[29].
Из мобильных операционных систем systemd используется в Sailfish OS.
Подсистема последовательно не используется в Slackware и Void Linux, а дистрибутивы Less Systemd GNU/Linux и Devuan отказ от systemd позиционируют как основную особенность.
Примечания
- 1 2 README - systemd/systemd - System and Session Manager
- ↑ systemd/systemd - System and Session Manager
- ↑ The systemd Open Source Project on Open Hub: Languages Page — 2006.
<a href='https://wikidata.org/wiki/Track:Q124688'></a><a href='https://wikidata.org/wiki/Track:P1972'></a>
- ↑ README - systemd/systemd - System and Session Manager
- ↑ Release 241 — 2019.
- ↑ README - systemd/systemd - System and Session Manager
- ↑ Lennart Poettering, Kay Sievers, Thorsten Leemhuis (2012-05-08), Control Centre: The systemd Linux init system, <http://www.h-online.com/open/features/Control-Centre-The-systemd-Linux-init-system-1565543.html>
- ↑ Lennart Poettering, FAQs, 0pointer, <http://0pointer.de/blog/projects/systemd.html#faqs>. Проверено 16 июня 2011.
- ↑ Lennart Poettering (2012-04-21), systemd Status Update, <http://0pointer.de/blog/projects/systemd-update-3.html>. Проверено 28 апреля 2012.
- ↑ Sievers, Kay, Commit importing udev into systemd, <http://cgit.freedesktop.org/systemd/systemd/commit/?id=19c5f19d69bb5f520fa7213239490c55de06d99d>. Проверено 25 мая 2012.
- ↑ Lennart Poettering (2010-04-30), systemd FAQ, <http://0pointer.de/blog/projects/systemd.html>. Проверено 14 декабря 2011.
- ↑ Jake Edge (2011-07-27), Debian debates systemd, <http://lwn.net/Articles/452865/>. Проверено 14 декабря 2011.
- ↑ Запуск задач по расписанию с помощью systemd.timer | HippoLab - блог системного администратора (неопр.). www.hippolab.ru. Проверено 9 ноября 2015.
- ↑ Lennart Poettering (2011-05-18), systemd as an external dependency, GNOME, <http://mail.gnome.org/archives/desktop-devel-list/2011-May/msg00427.html>. Проверено 26 мая 2011.
- ↑ Dj Walker-Morgan (2011-05-24), Fedora 15’s Lovelock released, The H, <http://h-online.com/-1249820>. Проверено 26 мая 2011.
- ↑ Fabian Scherschel (2012-05-23), Mageia 2 arrives with GNOME 3 and systemd, The H, <http://h-online.com/-1582479>. Проверено 26 мая 2012.
- ↑ Dj Walker-Morgan (2011-08-29), Mandriva 2011 arrives with systemd, The H, <http://h-online.com/-1332627>. Проверено 29 августа 2011.
- ↑ Chris von Eitzen (2011-11-16), openSUSE 12.1 arrives with systemd and Btrfs, The H, <http://h-online.com/-1380033>. Проверено 16 ноября 2011.
- ↑ systemd, Archlinux Wiki, <https://wiki.archlinux.org/index.php/Systemd>. Проверено 9 марта 2011.
- ↑ systemd is now the default on new installations, 2012-10-13, <http://www.archlinux.org/news/systemd-is-now-the-default-on-new-installations/>
- ↑ Arch Linux перешёл на systemd, 2012-10-13, <http://www.opennet.ru/opennews/art.shtml?num=35075>
- ↑ End of initscripts support, 2012-11-04, <https://www.archlinux.org/news/end-of-initscripts-support/>
- ↑ Press Release: Sabayon 13.08, <http://www.sabayon.org/release/press-release-sabayon-1308>. Проверено 12 августа 2013.
- ↑ systemd, Debian wiki, <http://wiki.debian.org/systemd>. Проверено 21 июля 2011.
- ↑ sys-apps/systemd, Gentoo Packages, <https://packages.gentoo.org/packages/sys-apps/systemd>
- ↑ , <http://www.gentoo.org/proj/en/base/systemd/>. Проверено 5 июля 2011.
- ↑ What’s new in Red Hat Enterprise Linux 7, <http://www.redhat.com/rhecm/rest-rhecm/jcr/repository/collaboration/jcr:system/jcr:versionStorage/6945bd2d0a05260142050b2f447f7fb5/1/jcr:frozenNode/rh:resourceFile>. Проверено 15 июля 2014.
- ↑ 100 областей, systemd в upstart, фазовое обновление и ядро 3.8 в Ubuntu 13.04
- ↑ Ubuntu Linux переходит на systemd, следом за Debian
Ссылки
 |
---|
Компоненты | | |
---|
Библиотеки | |
---|
Фреймворки | |
---|
Встречи | |
---|
Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".
Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.
Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .