NVME-SSD ZFS Mirror EFI reparieren

RockNLol

Active Member
Sep 13, 2020
45
2
28
hi,
ich habe bei der Installation zwei WD SN750 512GB NVME-SSDs in meinem Proxmox Server als ZFS Mirror konfiguriert. Nun habe ich eine der SSDs gegen eine 1TB große Crucial P5 getauscht und das pool repariert (habe diese Anleitung hier verwendet: https://www.thomas-krenn.com/de/wiki/Boot-Device_Replacement_-_Proxmox_ZFS_Mirror_Disk_austauschen)
Nur das EFI bekomme ich nicht auf die neue Platte und somit ist sie nicht bootbar.
Folgender befehl scheitert bei mir:
Code:
root@pve:~# proxmox-boot-tool format /dev/nvme0n1p2
UUID="" SIZE="536870912" FSTYPE="" PARTTYPE="c12a7328-f81f-11d2-ba4b-00a0c93ec93b" PKNAME="nvme0n1" MOUNTPOINT=""
Formatting '/dev/nvme0n1p2' as vfat..
mkfs.fat 4.1 (2017-01-24)
Done.
root@pve:~# proxmox-boot-tool init /dev/nvme0n1p2
Re-executing '/usr/sbin/proxmox-boot-tool' in new private mount namespace..
UUID="" SIZE="536870912" FSTYPE="" PARTTYPE="c12a7328-f81f-11d2-ba4b-00a0c93ec93b" PKNAME="nvme0n1" MOUNTPOINT=""
E: '/dev/nvme0n1p2' has wrong filesystem (!= vfat).
ich habe es schon mit --force probiert, pve-boot-tool statt pve-efiboot-tool, und mit der disk-by-id, alles mit dem gleichen Ergebnis. Was mache ich hier falsch?

LG
RockNLol
 
hm - list sich seltsam - (da ja oben eben mit vfat formatiert wird)...
* steht etwas im journal/dmesg, dass auf probleme hindeuten könnte)?
* was ist das output von:
Code:
lsblk  --bytes --pairs -o  'UUID,SIZE,FSTYPE,PARTTYPE,PKNAME,MOUNTPOINT' /dev/nvme0n1p2
 
  • Like
Reactions: RockNLol
Ja, wundert mich auch sehr. Das formatieren scheint fehlerfrei zu funktionieren und der direkt darauf folgende init beschwert sich über eine fehlerhafte formatierung.
dmesg liefert nichts relevantes.

hier der Output von
Code:
root@pve:~# lsblk  --bytes --pairs -o  'UUID,SIZE,FSTYPE,PARTTYPE,PKNAME,MOUNTPOINT' /dev/nvme0n1p2
UUID="" SIZE="536870912" FSTYPE="" PARTTYPE="c12a7328-f81f-11d2-ba4b-00a0c93ec93b" PKNAME="nvme0n1" MOUNTPOINT=""

Wenn ich das richtig lese, ist der FSTYPE leer, obwohl ohne Fehlermeldung formatiert wurde?
 
Last edited:
Ja, wundert mich auch sehr. Das formatieren scheint fehlerfrei zu funktionieren und der direkt darauf folgende init beschwert sich über eine fehlerhafte formatierung.
hm - bitte folgendes versuchen:
* die partition nochmal mit `proxmox-boot-tool` formatieren (da muss wahrscheinlich `--force` hinzugefügt werden)
* danach `udevadm settle` laufen lassen
* danach versuchen die partition kurz zu mounten (mkdir /mnt/tmp ; mount /dev/nvme0n1p2 /mnt/tmp; umount /mnt/tmp)
* danach nochmal das init laufen lassen
 
Leider die gleiche Fehlermeldung:
Code:
root@pve:~# proxmox-boot-tool format /dev/nvme0n1p2 --force
UUID="" SIZE="536870912" FSTYPE="" PARTTYPE="c12a7328-f81f-11d2-ba4b-00a0c93ec93b" PKNAME="nvme0n1" MOUNTPOINT=""
Formatting '/dev/nvme0n1p2' as vfat..
mkfs.fat 4.1 (2017-01-24)
Done.
root@pve:~# udevadm settle
root@pve:~# mount /dev/nvme0n1p2 /mnt/tmp
root@pve:~# umount /mnt/tmp
root@pve:~# proxmox-boot-tool init /dev/nvme0n1p2 --force
Re-executing '/usr/sbin/proxmox-boot-tool' in new private mount namespace..
UUID="" SIZE="536870912" FSTYPE="" PARTTYPE="c12a7328-f81f-11d2-ba4b-00a0c93ec93b" PKNAME="nvme0n1" MOUNTPOINT=""
E: '/dev/nvme0n1p2' has wrong filesystem (!= vfat).
dmesg bleibt weiterhin ohne relevante Meldungen.
 
hm - danke - ich habe mal versucht das hier nachzustellen (bzw. mal rauszufinden, wo lsblk die FSTYPE informationen herbekommt) - bitte folgendes posten:

* `udevadm info /dev/nvme0n1p2`
* `udevadm trigger /dev/nvme0n1p2`
* `proxmox-boot-tool init /dev/nvme0n1p2`
* wenn das immer noch nicht funktioniert - bitte das file /tmp/lsblk.trace hier anhaengen, welches durch:
Code:
strace -ttyy -s 4096 -o /tmp/lsblk.trac -f lsblk  --bytes --pairs -o  'UUID,SIZE,FSTYPE,PARTTYPE,PKNAME,MOUNTPOINT' /dev/sda2
erstellt wird

