Container starten nach Proxmox Update nicht mehr

Scripthase

Member
Jan 7, 2020
12
1
8
Berlin
Hallo liebe Community,

ich habe bei mir zu Hause auf einem Intel Nuc Proxmox zu laufen.

Heute wollte ich mal alle Pakete die zur Aktualisierung standen aktualisieren, danach den Nuc neustarten.
Seitdem ich ihn neugestartet habe, starten die Container nicht mehr. Laut Webinterface im Log heißt es, dass die Container gestartet sind, aber Fehlanzeige.
Die Icons sind auch nur grau.

Wenn in den Container über die Konsole starten will und mir den Log anschaue steht dort folgendes:
Code:
root@pve:~# systemctl status pve-container@100.service
● pve-container@100.service - PVE LXC Container: 100
   Loaded: loaded (/lib/systemd/system/pve-container@.service; static; vendor preset: enabled)
   Active: failed (Result: exit-code) since Mon 2020-05-25 18:17:24 CEST; 3s ago
     Docs: man:lxc-start
           man:lxc
           man:pct
  Process: 3584 ExecStart=/usr/bin/lxc-start -F -n 100 (code=exited, status=1/FAILURE)
 Main PID: 3584 (code=exited, status=1/FAILURE)

May 25 18:17:23 pve systemd[1]: Started PVE LXC Container: 100.
May 25 18:17:24 pve systemd[1]: pve-container@100.service: Main process exited, code=exited, status=1/FAILURE
May 25 18:17:24 pve systemd[1]: pve-container@100.service: Failed with result 'exit-code'.

Könnt Ihr mir vielleicht helfen, dass ich den Nuc und meine Container wieder zum laufen kriege?
Vielen Dank schon Mal!

Lieben Gruß
Dennis
 
Hallo,

Hast du full upgrade gemacht? ich meine apt update && apt full-upgrade - falls ja bitte post pveversion -v und logs für journalctl -b
 
Hallo,

Hast du full upgrade gemacht? ich meine apt update && apt full-upgrade - falls ja bitte post pveversion -v und logs für journalctl -b

Hallo Moayad,
vielen Dank für Deine Antwort.

Ich habe nur folgende Befehle ausgeführt: apt update && apt upgrade -y .
Es wurde dabei anscheinend auch ein Kernel-Update gemacht. Kann es vielleicht daran liegen? Wenn ja, wie bekomme ich das Problem gelöst?

Hier erstmal pveversion -v :
Code:
proxmox-ve: 6.2-1 (running kernel: 5.4.41-1-pve)
pve-manager: 6.2-4 (running version: 6.2-4/9824574a)
pve-kernel-5.4: 6.2-2
pve-kernel-helper: 6.2-2
pve-kernel-5.3: 6.1-6
pve-kernel-5.4.41-1-pve: 5.4.41-1
pve-kernel-5.4.34-1-pve: 5.4.34-2
pve-kernel-5.3.18-3-pve: 5.3.18-3
pve-kernel-5.3.18-2-pve: 5.3.18-2
ceph-fuse: 12.2.11+dfsg1-2.1+b1
corosync: 3.0.3-pve1
criu: 3.11-3
glusterfs-client: 5.5-3
ifupdown: 0.8.35+pve1
ksm-control-daemon: 1.3-1
libjs-extjs: 6.0.1-10
libknet1: 1.15-pve1
libproxmox-acme-perl: 1.0.4
libpve-access-control: 6.1-1
libpve-apiclient-perl: 3.0-3
libpve-common-perl: 6.1-2
libpve-guest-common-perl: 3.0-10
libpve-http-server-perl: 3.0-5
libpve-storage-perl: 6.1-8
libqb0: 1.0.5-1
libspice-server1: 0.14.2-4~pve6+1
lvm2: 2.03.02-pve4
lxc-pve: 4.0.2-1
lxcfs: 4.0.3-pve2
novnc-pve: 1.1.0-1
proxmox-mini-journalreader: 1.1-1
proxmox-widget-toolkit: 2.2-1
pve-cluster: 6.1-8
pve-container: 3.1-6
pve-docs: 6.2-4
pve-edk2-firmware: 2.20200229-1
pve-firewall: 4.1-2
pve-firmware: 3.1-1
pve-ha-manager: 3.0-9
pve-i18n: 2.1-2
pve-qemu-kvm: 5.0.0-2
pve-xtermjs: 4.3.0-1
qemu-server: 6.2-2
smartmontools: 7.1-pve2
spiceterm: 3.1-1
vncterm: 1.6-1
zfsutils-linux: 0.8.4-pve1

Der Log von journalctl -b findest Du im Anhang, da der Log ziemlich lang ist mit 4000 Zeilen.

Lieben Gruß
Dennis
 

Attachments

  • journalctl.txt
    386.2 KB · Views: 2
Last edited:
Bitte versuchst zu start dien container mit diesem Befehl.

