Forgejo - Down on Debian 13
-
Gestern morgen bekam ich eine Mail, das mein Forgejo Dienst down ist. Häh, warum? Ich hatte überhaupt nichts verändert. Ich hatte einige Mühe damit, zu verstehen was passiert ist. Das hatte ich dann gesehen.
dependency failed for postgres.service - Postgres Container im Pod forgejo-pod. Jul 05 11:09:53 debian-4gb-nbg1-2-forgejo systemd[1]: postgres.service: Job postgres.service/start failed with result 'dependency'. Jul 05 11:09:53 debian-4gb-nbg1-2-forgejo systemd[1]: Dependency failed for postgres.service - Postgres Container im Pod forgejo-pod. Jul 05 11:09:53 debian-4gb-nbg1-2-forgejo systemd[1]: postgres.service: Job postgres.service/start failed with result 'dependency'.
Ich hatte immer noch keine Ahnung warum? Pod lief nicht und kein Container. Also alles mal mit der KI abklopfen.
Mit diesem Befehl
journalctl -u forgejo-pod-pod.service --no-pager -n 50
bekam ich diese Ausgabe.
Jul 05 11:38:35 debian-4gb-nbg1-2-forgejo forgejo-pod-pod[852]: Error: building local pause image: finding pause binary: exec: "catatonit": executable file not found in $PATH Jul 05 11:38:35 debian-4gb-nbg1-2-forgejo systemd[1]: forgejo-pod-pod.service: Control process exited, code=exited, status=125/n/a Jul 05 11:38:35 debian-4gb-nbg1-2-forgejo forgejo-pod-pod[954]: Error: reading pod ID file: open /run/forgejo-pod-pod.pod-id: no such file or directory Jul 05 11:38:35 debian-4gb-nbg1-2-forgejo systemd[1]: forgejo-pod-pod.service: Control process exited, code=exited, status=125/n/a Jul 05 11:38:35 debian-4gb-nbg1-2-forgejo systemd[1]: forgejo-pod-pod.service: Failed with result 'exit-code'. Jul 05 11:38:35 debian-4gb-nbg1-2-forgejo systemd[1]: Failed to start forgejo-pod-pod.service - Forgejo Pod. Jul 05 11:38:35 debian-4gb-nbg1-2-forgejo systemd[1]: forgejo-pod-pod.service: Scheduled restart job, restart counter is at 1. Jul 05 11:38:35 debian-4gb-nbg1-2-forgejo systemd[1]: Starting forgejo-pod-pod.service - Forgejo Pod... Jul 05 11:38:35 debian-4gb-nbg1-2-forgejo forgejo-pod-pod[980]: Error: building local pause image: finding pause binary: exec: "catatonit": executable file not found in $PATH
Nun hatten wir den Übeltäter. Das Paket catatonit war nicht installiert!?
Also schnell ein
apt install catatonit
und alles lief wieder. Doch warum? Die KI befragt
Das Problem wurde ursprünglich als Debian Bug #971815 dokumentiert, wo catatonit nur als "schwache Abhängigkeit" (Recommends) und nicht als harte Abhängigkeit in Podman definiert war #971815 - podman: --init is broken: /usr/libexec/podman/catatonit not found - Debian Bug report logs
Ok, das habe ich dann mal ein wenig recherchiert. Das Paket catatonit ist in Debian 12 & 13 nur ein recommended Package. Irgendwas muss bei einem Debian Update kaputt gegangen sein. Moment, welches Update? Ich hatte ja nichts gemacht. Mir ist aber schon längere Zeit aufgefallen, das ich im pstree den Dienst unattended-upgr am Laufen habe.
Seit einiger Zeit, macht das Hetzner bei einer neuen Debian VM mit rein. Alle meine alten VMs kennen den Dienst nicht, nur die zuletzt neu angelegten. Ok, weiter.
Es stellte sich heraus, das auf meinem System jetzt mit dieser Podman Version läuft.
Version: 5.4.2+ds1-1+b4
Und die braucht zwingend catatonit.
Meine Lösung letztendlich war, auf allen neuen Debian VMs, die ich installiert hatte, das
unattended-upgrade
zu deinstallieren. Das schont meine Nerven. Ich hatte eben auch nochmal nachgeschaut, wann das Tool die Upgrades macht. Eingestellt ist 06:00 Serverzeit, entspricht 08:00 meiner Zeit. Dann gibt es noch ein zufällige Verzögerung von bis zu 60 Minuten.
### Editing /etc/systemd/system/apt-daily-upgrade.timer.d/override.conf ### Anything between here and the comment below will become the contents of the drop-in file ### Edits below this comment will be discarded ### /usr/lib/systemd/system/apt-daily-upgrade.timer # [Unit] # Description=Daily apt upgrade and clean activities # After=apt-daily.timer # # [Timer] # OnCalendar=*-*-* 6:00 # RandomizedDelaySec=60m # Persistent=true # # [Install] # WantedBy=timers.target
Die Downtime Mail hat mich um 09:08 erreicht. Passt also. Wieder was gelernt. Und im Ansible Script unbedingt die Deinstallation von unattended-upgrade aufnehmen.
-
-
-
-
-
-
-
SSH Login ohne Passwort
Angeheftet Linux -