Systemd в Mageia
Кто не умеет приспосабливаться, обречён на вымирание
Mageia 2 окончательно отказалась от старого доброго SystemV в пользу устанавливаемого теперь по умолчанию systemd.
Systemd разрабатывается при поддержке Red Hat и представляет собой новую систему управления загрузкой наших компьютеров. Помимо прочих чудес автор этого нововведения - Леннарт Поттеринг (Lennart Poettering) - предлагает нам вместо последовательного исполнения init-скриптов "агрессивные возможности распараллеливания" процесса загрузки. Кроме того, systemd способен управлять событиями посредством механизма D-Bus. Тем не менее, полная совместимость с init-скриптами пока ещё сохранена. Сохранена и унаследованная нами особенность Mandriv`ы - ускоритель загрузки Speedboot, хотя идеология systemd вроде бы полностью его девальвирует.
- Первое, что стоит сделать при ошибках и сбоях загрузки (особенно на быстрых машинах), так это отключить speedboot:
[root@localhost ~]# vi /etc/sysconfig/speedboot SPEEDBOOT=no
Если говорить совсем уж коротко, то привнесённые systemd изменения свелись к тому, что вместо init-скриптов в сотню строк появился бинарный код и unit-скрипты в пять строк. Подробнее можно прочесть в переводе серии статей Л. Поттеринга "systemd для администраторов".
Ну что ж, пора перейти к тому, что нас интересует больше всего - как же теперь управлять системой? Всю функциональность хорошо нам знакомых chkconfig и service заменила утилита systemctl.
Запуск, проверка и остановка служб
[root@localhost ~]# systemctl start iptables.service [root@localhost ~]# systemctl status iptables.service iptables.service - iptables Firewall for IPv4 Loaded: loaded (/lib/systemd/system/iptables.service; disabled) Active: active (exited) since Wed, 07 Mar 2012 18:06:19 +0100; 4s ago Process: 8995 ExecStop=/usr/lib/iptables stop (code=exited, status=0/SUCCESS) Process: 9045 ExecStart=/usr/lib/iptables start (code=exited, status=0/SUCCESS) CGroup: name=systemd:/system/iptables.service [root@localhost ~]# systemctl stop iptables.service [root@localhost ~]# systemctl status iptables.service iptables.service - iptables Firewall for IPv4 Loaded: loaded (/lib/systemd/system/iptables.service; disabled) Active: inactive (dead) since Wed, 07 Mar 2012 18:07:35 +0100; 3s ago Process: 9063 ExecStop=/usr/lib/iptables stop (code=exited, status=0/SUCCESS) Process: 9045 ExecStart=/usr/lib/iptables start (code=exited, status=0/SUCCESS) CGroup: name=systemd:/system/iptables.service
Включение и отключение автозапуска служб
[root@localhost ~]# systemctl enable iptables.service ln -s '/lib/systemd/system/iptables.service' '/etc/systemd/system/basic.target.wants/iptables.service' [root@localhost ~]# systemctl disable iptables.service rm '/etc/systemd/system/basic.target.wants/iptables.service'
Изменение уровня загрузки системы
Раньше, чтобы запустить систему в состояние init 3, надо было редактировать /etc/inittab. Теперь, systemd использует с той же целью символическую ссылку.
Прежде всего, надо стереть существующую установку:
rm /etc/systemd/system/default.target
Затем, создать новую:
- для состояния init 3
ln -sf /lib/systemd/system/multi-user.target /etc/systemd/system/default.target
- для состояния init 5
ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target
Надеемся, мы вас не утомили.
- Исходная статья на исп. BlogDrake