Ext4 bei Neustart

pst04

New Member
Aug 9, 2021
2
0
1
Meinem Rechner mit proxmox wurde Unwetterbedingt der Strom abgedreht. Jetzt wollte ich die Kiste wieder neu starten, bekomme aber folgenden Fehler: VFS: Can't find ext4 filesystem
Danach:
Failed to mount /mnt/sdb
Dependency failed for local file systems
Failed to start import zfs pool ssd1

Da ich noch nicht so lange mit proxmox arbeite, weiß ich hier leider nicht weiter... Kann mir da jemand helfen?
 

Dunuin

Famous Member
Jun 30, 2020
8,112
2,024
149
Germany
Um so etwas zu verhindern am besten den Proxmox-Server an eine USV anschließen. Sofern die USV auch ein HUD bietet kann man auch die USV per USB mit dem Proxmox-Server verbinden und dann NUT auf dem Server installieren. Dann fährt der Server automatisch herunter, sobald da die USV wegen Stromausfall auf den Batterie-Modus umschaltet. Ich bin mit der hier (bis grob 150W zu empfehlen) ganz zufrieden und die war sogar nur 50€.

Wie hattest du denn deine Laufwerke genutzt? Klingt als hättest du sowohl ext4 als auch ZFS benutzt und eines der Laufwerke macht wohl nun Probleme.

Was sagen denn z.B. lsblk und fdisk -l?
 
Last edited:

pst04

New Member
Aug 9, 2021
2
0
1
Danke, die usv steht definitiv auf meiner einkaufsliste! Fdisk wäre mir nichts besonderes aufgefallen, bei lsblk wird mir allerdings kein mountpoint angezeigt. Das ist aber bei der sdc auch so, und da bekomme ich keine Fehlermeldung...
 

Chucky

Member
May 26, 2019
15
0
6
44
Um so etwas zu verhindern am besten den Proxmox-Server an eine USV anschließen. Sofern die USV auch ein HUD bietet kann man auch die USV per USB mit dem Proxmox-Server verbinden und dann NUT auf dem Server installieren. Dann fährt der Server automatisch herunter, sobald da die USV wegen Stromausfall auf den Batterie-Modus umschaltet. Ich bin mit der hier (bis grob 150W zu empfehlen) ganz zufrieden und die war sogar nur 50€.

Wie hattest du denn deine Laufwerke genutzt? Klingt als hättest du sowohl ext4 als auch ZFS benutzt und eines der Laufwerke macht wohl nun Probleme.

Was sagen denn z.B. lsblk und fdisk -l?
Hallo
Hast du Nut direkt auf pve installiert ? Hast du eine Anleitung?
 

Dunuin

Famous Member
Jun 30, 2020
8,112
2,024
149
Germany
Ja, Nut läuft bei mir direkt auf dem PVE, jedoch nur als client. Die USV selbst ist an meinem einen TrueNAS-Server angeschlossen der als Nut-Server dient und dann per Nut den PVE-Server runterfährt, damit da SMB/NFS Shares als letztes runtergefahren werden, weil PVE die ja gemountet braucht um die VMs herunterfahren und korrekt speichern zu können.

Ich habe mal in meine Notizen gegeuckt, habe aber nur Aufzeichnungen gefunden, wie ich das damals bei meinem RasPi als Nut-Server + PVE als Nut-Client gemacht habe.
Raspbian und PVE basieren aber beide auf Debian, also sollte das eigentlich gleich sein:
Code:
Install USV:

Als Server dient der RaspiServerDMZ da er in der DMZ sitzt so dass alle Clients ihn erreichen können.

01.) USV per USB finden:
# sudo lsusb
Wäre beim Powerwalter Basic VI 800 STL:
Bus 001 Device 006: ID 0764:0601 Cyber Power System, Inc. PR1500LCDRT2U UPS

02.) NUT Server auf Raspi installieren:
# sudo apt-get install nut-client nut-server usbutils nut-monitor

03.) NUT Server einrichten:
Konfig für meine USV festlegen:
# sudo nano /etc/nut/ups.conf
Unten einfügen:
[Powerwalker]
        driver = usbhid-ups
        port = auto
        desc = "Powerwalker Basic VI 800 STL"
        offdelay = 300
        ondelay = 600
        override.battery.charge.low = 70
        override.battery.charge.warning = 80

    
# sudo systemctl restart nut-driver

    
NUT-Server konfigurieren:
# sudo nano /etc/nut/upsd.conf
Zeilen einfügen:
LISTEN 127.0.0.1 3493
LISTEN 192.168.42.5 3493
ACL all 0.0.0.0/0
ACL localhost 127.0.0.1/32
ACL dmz 192.168.42.0/24
ACL intranet 192.168.43.0/24
ACCEPT localhost
ACCEPT dmz
ACCEPT intranet
REJECT all

# sudo nano /etc/nut/nut.conf
Diesen Raspi als Server setzen. Dafür Zeile einfügen:
MODE=netserver

# NUT User festlegen:
# sudo nano /etc/nut/upsd.users
Dort einfügen:
[upsmaster]
    password = DasAdminPasswort
    allowfrom = localhost dmz intranet
    upsmon master

[upsremote]
    password  = DasClientPasswort
    allowfrom = localhost dmz intranet
    upsmon slave
    
