Ich packe ein Debian Buster Live ISO neu. Zuerst entpacke ich es filesystem.squashfs
und nehme dann chroot
im ungequetschten System meine Änderungen vor.
Ich möchte, dass sich mein ISO automatisch anmeldet (Terminal). Ich habediese Techniken, aber es ist nicht gelungen, da ich die folgende Fehlermeldung erhalte:
System has not been booted with systemd as init system (PID 1). Can't operate.
Failed to connect to bus: Host is down
Daher kann ich nicht verwenden systemctl
, da sonst dieser Fehler auftritt.
Die Antworten, die ich hier zum Umgehen des Fehlers gefunden habe, besagen, man solle service
anstelle von verwenden systemctl
, was in meinem Fall nicht zutrifft.
Ist die automatische Anmeldung mit einer anderen Technik möglich?
systemctl
Ist es möglich, eine Funktion innerhalb eines zu erreichen chroot
, sodass ich die obige Technik anwenden kann?
Vorläufige Antwort:
Ich habe die Datei [email protected]
unter erstellt /lib/systemd/system
und einen Sysmlink darin erstellt /etc/systemd/system/multi-user.target.wants/
. Der Inhalt der Datei.
[Service]
ExecStart=
ExecStart=-/sbin/agetty --autologin root --noclear %I 38400 linux
Dadurch wurde ich zum automatischen Anmelden weitergeleitet. Ich warte auf Erkenntnisse, bevor ich meine eigene Frage beantworte.
Antwort1
Notiz: Dies kann mit Ihrem Problem zusammenhängen oder auch nicht, aber das hier erläuterte Problem führt aufgrund eines fehlenden symbolischen Links zu denselben Fehlermeldungen, die bei Ihnen angezeigt wurden.
Ich bin kein Experte, aber in Debian 10 (Buster) ist das Standard-Init-System, systemd
was bedeutet, dass /sbin/init
( /usr/sbin/init
) auf verweist systemd
.
Leider ist mir beim Ausführen mehrerer KVM-Gäste ein Fehler aufgefallen, der dazu führt, dass der symbolische Link, /sbin/init
auf den verwiesen wird, /lib/systemd/systemd
entfernt wird. Ich kenne den Grund dafür nicht, vermute jedoch, dass dies org.freedesktop.systemd1
(ich weiß absolut nicht, was das ist) der Grund sein könnte.
Symlink korrigieren
Die korrekte Ausgabe wäre:
root@vpstest:~# ls -la /sbin/init
lrwxrwxrwx 1 root root 20 Jan 29 19:07 /sbin/init -> /lib/systemd/systemd
Fehlender Symlink
Wenn dies angezeigt wird, liegt möglicherweise ein Problem vor:
root@vps1:~# ls -la /sbin/init
-rwxr-xr-x 1 root root 53016 Feb 14 2019 /sbin/init
Fix
Um das zu beheben, entferne ich einfach die Datei und baue den symbolischen Link neu auf:
rm /sbin/init && ln -s /lib/systemd/systemd /sbin/init
Wenn Sie virsh verwenden, müssen Sie den Gast zerstören und dann starten:
virsh destroy vps1 && virsh start vps1