zfs-mount.service-Fehler und kein /dev/zvol nach Upgrade 5.1

carsten2

Well-Known Member
Mar 25, 2017
249
20
58
55
Nach einem Upgrade mit "apt-update & apt-dist-upgrade" von 5.0 kommt das System nicht mehr richtig hoch. Es gibt ein Problem beim Mounten von ZFS.

root@xxxx:~# systemctl status zfs-mount.service
● zfs-mount.service - Mount ZFS filesystems
Loaded: loaded (/lib/systemd/system/zfs-mount.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Tue 2017-10-24 22:24:06 CEST; 3h 15min ago
Docs: man:zfs(8)
Process: 2419 ExecStart=/sbin/zfs mount -a (code=exited, status=1/FAILURE)
Main PID: 2419 (code=exited, status=1/FAILURE)

Oct 24 22:24:06 xxxxsystemd[1]: Starting Mount ZFS filesystems...
Oct 24 22:24:06 xxxxzfs[2419]: cannot mount '/rpool': directory is not empty
Oct 24 22:24:06 xxxxsystemd[1]: zfs-mount.service: Main process exited, code=exited, status=1/FAILURE
Oct 24 22:24:06 xxxxsystemd[1]: Failed to start Mount ZFS filesystems.
Oct 24 22:24:06 xxxxsystemd[1]: zfs-mount.service: Unit entered failed state.
Oct 24 22:24:06 xxxxsystemd[1]: zfs-mount.service: Failed with result 'exit-code'.

Es ist kein Swap-Bereich da und kein /dev/zvol


Folgende Parameter haben NICHT geholfen:
ZFS_INITRD_PRE_MOUNTROOT_SLEEP='10'
ZFS_INITRD_POST_MODPROBE_SLEEP='10'
 
Last edited:
root@xxxxx:/rpool# ls -lR
.:
total 1
drwxr-xr-x 2 root root 2 Jun 10 17:35 data
drwxr-xr-x 3 root root 3 Jun 10 17:35 ROOT

./data:
total 0

./ROOT:
total 1
drwxr-xr-x 2 root root 2 Jun 10 17:35 pve-1

./ROOT/pve-1:
total 0
 
do you have any mounts defined in /etc/fstab (besides /proc and the swap zvol) that might interfere?

you should be able to remove the empty directories (use rmdir, and be careful), and then issue a "zfs mount -a".

also, please include "pveversion -v" to double-check that the upgrade went through correctly.
 
root@xxx:/etc# cat fstab
# <file system> <mount point> <type> <options> <dump> <pass>
/dev/zvol/rpool/swap none swap sw 0 0
proc /proc proc defaults 0 0

root@xxx:/etc# pveversion -v
proxmox-ve: 5.1-25 (running kernel: 4.10.17-3-pve)
pve-manager: 5.1-35 (running version: 5.1-35/722cc488)
pve-kernel-4.13.4-1-pve: 4.13.4-25
pve-kernel-4.4.76-1-pve: 4.4.76-94
pve-kernel-4.4.62-1-pve: 4.4.62-88
pve-kernel-4.10.17-4-pve: 4.10.17-24
pve-kernel-4.4.35-1-pve: 4.4.35-77
pve-kernel-4.4.67-1-pve: 4.4.67-92
pve-kernel-4.10.17-3-pve: 4.10.17-23
libpve-http-server-perl: 2.0-6
lvm2: 2.02.168-pve6
corosync: 2.4.2-pve3
libqb0: 1.0.1-1
pve-cluster: 5.0-15
qemu-server: 5.0-17
pve-firmware: 2.0-3
libpve-common-perl: 5.0-20
libpve-guest-common-perl: 2.0-13
libpve-access-control: 5.0-7
libpve-storage-perl: 5.0-16
pve-libspice-server1: 0.12.8-3
vncterm: 1.5-2
pve-docs: 5.1-12
pve-qemu-kvm: 2.9.1-2
pve-container: 2.0-17
pve-firewall: 3.0-3
pve-ha-manager: 2.0-3
ksm-control-daemon: 1.2-2
glusterfs-client: 3.8.8-1
lxc-pve: 2.1.0-2
lxcfs: 2.0.7-pve4
criu: 2.11.1-1~bpo90
novnc-pve: 0.6-4
smartmontools: 6.5+svn4324-1
zfsutils-linux: 0.7.2-pve1~bpo90

Kommandos:
root@xxx:/rpool/ROOT# rmdir pve-1
root@xxx:/rpool# rmdir data
rmdir: failed to remove 'data': Device or resource busy
root@xxx:/rpool# rmdir ROOT
rmdir: failed to remove 'ROOT': Device or resource busy
root@xxx:/rpool#

Reboot: Keine Änderung.
 
was sagt "mount"?

ich würde empfehlen, mit einem live-system zu booten und nur das / dataset zu mounten, dann sollten sich die ordner entfernen lassen..

im übrigen bootest du noch den 4.10er kernel, welcher das alte 0.6.5 ZFS module enthält. nach dem aufräumen würde ich sehr empfehlen, den 4.13.4-1-pve kernel zu booten!
 
1) Ich habe die Proxmox 5.1 CD gebootet aber die erkennt den rpool überhaupt nicht richtig. Siehe Screenshot
cannot-import-rpool.png
Das System kann aber booten und der rpool ist in Ordnung

