Quantcast
Channel: openSUSE Planet - Global
Viewing all articles
Browse latest Browse all 23330

Jan Krings: Arch Linux auf systemd umstellen

$
0
0

Da es anscheinend noch keine Anleitung auf deutsch gibt wie man sein Arch Linux auf systemd umstellt, werde ich mich nun daran Versuchen. Folgend werden wir ein Arch Linux vom alten alten init-System auf systemd umstellen.

Pakete installieren

Zu allererst ein volles Update des Systems mit dem Befehl:

pacman -Syu

Nun installieren wir systemd mit dem Befehl:

pacman -S systemd

Konfigurationsdateien erstellen

Jetzt legen wir folgende Dateien an mit dem jeweiligen Inhalt:

/etc/hostname
#hostname vom Rechner

 

/etc/vconsole.conf
KEYMAP="de-latin1.map.gz"
FONT=lat9w-16
FONT_MAP=8859-1_to_uni

 

/etc/locale.conf
LANG=de_DE.utf8
LC_COLLATE=C

 

/etc/timezone
Europe/Berlin

Kernelmodule eintragen

Wenn zusätzliche Kernelmodule geladen werden müssen die in der /etc/rc.conf stehen, dann müssen diese noch extra eingerichtet werden, da die rc.conf bei systemd in diesem Falle ignoriert wird.

Legen Sie für jedes Kernelmodul das geladen werden soll im Ordner

/etc/modules-load.d/

eine Datei an. Hier am Beispiel vom vboxdrv

touch /etc/modules-load.d/vboxdrv.conf

und schreiben Sie in die Datei den Namen des Kernelmoduls

vboxdrv

Dies wiederholen Sie mit allen zu ladenen Kernelmodulen.

systemd einrichten

Nun kommen wir zur eigentlichen systemd Konfiguration. Zuerst müssen wir das target, also das Ziel festlegen, was in unserem Fall das Ursprüngliche init 5 oder bei systemd das graphical.target ist.

Mit dem Befehl

systemctl enable graphical.target

geben wir dies an systemd weiter.

Nun müssen wir noch alle Deamons die beim Start geladen werden sollen, angeben. Schauen Sie dazu in die /etc/rc.conf hinein und übertragen Sie alle zu startenden Deamons in systemd.

Steht in der rc.conf zum Beispiel

DAEMONS=(syslog-ng acpid dbus iptables networkmanager ntpd alsa cupsd crond kdm)

sehen die Befehle an systemd so aus:

systemctl enable syslog-ng.service
systemctl enable acpid.service
systemctl enable apcid.socket
systemctl enable iptables.service
systemctl enable NetworkManager.service
systemctl enable ntpd.service
systemctl enable cupsd.service
systemctl enable cronie.service
systemctl enable kdm.service

Ohne NetworkManager benutzen Sie einfach

systemctl enable dhcpcd@eth0.service

Altes init-System löschen

Nun müssen Sie noch das alte init-System löschen

pacman -R initscripts
pacman -S systemd-sysvcompat

Das war es auch schon. Nach einem Neustart sollte systemd den Rechner nun ohne Probleme hochfahren. Sollte ein Deamon nicht starten können Sie die Fehlermeldung mit

systemctl status [deamon].service

abrufen.

Mehr Informationen zum Thema systemd in Arch Linux gibt es in dem sehr ausführlichen Artikel unter https://wiki.archlinux.org/index.php/Systemd

Wichtig: Wer auf der sicheren Seite sein möchte kann initscripts auch erstmal behalten und mit dem Kernelparameter

init=/bin/systemd

ausprobieren ob systemd wie erwartet funktioniert. Ist dies der Fall kann dann das alte init-System wie im letzen Kapitel beschrieben gelöscht werden.


Viewing all articles
Browse latest Browse all 23330


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>