# sudo systemctl enable nut-server
# sudo systemctl start nut-server
# upsc Powerwalker@localhost
Sollte sowas ausgeben wie:
Init SSL without certificate database
battery.charge: 100
battery.charge.low: 10
battery.charge.warning: 20
battery.mfr.date: 1
battery.runtime: 1020
battery.runtime.low: 300
battery.type: PbAcid
battery.voltage: 13.6
battery.voltage.nominal: 12
device.mfr: 1
device.model:  800
device.serial:
device.type: ups
driver.name: usbhid-ups
driver.parameter.pollfreq: 30
driver.parameter.pollinterval: 2
driver.parameter.port: auto
driver.parameter.synchronous: no
driver.version: 2.7.4
driver.version.data: CyberPower HID 0.4
driver.version.internal: 0.41
input.transfer.high: 290
input.transfer.low: 162
input.voltage: 234.0
input.voltage.nominal: 230
output.voltage: 234.0
ups.beeper.status: enabled
ups.delay.shutdown: 20
ups.delay.start: 30
ups.load: 34
ups.mfr: 1
ups.model:  800
ups.productid: 0601
ups.realpower.nominal: 480
ups.serial:
ups.status: OL
ups.timer.shutdown: -60
ups.timer.start: -60
ups.vendorid: 0764

NUT Client auf Server konfigurieren:
# sudo nano /etc/nut/upsmon.conf
Dort einfügen:
MONITOR Powerwalker@192.168.42.5 1 upsmaster PasswortDesRemoteUsers master
NOTIFYCMD /sbin/upssched
NOTIFYFLAG ONLINE     SYSLOG+WALL+EXEC
NOTIFYFLAG ONBATT     SYSLOG+WALL+EXEC
NOTIFYFLAG LOWBATT    SYSLOG+WALL+EXEC


# sudo systemctl restart nut-client
# sudo systemctl enable nut-client
# sudo systemctl restart nut-monitor
# sudo systemctl enable nut-monitor

NUT fährt den Rechner erst herunter, nachdem die Batterie der USV auf "low" geht. Um den Hypervisor nach einer festen Zeit runterfahren zu lassen,
nachdem die USV auf Batteriebetrieb gewechselt hat, muss ein eigenes Script von einem Timer über "upssched" gestartet werden:
# sudo mkdir /etc/nut/upssched
# sudo nano /etc/nut/upssched/upsscript
Dort einfügen:
#! /bin/sh
case $1 in
  onbatt)
    /sbin/upsmon -c fsd;;
  battleer)
    /sbin/upsmon -c fsd;;
  *)
    echo "Falscher Parameter";;
esac

# sudo chown -R root:nut /etc/nut/upssched
# sudo chmod -R 750 /etc/nut/upssched
# sudo nano /etc/nut/upssched.conf
Dort die Teile "CMDSCRIPT /bin/upssched-cmd" durch "CMDSCRIPT /etc/nut/upssched/upsscript" ersetzen.
Zeile "PIPEFN /etc/nut/upssched/upssched.pipe" einfügen.
Zeile "LOCKFN /etc/nut/upssched/upssched.lock" einfügen.
Diese Zeilen einfügen:
AT ONBATT * START-TIMER onbatt 30
AT ONLINE * CANCEL-TIMER onbatt
AT LOWBATT * EXEC battleer

Hier nochmal etwas neuere Notizen vom Nut-Client auf PVE:
Code:
045.) NUT Client installieren und Einrichten (USV autoshutdown)
- # apt-get update && apt-get install nut-client nut-monitor
- # nano /etc/nut/nut.conf
  Zeile "MODE=none" auf "MODE=netclient" ändern.
- # nano /etc/nut/upsmon.conf
  Dort einfügen:
  MONITOR Powerwalker@192.168.42.5 1 upsremote PasswortDesRemoteUsers slave
- # systemctl restart nut-client
- # systemctl enable nut-client
- # systemctl restart nut-monitor
- # systemctl enable nut-monitor
- # systemctl status nut-client
 

Chucky

Member
May 26, 2019
15
0
6
44
Danke dir
Ist besser eine Vm für den Nut Server zu machen oder direkt auf Pve installieren ?
 

Dunuin

Famous Member
Jun 30, 2020
8,112
2,024
149
Germany
Naja, ist ja eigentlich schlechter Stil wenn man Dinge direkt auf dem Hypervisor installiert, für Zabbix, Nut und Filebeat mache ich das aber trotzdem immer. Nut braucht ja zum einen Zugriff auf USB um die USV zu überwachen. Und zum anderen muss Nut dann auch ein Script ausführen was den Server runterfährt. Das geht prinzipiell auch aus einer VM oder einem LXC (dann halt mit USB Passthrough und ein Script was sich per ssh remote mit dem Server verbindet und auf dem dann ein "shutdown now" absetzt) aber dann kann man Nut auch einfach gleich auf dem Host selbst installieren und sich die Umständlichkeiten sparen.
 

Chucky

Member
May 26, 2019
15
0
6
44
Danke dir

Hast du noch einen Tipp für den Treiber ?
Über lsusb finde ich die usv , aber er sagt im disconnect
 

Dunuin

Famous Member
Jun 30, 2020
8,112
2,024
149
Germany
Meist du Treiber für Linux oder welchen Treiber du in NUT auswählen musst? Meine USV war nicht in der Kompatibilitätsliste geführt, also habe ich mich da durchgetestet bis einer für NUT klappte.

Hier ist übrigens ein ganz neues super ausführliches NUT Tutorial Video was ich sehr gut fand. Ist jetzt nicht speziell für Proxmox aber sollte auch da passen.
 

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 your own in 60 seconds.

Buy now!