Code:
lxc-start -n CTID -F -l DEBUG -o /tmp/lxc-CTID.log
 
Bitte versuchst zu start dien container mit diesem Befehl.

Code:
lxc-start -n CTID -F -l DEBUG -o /tmp/lxc-CTID.log

Gibt folgendes Logfile aus:
Code:
lxc-start 100 20200526112822.725 INFO     confile - confile.c:set_config_idmaps:2051 - Read uid map: type u nsid 0 hostid 100000 range 65536
lxc-start 100 20200526112822.725 INFO     confile - confile.c:set_config_idmaps:2051 - Read uid map: type g nsid 0 hostid 100000 range 65536
lxc-start 100 20200526112822.725 INFO     lsm - lsm/lsm.c:lsm_init:29 - LSM security driver AppArmor
lxc-start 100 20200526112822.725 INFO     conf - conf.c:run_script_argv:340 - Executing script "/usr/share/lxc/hooks/lxc-pve-prestart-hook" for container "100", config section "lxc"
lxc-start 100 20200526112823.548 DEBUG    conf - conf.c:run_buffer:312 - Script exec /usr/share/lxc/hooks/lxc-pve-prestart-hook 100 lxc pre-start produced output: cannot open directory //tank0/subvol-100-disk-0: No such file or directory

lxc-start 100 20200526112823.615 ERROR    conf - conf.c:run_buffer:323 - Script exited with status 2
lxc-start 100 20200526112823.616 ERROR    start - start.c:lxc_init:804 - Failed to run lxc.hook.pre-start for container "100"
lxc-start 100 20200526112823.616 ERROR    start - start.c:__lxc_start:1903 - Failed to initialize container "100"
lxc-start 100 20200526112823.617 INFO     conf - conf.c:run_script_argv:340 - Executing script "/usr/share/lxc/hooks/lxc-pve-poststop-hook" for container "100", config section "lxc"
lxc-start 100 20200526112823.362 DEBUG    conf - conf.c:run_buffer:312 - Script exec /usr/share/lxc/hooks/lxc-pve-poststop-hook 100 lxc post-stop produced output: umount: /var/lib/lxc/100/rootfs: not mounted

lxc-start 100 20200526112823.362 DEBUG    conf - conf.c:run_buffer:312 - Script exec /usr/share/lxc/hooks/lxc-pve-poststop-hook 100 lxc post-stop produced output: command 'umount --recursive -- /var/lib/lxc/100/rootfs' failed: exit code 1

lxc-start 100 20200526112823.369 ERROR    conf - conf.c:run_buffer:323 - Script exited with status 1
lxc-start 100 20200526112823.369 ERROR    start - start.c:lxc_end:971 - Failed to run lxc.hook.post-stop for container "100"
lxc-start 100 20200526112823.369 ERROR    lxc_start - tools/lxc_start.c:main:308 - The container failed to start
lxc-start 100 20200526112823.369 ERROR    lxc_start - tools/lxc_start.c:main:314 - Additional information can be obtained by setting the --logfile and --logpriority options
 
APT Upgrade ist (oder war) nicht ausreichend.
apt update && apt dist-upgrade -y
sollte besser funktionieren. (oder eben apt update && apt full-upgrade )

Soll ich den/die Befehle, dann nochmal nachträglich ausführen und hoffen, dass es dann funktioniert?

Im Debuglog wird auch nach dem Update angezeigt, dass mein eines ZFS-Volume nicht gemountet wird.
Hängt vielleicht auch mit dem nicht vollständig ausgeführten Update zusammen?
 
Soll ich den/die Befehle, dann nochmal nachträglich ausführen und hoffen, dass es dann funktioniert?
Wäre mein Vorgehen.
Hängt vielleicht auch mit dem nicht vollständig ausgeführten Update zusammen?
Kann sein, ich habe aber kein ZFS im Einsatz. Ich würde zuerst mal das Update durchlaufen lassen und dann noch einmal schauen welche Fehler noch auftreten. Bisher hatte ich da aber noch nie Probleme..

LG Jonas
 
Wäre mein Vorgehen.
Habe ich soeben Mal durchgeführt, kein Erfolg. Er hat auch keine Pakete zum Update gefunden.

Kann sein, ich habe aber kein ZFS im Einsatz. Ich würde zuerst mal das Update durchlaufen lassen und dann noch einmal schauen welche Fehler noch auftreten. Bisher hatte ich da aber noch nie Probleme..
Okay, aber wie gesagt, auf einmal mountet er sie nicht mehr, wohl er es sonst getan hat.
 
