top
logo


Выпуск systemd 215 с поддержкой генерации содержимого /etc и встроенным DHCP-сервером PDF Печать E-mail
04.07.14 07:16

Леннарт Поттеринг (Lennart Poettering) представил выпуск системного менеджера systemd 215, в котором реализованы идеи по динамической генерации содержимого /etc для обеспечения работы систем, не сохраняющих своё состояние (stateless). Кроме того, реализована поддержка сброса настроек в первоначальное "заводское" состояние, добавлена утилита systemd-sysusers, в networkd появился встроенный DHCP-сервер.

Systemd сочетает в себе функции системы инициализации, механизм для контроля за выполнением фоновых процессов, службу для журналирования событий и средства для управления сервисами, сеансами пользователей и подключаемыми устройствами. Для определения параметров сервисов в Systemd используется набор конфигурационных unit-файлов, вместо оформления сценариев запуска в виде shell-скриптов. Система нацелена на интенсивную параллелизацию выполнения сервисов на этапе загрузки системы, вобрав в себя лучшие черты таких систем, как launchd (Mac OS X), SMF (Solaris) и Upstart (Ubuntu, старые версии Fedora). В настоящее время на использование systemd уже перешли такие дистрибутивы, как Fedora, openSUSE, Mandriva и Arch Linux, одобрен переход дистрибутивов Debian и Ubuntu по умолчанию на systemd.