root@xxxx:~# zpool status
pool: rpool
state: ONLINE
status: Some supported features are not enabled on the pool. The pool can
still be used, but some features are unavailable.
action: Enable all features using 'zpool upgrade'. Once this is done,
the pool may no longer be accessible by software that does not support
the features. See zpool-features(5) for details.
scan: scrub repaired 0B in 0h0m with 0 errors on Tue Oct 24 21:42:05 2017
config:

NAME STATE READ WRITE CKSUM
rpool ONLINE 0 0 0
ata-M4-CT512M4SSD2_000000001238091654ED-part2 ONLINE 0 0 0

errors: No known data errors

Wieso geht das nicht, und was ist die Lösung?

2) In der Liste der verfügbaren Kernel beim GRUB-Menu kommt der Kernel 4.13.4-1 gar nicht vor. Siehe Screenshot
verfuegbare-kernel.png
Die stellt man nun den neuen Kernel ein?
 
Hier noch die Ausgabe von mount:

root@xxx:~# mount
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
proc on /proc type proc (rw,relatime)
udev on /dev type devtmpfs (rw,nosuid,relatime,size=16449396k,nr_inodes=4112349,mode=755)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,noexec,relatime,size=3293100k,mode=755)
rpool/ROOT/pve-1 on / type zfs (rw,relatime,xattr,noacl)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
tmpfs on /run/lock type tmpfs (rw,nosuid,nodev,noexec,relatime,size=5120k)
tmpfs on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,mode=755)
cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/lib/systemd/systemd-cgroups-agent,name=systemd)
pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,relatime)
cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,nosuid,nodev,noexec,relatime,perf_event)
cgroup on /sys/fs/cgroup/memory type cgroup (rw,nosuid,nodev,noexec,relatime,memory)
cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,devices)
cgroup on /sys/fs/cgroup/pids type cgroup (rw,nosuid,nodev,noexec,relatime,pids)
cgroup on /sys/fs/cgroup/net_cls,net_prio type cgroup (rw,nosuid,nodev,noexec,relatime,net_cls,net_prio)
cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blkio)
cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpu,cpuacct)
cgroup on /sys/fs/cgroup/hugetlb type cgroup (rw,nosuid,nodev,noexec,relatime,hugetlb)
cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,freezer)
cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset)
systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=30,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=2148)
mqueue on /dev/mqueue type mqueue (rw,relatime)
debugfs on /sys/kernel/debug type debugfs (rw,relatime)
hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime)
sunrpc on /run/rpc_pipefs type rpc_pipefs (rw,relatime)
fusectl on /sys/fs/fuse/connections type fusectl (rw,relatime)
configfs on /sys/kernel/config type configfs (rw,relatime)
rpool/ROOT on /rpool/ROOT type zfs (rw,noatime,xattr,noacl)
rpool/data on /rpool/data type zfs (rw,noatime,xattr,noacl)
lxcfs on /var/lib/lxcfs type fuse.lxcfs (rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other)
/dev/fuse on /etc/pve type fuse (rw,nosuid,nodev,relatime,user_id=0,group_id=0,default_permissions,allow_other)
tmpfs on /run/user/0 type tmpfs (rw,nosuid,nodev,relatime,size=3293096k,mode=700)
 
1) Ich habe die Proxmox 5.1 CD gebootet aber die erkennt den rpool überhaupt nicht richtig. Siehe Screenshot
View attachment 6092
Das System kann aber booten und der rpool ist in Ordnung