Hallo,
das hier ist wahrscheinlich der Fehler:
Code:
lxc-start 100 20200526112823.548 DEBUG    conf - conf.c:run_buffer:312 - Script exec /usr/share/lxc/hooks/lxc-pve-prestart-hook 100 lxc pre-start produced output: cannot open directory //tank0/subvol-100-disk-0: No such file or directory
Bitte kontrolliere, ob deine ZFS Dateisysteme richtig gemountet werden. Was ist die Ausgabe von zfs get mounted,mountpoint tank0/subvol-100-disk-0? Und falls es nicht gemountet nicht, was passiert bei zfs mount tank0/subvol-100?
 
Bitte kontrolliere, ob deine ZFS Dateisysteme richtig gemountet werden. Was ist die Ausgabe von zfs get mounted,mountpoint tank0/subvol-100-disk-0? Und falls es nicht gemountet nicht, was passiert bei zfs mount tank0/subvol-100?

Ausgabe von zfs get mounted,mountpoint tank0/subvol-100-disk-0 ist folgende:
Code:
root@pve:~# zfs get mounted,mountpoint tank0/subvol-100-disk-0           
NAME                     PROPERTY    VALUE                     SOURCE
tank0/subvol-100-disk-0  mounted     no                        -
tank0/subvol-100-disk-0  mountpoint  /tank0/subvol-100-disk-0  default

Nach dem ich dann den Mountbefehl ausgeführt habe, erschien folgendes:
Code:
root@pve:~# zfs mount tank0/subvol-100-disk-0

root@pve:~# zfs get mounted,mountpoint tank0/subvol-100-disk-0
NAME                     PROPERTY    VALUE                     SOURCE
tank0/subvol-100-disk-0  mounted     yes                       -
tank0/subvol-100-disk-0  mountpoint  /tank0/subvol-100-disk-0  default

Heißt es, dass ich jetzt jedes Subvolume meiner Container händisch wieder mounten muss?
Wie sieht es aus, wenn ich den PVE neustarte? Muss ich dass dann wieder tuen oder passiert es dann automatisch?
 
Heißt es, dass ich jetzt jedes Subvolume meiner Container händisch wieder mounten muss?
Wie sieht es aus, wenn ich den PVE neustarte? Muss ich dass dann wieder tuen oder passiert es dann automatisch?

Nein, du kannst auch zfs mount -a benutzen, um alle Dateisysteme zu mounten. Gibt es da jetzt einen Fehler?
Das sollte nämlich eigentlich auch beim Booten passieren. Bitte kontrolliere das Systemd-Journal, um zu sehen ob da was schief gelaufen ist.
 
Ja, da gibt es einen Fehler. Folgenden:
Code:
root@pve:~# zfs mount -a       
cannot mount '/tank0': directory is not empty

Am besten alles was unterhalb von /tank0/ ist unmounten (das Kommando findmnt ist hilfreich), dann die übrigen Daten (sollte es welche geben) unterhalb von /tank0/ irgendwo anders hin verschieben und dann alles unterhalb von /tank0/ löschen (wenn Du Glück hast, sind es eh nur leere Verzeichnisse). Nachher sollte es möglich sein das Dateisystem zu mounten.
 
Am besten alles was unterhalb von /tank0/ ist unmounten (das Kommando findmnt ist hilfreich), dann die übrigen Daten (sollte es welche geben) unterhalb von /tank0/ irgendwo anders hin verschieben und dann alles unterhalb von /tank0/ löschen (wenn Du Glück hast, sind es eh nur leere Verzeichnisse). Nachher sollte es möglich sein das Dateisystem zu mounten.

Alles klar, werde ich machen sobald ich wieder zu Hause bin.

Gibt es den einen Grund, warum auf einmal nach den Befehlen apt update && apt upgrade, dieses Problem entstanden ist?
 
  • Like
Reactions: matze1
Nachher sollte es möglich sein das Dateisystem zu mounten.

Das Dateisystem lies sich wieder mounten und die Container wieder starten.
Habe jetzt ein komplettes Backup des Systems durchgeführt und werde den NUC jetzt nochmal neuaufsetzten.

Ist mir ein wenig zu heikel, nicht dass doch noch irgendwas mit den Daten darauf passiert.
Vielen Dank für deine Hilfe, Fabian!
 
Gibt es den einen Grund, warum auf einmal nach den Befehlen apt update && apt upgrade, dieses Problem entstanden ist?

Da ich das exakt gleiche Problem habe, erlaube ich mir mal, den Thread zu kapern.

Auch ich habe den Host aktualisiert und nach dem Neustart waren die ZFS Dateisysteme nicht gemountet, weil wohl "zfs mount -a" mit der Fehlermeldung "cannot mount '/vz': directory is not empty" fehlschlug.

Auch ich musste alte, leere Verzeichnisse unterhalb von /vz manuell loeschen, bevor ich "zfs mount -a" ausfuehren konnte.
Anschliessend waren die Inhalte unterhalb von /vz wieder vorhanden.

Es scheint sich hier also um keinen Einzelfall zu handeln, koennten wir das Problem bitte debuggen? Was kann ich dazu beitragen?

Gruss,

Matze
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!