Наиболее существенные изменения:

  • Продолжена работа по предоставлению средств для создания stateless-систем, не сохраняющих своё состояние после перезапуска. В дополнение к появившимся в прошлом выпуске механизмам для автоматической генерации структуры раздела /var, в systemd 215 подобная функциональность реализована для раздела /etc. Система теперь может быть загружена без предварительно подготовленной директории /etc, содержимое которой может быть на лету сгенерировано во время загрузки и размещено в разделе Tmpfs. Указанный подход позволяет упростить запуск множества типовых экземпляров контейнера на основе одного базового образа директории /usr.

    Содержимое /etc формируется на основе шаблонов. Типовые системные пользователи и группы определяются в каталоге /usr/lib/sysusers.d/. Для формирования содержимого /etc/passwd и /etc/group на основе /usr/lib/sysusers.d/ представлена новая утилита systemd-sysusers.

    В systemd-tmpfiles расширены возможности по копированию в новый раздел файлов и директорий - второй аргумент в строках с типом операции "L", "L+", "C" и "C+", определяющий источник копирования данных, теперь не является обязательным. Если источник не указан, то systemd-tmpfiles предпримет попытку копирования заданного файла из директории /usr/share/factory/. Добавлена поддержка директивы "L+" для создания симлинков, которая отличается от "L" удалением уже существующего файла.

    Одним из следствий подобных нововведений является предоставление поддержки сброса конфигурации к заводским настройкам. В системах, содержимое /etc в которых сгенерировано автоматически, но в которых не применяется очистка /etc после каждой перезагрузки (например, прошивки для маршрутизаторов или медиацентров), в случае возникновения проблем с настройками, пользователь имеет возможность привести конфигурацию к изначальному виду, заново воссоздав её из шаблонов. Кроме того, стало проще проследить какие были внесены изменения по сравнению с изначальной конфигурацией.

  • Добавлена новая условная директива "ConditionNeedsUpdate=", которая позволяет инициировать запуск сервисов только при условии, что состояние /etc или /var старее чем /usr. Подобное может применяться для организации автоматического обновления содержимого динамически сформированных директорий /etc или /var после обновления /usr. Например, подобная синхронизация необходима в ситуациях, когда контейнеры сформированы на базе единого образа /usr, который был обновлён вендором. "ConditionNeedsUpdate=" позволяет организовать запуск сервисов, которые сами обновят конфигурацию при загрузке с новым /usr. "ConditionNeedsUpdate=" также можно использовать для обеспечения одноразового запуска сервисов после инициирования сброса к заводским настройкам. Из сервисов, подготовленных для использования с "ConditionNeedsUpdate=", отмечаются systemd-sysusers и службы перестроения базы udev, каталога journald и кэша ldconfig;
  • В systemd-networkd добавлена реализация простого сервера DHCPv4, в дополнение к ранее присутствовавшей реализации клиента DHCP. Код DHCP-клиента расширен поддержкой DHCPv6 и IPv6 Router Solicitation, а также возможностью получения статических маршрутов от DHCP-сервера. Секция конфигурации "[DHCPv4]" переименована в "[DHCP]" и теперь совместно используется для DHCPv6 и DHCPv4;
  • В systemd-networkd добавлена поддержка сетевого интерфейса vxlan для создания виртуальных расширяемых локальных сетей (Virtual Extensible LAN), используемых для туннелирования виртуализированных сетей второго уровня поверх сетей третьего уровня (VXLAN позволяет обойти ограничение на 4096 VLAN-ов за счёт использования 24-разрядных идентификаторов). Также реализована поддержка туннелей tun/tap и dummy-устройств;
  • В systemd-networkd обеспечена возможность автоматического выделения диапазонов адресов для сетевых интерфейсов из общесистемного пула адресов. Указанная возможность позволяет организовать динамическое управление большим числом интерфейсов на основе одного файла конфигурации. Например, можно достаточно просто назначать IP-адреса виртуальным интерфейсам veth для большого числа работающих изолированных контейнеров;
  • В утилиту coredumpctl добавлен параметр "info" для вывода детальной информации о заданном coredump-файле, а также опция "-1" для показа только данных о самом свежем coredump-е. Так как утилита может оказаться полезной для обычных пользователей, отныне она поставляется без префикса "systemd-".
  • Сервис systemd-coredump теперь автоматически генерирует и сохраняет в журнал трассировки стека для всех coredump-ов, используя для этого библиотеку libdw. Кроме записи дампов coredump в журнал теперь поддерживается их сохранение в директорию на диске /var/lib/systemd/coredump, при этом данный режим отныне используется по умолчанию. Для управления конфигурацией systemd-coredump представлен отдельный файл /etc/systemd/coredump.conf;
  • В journald значение по умолчанию настройки "SplitMode=" изменено на "uid", что позволяет непривилегированным пользователям просматривать информацию о своих coredump-ах при помощи утилиты coredumpctl;
  • Добавлена новая системная группа "input", назначаемая для всех файлов устройств ввода (по аналогии с группами "audio" и "video");
  • Устройства /dev/loop-control и /dev/btrfs-control теперь принадлежат группе "disk", что позволяет обращаться к ним членам данной группы;
  • Файл /etc/os-release перемещён в /usr/lib/os-release, в /etc/ оставлена символическая ссылка. Перенос обусловлен тем, что версия ОС больше относится к состоянию /usr, чем к состоянию файлов конфигурации в /etc;
  • Добавлена команда "systemctl preset-all" позволяющая применить преднастройки сервисов для всех установленных unit-файлов;
  • Добавлена команда systemctl is-system-running" для проверки общего состояния системы, например, для оценки полностью ли загрузилась ОС;
  • Добавлена поддержка новых опций командной строки ядра Linux: "systemd.wants=" для вызова дополнительных unit-ов при загрузке, "systemd.mask=" для скрытия юнитов при загрузке, "systemd.debug-shell" для запуска отладочной консоли на tty9;
  • В systemd-nspawn по умолчанию активирован фильтр системных вызовов для контейнеров, блокирующий обращение к syscall, через которые можно загрузить модуль ядра, получить прямой доступ к портам ввода/вывода, управлять разделом подкачки и использовать kexec. В частности, фильтром закрывается недавно выявленная уязвимость в docker, позволяющая обращаться к файлам через манипуляции с inode.
  • В systemctl расширены возможности опции "-H", которая теперь позволяет не только обращаться к удалённым хостам с systemd, но и подсоединяться к контейнерам на заданном хосте. Например, "systemctl -H root at foobar:waldi" позволяет пройдя аутентификацию подключиться под пользователем root к контейнеру waldi на сервере foobar.
  1. Главная ссылка к новости (http://lists.freedesktop.org/archives/sy...)
  2. OpenNews: Новая версия systemd 214
  3. OpenNews: Новая версия systemd 213 с поддержкой службы синхронизации времени
  4. OpenNews: Новая версия systemd 212
  5. OpenNews: Началась поддержка стабильных веток systemd
  6. OpenNews: Релиз системного менеджера systemd 209
Тип: Программы
Ключевые слова: systemd, (найти похожие документы)
При перепечатке указание ссылки на opennet.ru обязательно
Реклама
id=adv>
  1.2, onorua, 10:57, 04/07/2014 [ответить] [смотреть все]    [к модератору] +6 +/
а зачем в системе инициализации, пускай даже мега параллелизированной и мега навороченной лепить DHCP сервер? Кому он нужен при загрузке? Есть какой-то usecase?
 
  2.5, anonymous, 11:07, 04/07/2014 [^] [ответить] [смотреть все] [показать ветку]    [к модератору] +/
Это по причине отсутствия чётких задач проекта. Бабки платят, вот и лепят всё подряд.
 
2.20, Аноним, 11:58, 04/07/2014 [^] [ответить] [смотреть все] [показать ветку]     [к модератору]
+/
Увеличение поверхности атаки Для удобства заинтересованной стороны нужно лепить... весь текст скрыт [показать] [показать ветку]
 
2.22, Анын, 12:06, 04/07/2014 [^] [ответить] [смотреть все] [показать ветку]    [к модератору]  +4 +/ Интересно, когда уже пасьянс туда запилят..
 
  3.28, Perl_Jam, 12:30, 04/07/2014 [^] [ответить] [смотреть все]    [к модератору]  +2 +/
зачем мелочиться? в следующем релизе они будут автоматом генерить кернел =))))
 
