Леннарт Поттеринг (Lennart Poettering) представил выпуск системного менеджера systemd 218, который сочетает в себе функции системы инициализации, механизм для контроля за выполнением фоновых процессов, службу для журналирования событий и средства для управления сервисами, сеансами пользователей и подключаемыми устройствами. Для определения параметров сервисов в Systemd используется набор конфигурационных unit-файлов, вместо оформления сценариев запуска в виде shell-скриптов. Система нацелена на интенсивную параллелизацию выполнения сервисов на этапе загрузки системы, вобрав в себя лучшие черты таких систем, как launchd (Mac OS X), SMF (Solaris) и Upstart (Ubuntu, старые версии Fedora). В настоящее время на использование systemd уже перешли такие дистрибутивы, как Fedora, openSUSE, Mandriva и Arch Linux, одобрен переход дистрибутивов Debian и Ubuntu по умолчанию на systemd.
Наиболее существенные изменения:
- В состав включена библиотека с реализацией протокола PPPoE. В дальнейшем данная библиотека будет использована в networkd для обеспечения соединений PPPoE без привлечения внешнего демона pppd;
- В базу оборудования udev hwdb добавлена информация о параметрах разрешения (DPI) различных манипуляторов "мышь", что позволяет обеспечить более точное позиционирование указателя в привязке к реальной чувствительности оптического сенсора мыши (например, можно обеспечить постоянную скорость движения указателя различных моделей мышей. Необходимость создания базы привязки моделей мышей к DPI, обусловлена отсутствием надёжного способа получения параметров DPI от мыши, при том, что DPI мышей колеблется от 400 до 1200 (если не принимать во внимание связь DPI с физическим перемещением мыши, курсор для мыши с небольшим DPI будет перемещаться еле-еле, а с высоким - наоборот). Поддержка новой базы уже добавлена в libinput 0.7;
- Все программы из состава systemd, читающие обособленные файлы конфигурации в директории /etc/, теперь воспринимают соответствующие конфигурационные директории .conf.d в /etc/, /run/, /usr/local/lib/, /usr/lib/ и /lib/ (при сборке с --enable-split-usr). Например, конфигурационные директории теперь доступны для файлов system.conf user.conf, logind.conf, journald.conf, sleep.conf, bootchart.conf, coredump.conf, resolved.conf, timesyncd.conf, journal-remote.conf и journal-upload.conf;
- В утилиту systemctl добавлена команда "edit", при выполнении которой для unit-файла запускается определённых через переменную окружения $EDITOR текстовый редактор, в котором открывается для редактирования сводный набор конфигурации, включающий полное содержимое unit-файла, в том числе типовые блоки из дополнительных директорий (.d/);
- В утилиту journalctl добавлены новые команды "--vacuum-size=" и "--vacuum-time=", позволяющие удалять старые файлы журнала при достижении определённого размера или при устаревании на заданное время;
- В journald обеспечено получение сообщений аудита напрямую из ядра Linux и сохранение их как обычных записей в логе. Поля сообщений аудита разделяются и индексируются, что позволяет обойтись без auditd и использовать утилиту journalctl в качестве замены ausearch (поддерживается только минимальный набор функций аудита, при необходимости задействования всех режимов аудита, таких как reboot-on-log-overflow, следует дополнительно использовать auditd);
- При сборке с опцией "--enable-xkbcommon" в systemd-localed теперь выполняется проверка клавиатурных раскладок (x11 keymap) через компиляцию заданной раскладки, что позволяет обойтись без установки libxkbcommon;
- Добавлен новый сервис systemd-machine-id-commit.service, который позволяет задействовать временный идентификатор машины на системах с доступной в режиме только для чтения во время загрузки директорией /etc и не инициализированным /etc/machine-id;
- В .netdev файлы networkd добавлена поддержка большой порции настроек для устройств VXLAN, которые теперь можно конфигурировать через файлы .network по аналогии с параметрами сетевых мостов. Кроме того, добавлена возможность настройки маршрутизации от источника (source routing). В файлы .link добавлена поддержка опции "OriginalName=" для сопоставления оригинального имени сетевого интерфейса с именем, выдаваемым ядром. В файлах .network обеспечена возможность указания опций "MTU=" и "MACAddress=" для переопределения MTU и MAC-адреса при соединении через определённый сетевой интерфейс;