Danke!
 
  • Like
Reactions: RockNLol
Code:
root@pve:~# udevadm info /dev/nvme0n1p2
P: /devices/pci0000:00/0000:00:1b.4/0000:04:00.0/nvme/nvme0/nvme0n1/nvme0n1p2
N: nvme0n1p2
L: 0
S: disk/by-partuuid/709ccd5e-5c12-41cb-a57a-e3cd985c0960
S: disk/by-id/nvme-CT1000P5SSD8_21112DB2538E-part2
S: disk/by-id/nvme-eui.000000000000000100a075212db2538e-part2
S: disk/by-path/pci-0000:04:00.0-nvme-1-part2
E: DEVPATH=/devices/pci0000:00/0000:00:1b.4/0000:04:00.0/nvme/nvme0/nvme0n1/nvme0n1p2
E: DEVNAME=/dev/nvme0n1p2
E: DEVTYPE=partition
E: PARTN=2
E: MAJOR=259
E: MINOR=6
E: SUBSYSTEM=block
E: USEC_INITIALIZED=2034309
E: ID_SCSI=1
E: DM_MULTIPATH_DEVICE_PATH=0
E: ID_SERIAL_SHORT=21112DB2538E
E: ID_WWN=eui.000000000000000100a075212db2538e
E: ID_MODEL=CT1000P5SSD8
E: ID_REVISION=P4CR311
E: ID_SERIAL=CT1000P5SSD8_21112DB2538E
E: ID_PATH=pci-0000:04:00.0-nvme-1
E: ID_PATH_TAG=pci-0000_04_00_0-nvme-1
E: ID_PART_TABLE_UUID=6e91cf2f-d1d6-4087-afbf-594ec512b9bc
E: ID_PART_TABLE_TYPE=gpt
E: ID_PART_ENTRY_SCHEME=gpt
E: ID_PART_ENTRY_UUID=709ccd5e-5c12-41cb-a57a-e3cd985c0960
E: ID_PART_ENTRY_TYPE=c12a7328-f81f-11d2-ba4b-00a0c93ec93b
E: ID_PART_ENTRY_NUMBER=2
E: ID_PART_ENTRY_OFFSET=2048
E: ID_PART_ENTRY_SIZE=1048576
E: ID_PART_ENTRY_DISK=259:4
E: DEVLINKS=/dev/disk/by-partuuid/709ccd5e-5c12-41cb-a57a-e3cd985c0960 /dev/disk/by-id/nvme-CT1000P5SSD8_21112DB2538E-part2 /dev/disk/by-id/nvme-eui.000000000000000100a075212db2538e-part2 /dev/disk/by-path/pci-0000:04:00.0-nvme-1-part2
E: TAGS=:systemd:
udevadm trigger /dev/nvme0n1p2
Code:
root@pve:~# proxmox-boot-tool init /dev/nvme0n1p2
Re-executing '/usr/sbin/proxmox-boot-tool' in new private mount namespace..
UUID="A2CE-8E74" SIZE="536870912" FSTYPE="vfat" PARTTYPE="c12a7328-f81f-11d2-ba4b-00a0c93ec93b" PKNAME="nvme0n1" MOUNTPOINT=""
Mounting '/dev/nvme0n1p2' on '/var/tmp/espmounts/A2CE-8E74'.
Installing systemd-boot..
Created "/var/tmp/espmounts/A2CE-8E74/EFI/systemd".
Created "/var/tmp/espmounts/A2CE-8E74/EFI/BOOT".
Created "/var/tmp/espmounts/A2CE-8E74/loader".
Created "/var/tmp/espmounts/A2CE-8E74/loader/entries".
Copied "/usr/lib/systemd/boot/efi/systemd-bootx64.efi" to "/var/tmp/espmounts/A2CE-8E74/EFI/systemd/systemd-bootx64.efi".
Copied "/usr/lib/systemd/boot/efi/systemd-bootx64.efi" to "/var/tmp/espmounts/A2CE-8E74/EFI/BOOT/BOOTX64.EFI".
Created EFI boot entry "Linux Boot Manager".
Configuring systemd-boot..
Unmounting '/dev/nvme0n1p2'.
Adding '/dev/nvme0n1p2' to list of synced ESPs..
Refreshing kernels and initrds..
Running hook script 'proxmox-auto-removal'..
Running hook script 'zz-proxmox-boot'..
Copying and configuring kernels on /dev/disk/by-uuid/5ED3-3B9A
        Copying kernel and creating boot-entry for 5.4.140-1-pve
        Copying kernel and creating boot-entry for 5.4.174-2-pve
Copying and configuring kernels on /dev/disk/by-uuid/A2CE-8E74
        Copying kernel and creating boot-entry for 5.4.140-1-pve
        Copying kernel and creating boot-entry for 5.4.174-2-pve
Sieht erst einmal gut aus, vielen Dank! Werde am Abend mal testen, ob der Server nun auch von der ersetzten SSD bootet.
Was ist da schief gelaufen was udevadm trigger /dev/nvme0n1p2 wieder richtet?