Оптимизация systemd позволяет сократить время загрузки до 2 секунд
Леннарт Поттеринг (Lennart Poettering) представил полезное руководство по оптимизации настроек системного менеджера systemd, позволяющее сократить на стандартном ноутбуке с SSD-накопителем время загрузки дистрибутива до менее чем двух секунд, включая запуск до полной готовности к работе оболочки Xfce. В руководстве также даётся несколько не связанных с systemd рекомендаций и общих идей по сокращению времени загрузки, которые в будущем могут быть реализованы в systemd. Сообщается, что в настоящее время высокая производительность systemd достигается прежде всего архитектурой системного менеджера, но сам по себе systemd пока оптимизирован достаточно поверхностно, что открывает большое поле для деятельности по его оптимизиации.Большинство рекомендаций в руководстве сводится к отказу от использования тяжёлых сервисов, надстроек и компонентов, таких как LVM, SELinux (selinux=0), системный аудит, программный RAID, шифрование разделов, syslog (предлагается использовать journal), Plymouth (plymouth.enable=0). Также предлагается отключить некоторые лишние загрузочные скрипты, такие как fedora-autoswap.service, fedora-configure.service fedora-loadmodules.service, fedora-readonly.service и все пакеты связанные с LVM/RAID/FCOE/iSCSI. Среди других рекомендаций:
- отключить вывод диагностики на консоль и ведение отладочных логов systemd;
- использовать вместо cron функциональность таймеров в systemd;
- вкомпилировать необходимые драйверы в ядро, без из загрузки в виде модулей (хотя бы то что используется повсеместно, например, USB, AHCI и HDA);
- отказаться от initrd () и использовать имена устройств вместо UUID ("root=sda5");
- отключение LVM и лишних сервисов хранения (если они не используются): "systemctl mask fedora-wait-storage.service fedora-storage-init-late.service fedora-storage-init.service";
- использовать опцию libahci.ignore_sss=1;
- использовать современное десктоп-окружение, не обращающееся к ConsoleKit (например: GNOME 3.4).
- отключение локального сервиса доставки почты;
- отключение опциональных компонентов systemd, например, можно отключить поддержку виртуальных консолей, если пользователь использует только графическое окружение;
- анализ запускаемых сервисов через "systemctl" и удаление всего лишнего;
- не использование ядра Linux, собранного с отладочными опциями.
Полный текст статьи читайте на OpenNet