Новости и события » Hi-Tech » Выпуск системного менеджера systemd 240

Выпуск системного менеджера systemd 240

После полугода разработки Леннарт Поттеринг представил релиз системного менеджера systemd 240. Из новшеств можно отметить добавление нового типа сервисов "exec", возможность использования в systemd-resolved OpenSSL помимо GnuTLS, для генерации не требующих надежности случайных чисел задействована инструкция RDRAND вместо /dev/urandom, добавлена поддержка сетевых туннелей Foo-Over-UDP, ERSPAN и ISATAP, реализованы утилиты systemd-id128 и systemd-run-generator, обеспечена официальная поддержка утилиты portablectl, добавлена команда "systemd-analyze security".

Основные изменения:

  • Добавлен новый тип сервисов "Type=exec", похожих на сервисы с типом "simple", но обеспечивающих ожидание завершения выполнения fork и execve при вызове основного исполняемого файла перед продолжением обработки следующих юнитов. Новый тип может оказаться полезным когда требуется обработка ошибок при запуске, например, если в сервисе директива ExecStart указывает на несуществующий исполняемый файл, при использовании типа simple запуск юнита будет посчитан успешным (ошибка не видна на этапе форка и управление будет передано далее, не дожидаясь результата execve). При типе "exec" будет выявлен сбой запуска подобного юнита и возвращен соответствующий код ошибки. В следующем выпуске планируется использовать тип "exec" по умолчанию в утилите systemd-run при запуске временных ("transient") сервисов;
  • В systemd-resolved добавлена возможность использования OpenSSL вместо GnuTLS для обеспечения работы DNS-over-TLS;
  • На системах x86-64 в ситуациях, когда не требуется криптостойкие и непредсказуемые случайные числа, вместо /dev/urandom обеспечен вызов процессорной инструкции RDRAND. Данное изменение позволяет снизить число запросов энтропии от ядра в процессе инициализации (для генерации UUID по-прежнему используется полноценный генератор псевдослучайных чисел ядра); добавлена поддержка сетевых туннелей Foo-Over-UDP, ERSPAN и ISATAP,
  • В systemd-networkd добавлена поддержка сетевых туннелей Foo-Over-UDP, ERSPAN и ISATAP, а также добавлена опция ForceDHCPv6PDOtherInformation для принудительной установки бита "Other Information" в сообщениях IPv6 RA. Для совмещенных сетевых интерфейсов добавлены опции AdActorSystemPriority, AdUserPortKey и AdActorSystem для настройки различных параметров 802.3ad, а также опция DynamicTransmitLoadBalancing для динамической балансировки потоков. Для сетевых туннелей добавлена опция IPv6RapidDeploymentPrefix для настройки функциональности IPv6 RD (Rapid Deployment). В наборы правил добавлены опции IPProtocol, SourcePort, DestinationPort и InvertRule. Для сетевых мостов предложена новая опция MulticastToUnicast. Добавлена поддержка определения статических привязок для IPv4 ARP и доступных соседних хостов для IPv6;
  • Добавлена утилита systemd-id128 для определения и генерации различных 128-битных идентификаторов;
  • Обеспечена официальная поддержка команды portablectl, которая перемещена в каталог /usr/bin/. Команда предоставляет средства для управления переносимыми сервисами ("Portable Services"), позволяющими создавать системные сервисы в виде самодостаточных контейнеров (переносимый сервис поставляется в виде системного образа, но обрабатывается как обычный сервис);
  • Добавлена базовая поддержка счетчиков загрузки, которая потенциально позволяет реализовать схемы загрузки, в которых в случае сбоя новой загрузочной записи автоматически выбирается старая загрузочная запись. На стороне загрузка указанная функциональность пока добавлена только в sd-boot;
  • Добавлен новый генератор "systemd-run-generator", позволяющий синтезировать юниты на основе параметров, переданных в командной строке при загрузке ядра. Генератор удобно использовать при запуске контейнеров, например, "systemd-nspawn -i someimage.raw -b systemd.run='some command line'";

  • Добавлена команда "systemd-analyze security" для анализа связанных с безопасностью и изоляцией настроек в системных юнитах;
  • Ключи для доступа к зашифрованным дисков теперь могут размещаться на внешних носителях и подключаться по UUID из /etc/crypttab. В /etc/crypttab также добавлена опция "sector-size" для настройки размера сектора для зашифрованных разделов;
  • Для всех длительно работающих сервисов выставлен запрет на получение новых привилегий (NoNewPrivileges=yes, для работы требуется обновление правил SELinux);
  • Сервисы systemd-networkd.service, systemd-resolved.service и systemd-timesyncd.service по умолчанию возвращены на работу под заранее определенными системными пользователями (в прошлой версии была включена настройка DynamicUser=yes для работы с использованием динамически генерируемого идентификатора пользователя);
  • Для загрузки юнитов, на которые указывают символические ссылки из каталога.wants/ или.requires/, теперь необходимо, чтобы файл юнита также находился в одном из штатных мест размещения, перечисленных в списке путей для поиска юнитов;
  • Изменен выставляемый по умолчанию ядром Linux лимит на максимальное число файловых дескрипторов для пользовательских процессов (RLIMIT_NOFILE). Начиная с данного выпуска жесткий лимит на число файловых дескрипторов поднят с 4096 до 512K, Мягкий лимит, который может быть увеличен из самого приложения, оставлен неизменным (1024 дескриптора). Жесткий лимит повышен так как недавние оптимизации в ядре Linux существенно увеличили производительность манипуляций с большим числом файловых дескрипторов и снизили потребление памяти. Изменение также отражено в sysctl fs.nr_open и fs.file-max, которые теперь автоматически выставляются в максимально возможное значение (RLIMIT_NOFILE soft и RLIMIT_NOFILE hard);
  • В случае отсутствия файла /etc/locale.conf systemd теперь по умолчанию использует локаль "C.UTF-8" и устанавливает переменную окружения LANG в значение "C.UTF-8";
  • Значение sysctl "net.ipv4.conf.all.rp_filter" теперь по умолчанию выставляется в значение 2 (устанавливается режим Loose вместо Strict), что более приемлемо для хостов с несколькими сетевыми линками, маршрутизируемыми через одну сеть (например, когда клиент одновременно подключен через Wi-Fi и Ethernet);
  • Добавлена директива DisableControllers для отключения отдельных контроллеров cgroup;
  • Для юнитов реализованы новые свойства MemoryMin и IODeviceLatencyTargetSec, которые активируют для запускаемых процессов средства контроля потребления памяти и ожидания ввода/вывода, обеспечиваемые атрибутами cgroups v2 memory.min и io.latency;
  • В journald при обработке логов от классического BSD syslog реализовано сохранение оригинальной строки с временем события, что позволяет корректно реконструировать оригинальные сообщения;
  • В директивы StandardOutput и StandardError добавлен параметр "append:", позволяющий прикрепить STDOUT/STDERR вывод от сервиса к определенному файлу в режиме дополнения уже имеющегося в нем содержимого;
  • Добавлена настройка KillSignal, позволяющая переопределить сигнал, отправляемый процессам при завершении работы unit-файлов (ранее всегда отправлялся SIGKILL).
  • Значение переменной окружения XDG_SESSION_DESKTOP теперь может выставляться при помощи опции "desktop=" в строке аргументов pam_systemd;
  • Во все настройки, которые воспринимают значения с процентами, вместо символа '%' теперь можно использовать также знак '&8240;';
  • В обрабатываемый при помощи systemd-resolved файл конфигурации resolved.conf добавлена опция "ReadEtcHosts", которую можно использовать для отключения обработки содержимого /etc/hosts;
  • В команду "systemctl is-system-running" добавлена опция "--wait", позволяющая дождаться завершения процесса запуска системы;
  • Прекращена поддержка udev-компонента "collect", который остался без сопровождения и не получил практического применения;
  • При формировании пути с использованием настроек RuntimeDirectory, StateDirectory, CacheDirectory, LogsDirectory и ConfigurationDirectory для процессов теперь выставляются соответствующие переменные окружения RUNTIME_DIRECTORY, STATE_DIRECTORY, CACHE_DIRECTORY, LOGS_DIRECTORY и CONFIGURATION_DIRECTORY;
  • Режим предсказуемого наименования сетевых интерфейсов теперь применяется и для адаптеров InfiniBand (используется префикс "ib");
  • Для игнорирования ошибок при обработке строк в tmpfiles.d/ теперь может применяться префикс '-';
  • Обеспечена возможность использования файлов.link для добавления настроек, эквивалентных командам "ethtool advertise";
  • В файл /etc/os-release добавлены новые поля DOCUMENTATION_URL и LOGO;
  • В файл конфигурации systemd-sleep.conf добавлены новые опции AllowSuspend, AllowHibernation, AllowSuspendThenHibernate и AllowHybridSleep для управления включением соответствующих опций спящего режима;
  • В bootctl добавлены новые команды "set-default" и "set-oneshot" для установки элемента загрузки по умолчанию или только для следующей загрузки;
  • В busctl добавлены опции "-j" и "--json" для вывода в формате JSON;
  • В режиме JSON-вывода в утилите journalctl добавлена поддержка цветной подсветки вывода, а также режи "json-seq" (RFC7464);
  • В systemd-logind добавлена новая директива UserStopDelaySec (по умолчанию выставлена в 10 секунд), которая может указываться в logind.conf. Директива определяет задержку, в течение котоорой "systemd --user" продолжает работать после выхода пользователя (позволяет повысить производительность при быстром повторном входе);

Переваги суцільних купальників перед роздільними

Переваги суцільних купальників перед роздільними

Літо вже на носі, тож питання вибору купальника стає все актуальнішим. Хочу поділитися з вами своїми спостереженнями і розповісти, чому ж суцільні купальники часто виграють у битві з роздільними. У цій статті ми розглянемо основні переваги суцільних...

сегодня 16:43

Свежие новости Украины на сегодня и последние события в мире экономики и политики, культуры и спорта, технологий, здоровья, происшествий, авто и мото

Вверх