systemd
vollständig zu beschreiben.
Die Lektüre mindestens der Manual-Seiten von systemctl
wird
unerlässlich sein und bleiben!
Hier schreibe ich vorläufig — und erstmal auch nur ins Unreine — auf,
was ich bisher zum Thema systemd
(heraus-)gefunden habe.
Allgemeine Beschreibung
after.local
Services von systemd statt xinetd starten lassen
Restarts nach Updates
Kochrezept
auto-update
veraltet?
Das Ganze scheint ein hochgradiges Problem der vorliegenden systemd-Version
zu sein.
Was ich hier beschreibe, funktioniert unter SuSE 13.1 mit
systemd-208-23.3.x86_64.
Unter SuSE12.3 mit systemd-195-13.45.1.x86_64 funktioniert
offenbar nur ein Teil.
Nützliche Informationen in Form von Dateien
sind mir bisher in
Allgemeine Beschreibung
/etc/systemd
/lib/systemd
/usr/lib/systemd
über den Weg gelaufen.
Irgendwann ist das Zeug wohl mal von /lib/
nach /usr/lib/
umgezogen.
Kann also sein, daß in von mir “vergessenen” Skripten (oder sonstigen
Stellen) noch das alte /lib/
steht …
(→ Kochrezept)
Das magische Kommando ist allem Anschein nach systemctl
.
Mit
systemctl --all --fullbzw.
systemctl -a -lkriegt man meines Wissens raus, welche Services denn überhaupt so im Angebot sind.
Als besondere (Sub-)Kommandos gibt es:
systemctl halt systemctl poweroff systemctl reboot systemctl suspend …Bei den ersten dreien kann man ein einfaches
--force
mitgeben;
dann wird versucht Prozesse zu stoppen, Platten/Partitionen sauber
aus dem Dateisystem zu entfernen usw., aber ein Mißerfolg dabei
läßt das Herunterfahren nicht hängenbleiben.
(Glaube ich das wirklich?)
--force
doppelt angegeben, wird de facto wohl einfach nur
ausgeschaltet; dass das schief- und Daten verlorengehen können,
sollte jedem klar sein!
systemctl halt
noch die Chance habe ein weiteres plus --force
hinterher
zu werfen …
rechner:~ # systemctl reboot Failed to set wall message, ignoring: Connection timed out Failed to reboot system via logind: Connection timed out ^C rechner:~ # systemctl --force reboot Failed to execute operation: Connection timed out rechner:~ # systemctl --force --force reboot Rebooting. …(Den ersten Reboot hatte ich nach längerer Wartezeit mit
<Ctrl>-C
abgewürgt, der zweite kam selber zu seinem Ende.)
Die “normale” Anwendung von systemctl
besteht eher
in Aufrufen der Art
systemctl status ntp.service systemctl stop cron.service systemctl start exim.service systemctl enable syslog.service …Und es gibt noch etliche weitere (Sub-)Kommandos.
systemd
(SuSE 12.2 und früher)
wurde das angehängte .service
zwingend verlangt.
Inzwischen (seit SuSE 12.3) scheint man es aber auch weglassen zu können.
Eines der ersten Dinge,
die ich mit
Während meiner Suche, wie ich das mit dem
Und in der
after.local
systemd
bewerkstelligen mußte,
war nach dem Hochfahren des Rechners ein paar
zusätzliche Skripte ablaufen zu lassen.
Das hatten wir bis dato (also vor SuSE12.1) einfach
in die Datei
/etc/init.d/after.local
reingeschrieben, diese mit chkconfig
passend aktiviert
und dann wurde es als Letztes beim Hochfahren abgearbeitet.
systemd
wieder ans Spielen kriegen kann,
bin ich über etwas gestolpert,
was ich mir als
#
## http://forums.opensuse.org/blogs/jdmcdaniel3/systemd-using-after-local-script-opensuse-12-1-71/
## "systemd and using the after.local script in openSUSE 12.1"
## by jdmcdaniel3
##
## new URL:
## https://forums.opensuse.org/content.php/120-systemd-and-using-the-after-local-script-in-openSUSE-12-1
## (01/2015)
##
## !!!
## do not forget to enable this service:
## systemctl enable /lib/systemd/system/after.local.service
## !!!
##
# This file is part of systemd.
#
# systemd is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
[Unit]
Description=/etc/init.d/after.local Compatibility
After=network.target
ConditionFileIsExecutable=/etc/init.d/after.local
[Service]
Type=oneshot
ExecStart=/etc/init.d/after.local
TimeoutSec=0
StandardOutput=tty
RemainAfterExit=yes
SysVStartPriority=99
[Install]
WantedBy=multi-user.target
abgelegt habe.
(Die Kommentarzeilen, die mit Doppel-Lattenzaun (##
) beginnen,
sind vermutlich von mir;
den Rest habe ich wohl von der dort angegebenen URL übernommen.)
/etc/init.d/after.local
habe ich vorsichtshalber die Anmerkung
# Seit SuSE12.1 wird angefangen 'init' & Co. durch 'systemd' zu ersetzen.
# Dafuer muss ausser dieser Datei auch
# /lib/systemd/system/after.local.service
# angelegt und mit
# systemctl enable after.local.service
# aktiviert werden.
#
hinterlegt, dass auch andere Kollegen daran erinnert werden,
wie man den “alten” after.local
-Mechanismus
mit systemd
ans Laufen kriegen kann.
Prozess | Service |
---|---|
acpid | acpid |
agetty | getty@tty1 getty@tty2 |
auditd | auditd |
bluetoothd | bluetooth |
cleanup | cleanup |
console-kit-daemon | console-kit-daemon |
cron | cron |
cupsd | cups |
dbus | dbus |
dbus-daemon | dbus |
dmevent | dm-event |
gdbus | dbus |
gmain | udisks |
gpm | gpm |
haveged | haveged |
irqbalance | irqbalance |
kdm | display-manager |
lvmetad | lvm2-lvmetad |
mcelog | mcelog |
mdadm | mdmonitor |
ntpd | ntpd |
polkitd | polkit |
rpc.statd | rpc-statd |
rpcbind | rpcbind |
snmpd | snmpd |
sshd | sshd |
syslog-ng | syslog |
systemd-journald | systemd-journald |
systemd-logind | systemd-logind |
systemd-udevd | systemd-udevd |
wickedd* | wickedd |
wpa_supplicant | wpa_supplicant |
xe-daemon | xe-linux-distribution |
xinetd | xinetd |
Mit
Auf dem neu einzurichtenden Mailing-Listen-Server (CentOS Stream 9)
war das auto-update angestellt.
Ist ja wohl ziemlich nützlich:
Es wird geschaut und mitgeteilt. ob es Updates gibt.
In der entsprechenden Konfigurationsdatei konnte man früher bei
Was hier steht, stand früher mal weiter oben.
Inzwischen tut es jedoch nicht mehr oder nicht mehr so wie beschrieben.
Zum Wegwerfen war's mir doch zu schade;
also habe ich es hier geparkt:
Etwas spezieller wird es bei den Netzwerk-Interfaces; mit
Ebenso andere Services wie
Die auf diesen Seiten zum Ausdruck gebrachten Meinungen sind die meinigen,
nicht notwendigerweise die der Universität Osnabrück.
(Es sei denn, sie würden zufällig übereinstimmen oder
wären entsprechend gekennzeichnet.)
Zum Thema "Links":
Bei "Links" handelt es sich stets um "lebende" (dynamische) Verweisungen.
Gernot Skalla hat bei der erstmaligen Verknüpfung zwar den fremden
Inhalt daraufhin überprüft, ob durch ihn eine mögliche
zivilrechtliche oder strafrechtliche Verantwortlichkeit ausgelöst wird.
Er überprüft aber die Inhalte, auf die er in seinem Angebot
verweist, nicht ständig auf Veränderungen,
die eine Verantwortlichkeit neu begründen könnten.
Wenn er feststellt oder von anderen darauf hingewiesen wird,
daß ein konkretes Angebot, zu dem er einen Link bereitgestellt hat,
eine zivil- oder strafrechtliche Verantwortlichkeit auslöst,
wird er den Verweis auf dieses Angebot aufheben.
(Quelle:
Impressum/Disclaimer des Berliner Beauftragten für Datenschutz
und Informationsfreiheit Stand: 09/2002)
Last change: Mon Nov 4 06:56:43 CET 2024
Kochrezept
Bei systemd
scheint noch so allerhand im Umbruch zu sein.
Deshalb hier ein kurzer Abriss, wie man ggf. Namen und Pfade herausfinden kann.
systemctl --all --full
kann man verhältnismäßig einfach herausfinden,
welche Services es denn so gibt und wie sie sich buchstabieren.
Mit einem solchen Service (z. B. ntp
bzw. ntpd
)
kann man sich dann weiter durchhangeln:
host:[~]# systemctl --all --full | grep ntp
ntpd.service loaded active running NTP Server Daemon
host:[~]# systemctl status ntpd
ntpd.service - NTP Server Daemon
Loaded: loaded (/usr/lib/systemd/system/ntpd.service; enabled)
Active: active (running) since Mon 2015-03-23 07:53:19 CET; 3 days ago
Docs: man:ntpd(1)
Main PID: 1611 (ntpd)
CGroup: /system.slice/ntpd.service
тт1611 /usr/sbin/ntpd -p /var/run/ntp/ntpd.pid -g -u ntp:ntp -c /etc/ntp.conf
Mar 23 07:53:19 host start-ntpd[1592]: Starting network time protocol daemon (NTPD)
host:[~]#
So kann man die Dateien für den systemd
relativ schnell
lokalisieren.
auto-update
yum
dann noch einstellen, ob die Update heruntergeladen werden sollten
und mit apply_updates = false
verhindern,
dass sie automatisch installiert wurden.
Ob es am Übergang von yum
zu dnf
liegt?
Die Vokabel apply_updates
gibt es immer noch und man kann sie
auch auf false
setzen; wirkt nur leider nicht:
die Updates werden trotzdem eingespielt!
(Vorsichtshalber gibt es auch keine Mitteilung, wenn z. B. nach einem
Kernel-Update der Rechner neu gebootet werden sollte;
Da muss man sich mit dnf needs-restarting -r
selbst drum kümmern!)
Relativ schnell stößt man noch auf:
… dnf-automatic.timer. notifyonly.timer. download.timer and install.timer override this setting.
Nur, wo man diese Timer findet, steht da nicht.
Man braucht nur auf systemctl list-timers
zu kommen und darauf,
dass sich hinter einer Abkürzung wie dnf-automatic-ins
so
etwas wie dnf-automatic-install.timer
versteckt.
Ich werde diesen Timer jetzt mal abstellen und dann sehe ich ja,
ob die Updates dann nicht mehr automatisch installiert werden.
Ich bin gespannt …
Yup! Funktioniert so, wie ich mir das vorgestellt hatte.
veraltet?
systemctl restart network.service
werden alle
Interfaces herunter- und wieder hochgefahren.
Das ist aber nicht immer gewünscht.
Mit
systemctl enable network@vlan1008.service
systemctl start network@vlan1008.service
läßt sich ein — mit welchem Tool auch immer —
neu angelegtes Netzwerk-Interface selektiv in Betrieb nehmen.
Ohne es bisher explizit ausprobiert zu haben,
gehe ich davon aus,
dass auch andere (Sub-)Kommandos so funktionieren.
arpwatch
, die ich mit
systemctl enable arpwatch@vlan1008.service
systemctl start arpwatch@vlan1008.service
ans Spielen gekriegt habe.
Disclaimer: