Демоны инициализации

systemd

Условия на запуск юнитов

systemd делает простым задание условий на запуск юнитов:

ConditionPathExists=|!/tmp/abc
ConditionPathExists=|!/tmp/abe
  • ! - отрицание
  • | - логическое ИЛИ

Журнал

  • В бинарном виде. Просмотр: journalctl
  • В PRA по умолчанию отключены для экономии ресурсов. Включение и просмотр через меню
  • При добавлении в параметры ядра debug - система стартует с записью лога

Шпаргалка

  • systemd-analyze blame - список запускаемых файлов юнитов, отсортированный по потраченному каждым из них на загрузку времени
  • systemctl list-unit-files - все установленные юниты
  • systemctl enable _my.service - включить сервис
  • systemctl start _my.service
  • systemctl stop _my.service
  • systemctl status _my.service

minirc

  • Minirc больше соответствует принципу «маленький и быстрый».
  • Minirc уменьшает совместимость с Arch репозиторием (решаемо - переписыванием стартовых скриптов демонов). Для NetworkManager и пр. из iso переписаны
  • Конфигурация (в том числе запуск демонов) /etc/minirc.conf
  • /etc/minirc.local - запускается от root при старте системы
  • /etc/minirc.local.shutdown запускается от root при выключении системы
  • udev используется старый (самый маленький и пока проблем не вызывал. Можно использовать eudev или любой другой

Доработки в PRA:

  • Выполняются все исполняемые (права 755) скрипты из /etc/rc.d и пишется /var/log/rc.d.log
  • С параметром ядра debug включается syslogd
  • Пакеты из репозитория Arch, включающие в себя запуск демонов, придется переделывать с systemd на minirc (лучше делать универсальными)

Управление сервисами

  • Поддерживается запуск: syslog-ng iptables alsa crond dbus wpa_supplicant dhcpcd sshd privoxy polipo acpid mpd vsftpd lighttpd ntpd haveged
  • Управление через ENABLED=»@syslog-ng @crond @dhcpcd @sshd» в /etc/minirc.conf
  • @ перед названием сервиса : в фоне
  • Просмотр состояния сервисов : rc
  • Запуск|Остановка|Перезагрузка сервиса: rc start|stop|restsrt service

Cервисы PRA-roll

Systemd

Распологаются в /etc/systemd/system. По умолчанию включены. Отключить :

sudo systemctl disable название_сервиса

После изменения *.service

sudo systemctl daemon-reload
  1. desktop-fix
    • Заменяет файлы.desktop ярлыков из Arch-репозитория на русифицированные
  2. mountall
    • Монтирует все имеющиеся разделы в /mnt
    • Если нужно монтирование избранных разделов : отключите mountall и отредактируйте /etc/fstab
    • mount -f : вносит все разделы в /etc/fstab. Чтобы были видны в некоторых файл-менеджерах
    • обрабатывает noauto
  3. rc.local
    • Скрипт /etc/rc.local - запускается при загрузке системы (до старта Xorg) от root.
    • По умолчанию в /etc/rc.local пусто
  4. rc.local-sh
    • Выполнение /etc/rc.local.shutdown при выключении системы
    • Блокировка экрана с запросом пароля после выхода из ждущего режима (suspend)
  5. update-cache
    • Обновление mime icon и пр. (автосрабатывает только в FRUGAL)
  6. /etc/systemd/system/zram.service

MiniRC

  • Для MiniRC эти же сервисы продублированы в /etc/rc.d
  • Включить : sudo chmod 755 /etc/rc.d/сервис
  • Выключить : sudo chmod 644 /etc/rc.d/сервис
  • Логи : /var/log/rc.d*.log
Печать/экспорт