2.36, hoopoe, 13:30, 04/07/2014 [^] [ответить] [смотреть все] [показать ветку]    [к модератору]  +/ > а зачем в системе инициализации, пускай даже мега параллелизированной и мега навороченной лепить DHCP сервер? Кому он нужен при загрузке? Есть какой-то usecase?

может чтобы контейнерам по своему IP отдавать на раннем этапе загрузки? вообще, конечно, данная функциональность в системе инициализации вызывает недоумение :)

 
  3.42, Andrey Mitrofanov, 14:04, 04/07/2014 [^] [ответить] [смотреть все]    [к модератору]  +1 +/
>функциональность в системе инициализации вызывает недоумение :)

Они просто не освоили шела, дистрибутива, пакеж-менеджера и пр., и пр.

Вот сейчас им нужен dhcpd, они его _пишут. Вместо того, чтобы установить и настроить.

 
1.4, YetAnotherOnanym, 11:06, 04/07/2014 [ответить] [смотреть все]    [к модератору]  +/ А из чего в следующей версии будет генериться содержимое директории /usr/lib/sysusers.d/ ?
  1.6, Аноним, 11:08, 04/07/2014 [ответить] [смотреть все]     [к модератору]  –2 +/
такими темпами скоро выйдет новая операционная система и будет называться system... весь текст скрыт [показать]
 
  2.9, Аноним, 11:16, 04/07/2014 [^] [ответить] [смотреть все] [показать ветку]    [к модератору]  +8 +/
Вау, как свежо! Я впервые слышу такую шутку.
 
  3.21, Аноним, 11:58, 04/07/2014 [^] [ответить] [смотреть все]     [к модератору]  –1 +/
В каждой шутке Скоро они там графический интерфейс запилят Поддержку оборудо... весь текст скрыт [показать]
 
  4.33, Гость, 12:56, 04/07/2014 [^] [ответить] [смотреть все]    [к модератору]  +/
+100500 !!!  особенно про то, что Линюс в ядро ср..ть не даёт !
 
2.39, Мяут, 13:44, 04/07/2014 [^] [ответить] [смотреть все] [показать ветку]    [к модератору]  +/ Уже вышла месяц назад ---> http://www.opennet.ru/opennews/art.shtml?num=39974
 
1.7, Главные Редакторы, 11:13, 04/07/2014 [ответить] [смотреть все]    [к модератору]  +2 +/ А он всё толще и толще.
 
  2.23, karapuz2, 12:07, 04/07/2014 [^] [ответить] [смотреть все] [показать ветку]    [к модератору]  +1 +/
кОрмите же, вот и толстеет. вместе с леннартом
 
1.10, Аноним, 11:19, 04/07/2014 [ответить] [смотреть все]     [к модератору]  +/
планомерно к своей ОС... весь текст скрыт [показать]
  1.11, Sergey, 11:23, 04/07/2014 [ответить] [смотреть все]    [к модератору]  +/ Я тут на днях пробовал в тесовом debian перейти на systemd. Так мало того, что оно так и не смогло автоматом запустить nodm, так ещё и система стала загружаться раза в 2 медленнее. Нах*й такие улучшизмы!
 
  2.30, Анонимкам, 12:43, 04/07/2014 [^] [ответить] [смотреть все] [показать ветку]    [к модератору]  +/
