Última actualització: agost de 2019
Cap al 2014 systemd va arribar a Debian i ara mateix el fan servir gairebé totes les distribucions derivades de Debian.
La documentació oficial diu que "systemd és un sistema i administrador de serveis per a Linux, compatible amb scripts d'inici (init) SysV i LSB. systemd proporciona capacitats de paral·lelització agressives, utilitza socket i activació D-Bus per iniciar els serveis, ofereix la posada en marxa de dimonis sota demanda, realitza el seguiment de processos utilitzant Linux cgroups, suporta còpia instantània de volum i la restauració d'estat del sistema , manté punts de muntatge i automuntatge i implementa un elaborat servei lògic de control transaccional basat en la dependència. Pot funcionar com un reemplaçament per sysvinit".
En altres paraules, systemd va substituir a init com a dimoni "pare" de tots els processos, el que vol dir que pren el control des del primer moment ja que tots els processos en execució penjen d'ell. A partir de que arrenca, systemd controla tot el que passa al sistema. El mateix que el fa interessant (controlar i gestionar tot el sistema) el fa "perillós" des del punt de vista de que tenim tots els ous a la cistella de systemd.
systemd treballa amb "units". Units son, per exemple: services (.service), mount points (.mount), devices (.device) or sockets (.socket).
*serveis: s'anomenen .service, per exemple ntpd.service. Ens podem estalviar el punt .service final i el sistema el posarà per nosaltres. P.e. systemctl enable ntpd és el mateix que dir: systemctl enable ntpd.service
systemctl list-unit-files
systemctl
és el mateix que:
systemctl list-units
systemctl --failed
systemctl get-default
systemctl list-dependencies
systemctl list-sockets
systemadm
systemctl enable -f unit
systemctl restart unit
systemctl show service
systemctl kill service
Canviar l'estat del sistema:
systemctl reboot
systemctl poweroff
systemctl suspend
systemctl hibernate
systemctl hybrid-sleep
systemctl emergency (equival a init 1)
systemctl default (anem al mode normal; multiusuari)
*Informació detallada hostname:
hostnamectl
*Informació detallada sobre dia i hora:
timedatectl
systemd te el seu propi servei de logs i per tant els equips que corren systemd no precisen del dimoni syslog.
journalctl
journalctl -b
journalctl -b -1
journalctl --since="2014-1-1 15:30"
journalctl --since="20 min ago"
journalctl --since=today
journalctl -f
ForwardToConsole=yes
TTYPath=/dev/tty10
MaxLevelConsole=info
Hem de reiniciar el sevei per a que sigui efectiu: systemctl restart systemd-journald
journalctl /usr/lib/systemd/systemd
journalctl _PID=1
Per a veure el PID d'un servei determinat, p.e. el podem reiniciar (en aquell moment ens diu el PID o bé obtenir amb systemctl status.
journalctl -u netcfg
Tags: Debian, start, arranque, boot, systemd, initd, initrd, arrancada, runlevel, init, telinit, devuan, antix