root@xxxx:~# zpool status
pool: rpool
state: ONLINE
status: Some supported features are not enabled on the pool. The pool can
still be used, but some features are unavailable.
action: Enable all features using 'zpool upgrade'. Once this is done,
the pool may no longer be accessible by software that does not support
the features. See zpool-features(5) for details.
scan: scrub repaired 0B in 0h0m with 0 errors on Tue Oct 24 21:42:05 2017
config:

NAME STATE READ WRITE CKSUM
rpool ONLINE 0 0 0
ata-M4-CT512M4SSD2_000000001238091654ED-part2 ONLINE 0 0 0

errors: No known data errors

Wieso geht das nicht, und was ist die Lösung?

2) In der Liste der verfügbaren Kernel beim GRUB-Menu kommt der Kernel 4.13.4-1 gar nicht vor. Siehe Screenshot
View attachment 6094
Die stellt man nun den neuen Kernel ein?

Code:
update-initramfs -u -k 4.13.4-pve-1
update-grub

und dann reboot.. sollte aber eigentlich beim updaten schon passiert sein - ist das eventuell unterbrochen worden oder hat fehler angezeigt?
 
hi,

ich habe das gleiche Problem. Ich habe 6 Nodes von Proxmox 5.0 auf 5.1 gehoben und bei einem fehlt /dev/zvol. Ich have das Volume rpool/swap entfernt und neuerstellt, aber es hat nichts geholfen.

cu denny

kernel ist korrekt 4.13.4-1-pve ?
 
root@xxx:~# update-initramfs -u -k 4.13.4-1-pve
update-initramfs: Generating /boot/initrd.img-4.13.4-1-pve
root@xxx:~# update-grub
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-4.13.4-1-pve
Found initrd image: /boot/initrd.img-4.13.4-1-pve
Found linux image: /boot/vmlinuz-4.10.17-4-pve
Found initrd image: /boot/initrd.img-4.10.17-4-pve
Found linux image: /boot/vmlinuz-4.10.17-3-pve
Found initrd image: /boot/initrd.img-4.10.17-3-pve
Found linux image: /boot/vmlinuz-4.4.76-1-pve
Found initrd image: /boot/initrd.img-4.4.76-1-pve
Found linux image: /boot/vmlinuz-4.4.67-1-pve
Found initrd image: /boot/initrd.img-4.4.67-1-pve
Found linux image: /boot/vmlinuz-4.4.62-1-pve
Found initrd image: /boot/initrd.img-4.4.62-1-pve
Found linux image: /boot/vmlinuz-4.4.35-1-pve
Found initrd image: /boot/initrd.img-4.4.35-1-pve
Found memtest86+ image: /ROOT/pve-1@/boot/memtest86+.bin
Found memtest86+ multiboot image: /ROOT/pve-1@/boot/memtest86+_multiboot.bin
done


Nach dem Reboot ist jedoch der Kernel 4.13.4-1-pve nicht in der Liste, wenn man beim GRUB-start "e" tippt.
 
root@xxx:~# update-initramfs -u -k 4.13.4-1-pve
update-initramfs: Generating /boot/initrd.img-4.13.4-1-pve
root@xxx:~# update-grub
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-4.13.4-1-pve
Found initrd image: /boot/initrd.img-4.13.4-1-pve
Found linux image: /boot/vmlinuz-4.10.17-4-pve
Found initrd image: /boot/initrd.img-4.10.17-4-pve
Found linux image: /boot/vmlinuz-4.10.17-3-pve
Found initrd image: /boot/initrd.img-4.10.17-3-pve
Found linux image: /boot/vmlinuz-4.4.76-1-pve
Found initrd image: /boot/initrd.img-4.4.76-1-pve
Found linux image: /boot/vmlinuz-4.4.67-1-pve
Found initrd image: /boot/initrd.img-4.4.67-1-pve
Found linux image: /boot/vmlinuz-4.4.62-1-pve
Found initrd image: /boot/initrd.img-4.4.62-1-pve
Found linux image: /boot/vmlinuz-4.4.35-1-pve
Found initrd image: /boot/initrd.img-4.4.35-1-pve
Found memtest86+ image: /ROOT/pve-1@/boot/memtest86+.bin
Found memtest86+ multiboot image: /ROOT/pve-1@/boot/memtest86+_multiboot.bin
done


Nach dem Reboot ist jedoch der Kernel 4.13.4-1-pve nicht in der Liste, wenn man beim GRUB-start "e" tippt.