Это не вам в переписке посоветовали его включить для начала?
 
2.38, _KUL, 13:42, 04/07/2014 [^] [ответить] [смотреть все] [показать ветку]    [к модератору]  –1 +/ Тоже нахожусь на тестинге ветке, недавно влился системд. Кнопка питания вызывает еррор у системд, acpi не корректно работает, консольный torrent transmitted перестал запускаться. Мне искренне обидно, что дебиан пошли на поводу у бестолковых людей и начали вливать системд. По мне, систем де, можно ставить после 5 лет тестирования, т.к. там наворочено куча всего, толком не оттестировано, и очень не безопасно! Жалко дебиан ...
 
  3.41, Аноним, 14:01, 04/07/2014 [^] [ответить] [смотреть все]     [к модератору]  +/
если присутствует в RHEL, значит таки оттестировано... весь текст скрыт [показать]
 
3.44, Аноним, 14:07, 04/07/2014 [^] [ответить] [смотреть все]     [к модератору]  +/
проблемы одминов локалхостов, не способных в документацию, никого не волнуют... весь текст скрыт [показать]
 
1.12, Аноним, 11:28, 04/07/2014 [ответить] [смотреть все]     [к модератору]  +/
Что, теперь все станут платить RedHat за пакет поддержки -- надо же будет каждые... весь текст скрыт [показать]
  1.13, Пабло, 11:30, 04/07/2014 [ответить] [смотреть все]    [к модератору]  +/ Отлично! Systemd все лучше и лучше.
 
  2.15, aabp, 11:36, 04/07/2014 [^] [ответить] [смотреть все] [показать ветку]    [к модератору]  +1 +/
Ждём встроенное ядро и иксы.
 
1.19, Адекват, 11:57, 04/07/2014 [ответить] [смотреть все]    [к модератору]  +2 +/ Нужно будет перед обновлением забекапить весь /etc
 
  2.34, Аноним, 13:00, 04/07/2014 [^] [ответить] [смотреть все] [показать ветку]     [к модератору]  +1 +/
Также готовься к тому, что системд будет править конфиги без твоего спроса, а пр... весь текст скрыт [показать] [показать ветку]
 
1.27, Аноним, 12:23, 04/07/2014 [ответить] [смотреть все]     [к модератору]  +/
кракозябы в консоли пир init 3 победили чтобы без доп заляпух работало ... весь текст скрыт [показать]
  1.29, Аноним, 12:41, 04/07/2014 [ответить] [смотреть все]     [к модератору]  +/  1.31, umbr, 12:49, 04/07/2014 [ответить] [смотреть все]    [к модератору]  +/ Интересно, как скоро они додумаются до windowsd?
  1.37, raven428, 13:33, 04/07/2014 [ответить] [смотреть все]    [к модератору]  +/ мне одному кажется что автор на каких-то тяжёлых спидах сидит? быть настолько упоротым это ещё постараться надо.
image  
  2.40, rshadow, 13:55, 04/07/2014 [^] [ответить] [смотреть все] [показать ветку]    [к модератору]  +/
А мне больше интересно команда которая всеиэто пилит. У автора по всем направлениям и знаний не хватило бы, не говоря уже о времени.
image
 
1.43, Аноним, 14:06, 04/07/2014 [ответить] [смотреть все]     [к модератору]  +/  1.45, Аноним, 14:08, 04/07/2014 [ответить] [смотреть все]     [к модератору]  +/
лузеры локалхостов кудахтают итт... весь текст скрыт [показать]
  1.46, Аноним, 14:17, 04/07/2014 [ответить] [смотреть все]     [к модератору]  +/
Зачем в systemctl обращение к удаленнмы хостам Есть же ssh Или оно через него ... весь текст скрыт [показать]
 
Ваш комментарий  

Read more http://www.opennet.ru/opennews/art.shtml?num=40132

 
Интересная статья? Поделись ей с другими:

bottom

 

Unreal Commander PfSense по русски Яндекс.Метрика