bitte /boot/grub/grub.cfg posten..
 
grub.cfg angehängt. Der neue Kernel ist da drin. Kann es sein, dass es irgendetwas mit dem mount-Problem zu tun hat, es also irgendwie mehrere Verzeichnisse gibt, und grub das richtige nicht sieht?

Warum konnte die Proxmox 5.1-CD eigentlich den Pool nicht importieren?
 

Attachments

  • grub.cfg.txt
    11.8 KB · Views: 2
grub.cfg angehängt. Der neue Kernel ist da drin. Kann es sein, dass es irgendetwas mit dem mount-Problem zu tun hat, es also irgendwie mehrere Verzeichnisse gibt, und grub das richtige nicht sieht?

wenn /boot oder / auch irgendwie "überlagert" worden ist, dann vielleicht?

Warum konnte die Proxmox 5.1-CD eigentlich den Pool nicht importieren?

weil der pool mit /dev/disk/by-id importiert worden ist, und dass im installer nicht funktioniert.
 
Ich habe jetzt folgendes gemacht:
1) Mit mit einer ZFS-Rescue-CD ( https://wiki.gentoo.org/wiki/User:Fearedbliss ) gebootet
2) zfs set mountpoint=/rescue rpool/ROOT/pve-1
2) zfs mount rpool/ROOT/pve-1
3) unter root die beiden Verzeichnisse ROOT und data entfernt.
4) zfs setmount=/ rpool/ROOT/pve-1
5) Neustart

Der Fehler mit dem "Rpool nicht leer" kommt nicht mehr. Dafür ein anderer Fehler:
time-depend-error.png

Ansonsten geht das booten aber weiter. Kein Fehler bei beim zfs-mount.service:

root@xxx:/boot/grub# systemctl status zfs-mount.service
zfs-mount.service - Mount ZFS filesystems
Loaded: loaded (/lib/systemd/system/zfs-mount.service; enabled; vendor preset: enabled)
Active: active (exited) since Fri 2017-10-27 20:53:25 CEST; 16min ago
Docs: man:zfs(8)
Process: 2411 ExecStart=/sbin/zfs mount -a (code=exited, status=0/SUCCESS)
Main PID: 2411 (code=exited, status=0/SUCCESS)
Tasks: 0 (limit: 4915)
CGroup: /system.slice/zfs-mount.service


ABER: Immer noch kein /dev/zvol und der neue Kernel lässt sich zwar mit den beiden bekannten Befehlen installieren, taucht aber im GRUB-Boot-Menu NICHT auf.

Was nun?
 
das mit dem grub menü ist mir ein rätsel.. das mit den fehlenden /dev/zvol links scheint ein udev problem zu sein, sh. https://forum.proxmox.com/threads/zfs-cannot-import-rpool-after-reboot.37611/

Genau diesen Fehler habe ich gestern auch erhalten, nachdem ich PVE 5.0 per GUI auf 5.1 aktualisiert habe.
Ich muss mangels Linux/BSD Kenntnisse zugeben nun leider wenig Plan zu haben, den Fehler einzukreisen und mir zu helfen zu wissen und bin froh, nicht alleine mit dem Problem zu sein und hab schon diverse Threads überflogen…:D Leider konnte ich das Bootproblem nicht lösen und bin wieder auf PVE 5.0 zurück. Wobei ich PVE ausschließlich als Spielwiese zu Hause betreibe und ein nicht funktionierendes System bei mir keine wirtschaftlichen Kollateralschaden verursacht.

Nun habe ich gestern erst eine Subscription abgeschlossen um die Entwickler und den Gedanken hinter und von PVE zu unterstützen und war zuversichtlich und stoße dann gleich auf dieses Startproblem. :cool: Erneut… Ich hatte unlängst mal eine PVE 4.x Installation testweise, dort gab es das verlinkte (ähnliche?) Problem schon direkt nach der Installation, doch mithilfe manueller Einbindung des Pools und verschiedener "boot delay/waiting" Konfigurationsanpassungen lief PVE 4 dann doch.

Gibt es denn schon Erkenntnisse über eine auch für mich laientaugliche Hilfe bzw. per GUI Update um PVE auf 5.1 zu aktualisieren? Aktuell läuft mein PVE host mit 5.0 stabil und ich verspüre nur wenig Intention, dass nun per trial and error Update auf PVE 5.1 zu ändern…
 

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!