zpool scrub hängt bzw. lässt sich nicht beenden

Crax

New Member
Nov 26, 2019
4
0
1
47
Hallo zusammen,

ich habe in meinem ZFS-Pool einen Fehler und habe daraufhin ein Reparatur per zpool scrub angesetzt.
Das lief auch soweit durch bis (Murphy sei dank) der Strom weg war (sch... Weihnachtsbeleuchtung :)).

Nun sehe ich im zpool status folgendes:

root@proxmox:~# zpool status
pool: ZFS-3TB
state: ONLINE
status: One or more devices has experienced an error resulting in data
corruption. Applications may be affected.
action: Restore the file in question if possible. Otherwise restore the
entire pool from backup.
see: http://zfsonlinux.org/msg/ZFS-8000-8A
scan: scrub in progress since Mon Nov 25 15:14:41 2019
90.2G scanned at 2.01M/s, 0B issued at 0B/s, 987G total
0B repaired, 0.00% done, no estimated completion time
config:

NAME STATE READ WRITE CKSUM
ZFS-3TB ONLINE 0 0 0
mirror-0 ONLINE 0 0 0
sdb ONLINE 0 0 144
sdc ONLINE 0 0 144

errors: 1 data errors, use '-v' for a list


Hier geht es aber auch nicht weiter.
Wenn ich auf der console versuche per "zpool scrub -s ZFS-3TB" den Job zu stoppen, dann
bleibt die Eingabeaufforderung ewig hängen und der job ist in htop "dormant" ohne cpu etc.

Wie bekomme ich den scan gekillt um ihn neu anzusetzen?
Hat da jemand eine Idee?

Vielen Dank

Ingo
 

Alwin

Proxmox Staff Member
Staff member
Aug 1, 2017
3,124
272
88
Waren da mehrere Reboots dazwischen? Was steht den im dmesg?
 

Crax

New Member
Nov 26, 2019
4
0
1
47
Hi,

ich habe mittlerweile auch neu gestartet und nach dem reboot lief der scrub direkt weiter bzw. startete neu.
Erst mit gutem Tempo und nach kurzer Zeit bricht es voll ein.
Aktuell habe ich auch alle virtuellen Maschinen aus.

Aktueller status:

root@proxmox:~# zpool status
pool: ZFS-3TB
state: ONLINE
status: One or more devices has experienced an error resulting in data
corruption. Applications may be affected.
action: Restore the file in question if possible. Otherwise restore the
entire pool from backup.
see: http://zfsonlinux.org/msg/ZFS-8000-8A
scan: scrub in progress since Mon Nov 25 15:14:41 2019
99.9G scanned at 1.91M/s, 8.11G issued at 159K/s, 987G total
40K repaired, 0.82% done, no estimated completion time
config:

NAME STATE READ WRITE CKSUM
ZFS-3TB ONLINE 0 0 0
mirror-0 ONLINE 0 0 0
sdb ONLINE 0 0 146 (repairing)
sdc ONLINE 0 0 147 (repairing)

errors: 1 data errors, use '-v' for a list


Die Ausgabe von dmesg:

siehe dmesg.txt

Das System ist "nur" ein Homesystem wo ich meine gesammelten Einzelrechner unter einen Hut bringen wollte.
Aktuell laufen da iobroker, nas, plex und ein webserver drauf.

Ich hatte jetzt auch schon 3 mal das proxmox einfach stehengeblieben ist.
Das würde ich aber beobachten nachdem die Plattenintegrität wieder da ist.

Vielen Dank schonmal.

Ingo
 

Attachments

Alwin

Proxmox Staff Member
Staff member
Aug 1, 2017
3,124
272
88
Auf welcher pveversions -v ist das System?

[ 155.108589] BUG: unable to handle kernel paging request at ffff917aa1b95d68
[ 155.108631] #PF error: [WRITE]
[ 155.108646] PGD 172801067 P4D 172801067 PUD 0
[ 155.108666] Oops: 0002 [#1] SMP PTI
[ 155.108683] CPU: 3 PID: 27185 Comm: z_rd_int Tainted: P O 5.0.21-5-pve #1
[ 155.108714] Hardware name: To Be Filled By O.E.M. To Be Filled By O.E.M./J5005-ITX, BIOS P1.40 08/06/2018
[ 155.108837] RIP: 0010:zio_add_child+0xc2/0x180 [zfs]
[ 155.108858] Code: d2 48 c1 e0 04 41 80 bc 24 82 00 00 00 00 0f 94 c2 48 01 94 03 48 03 00 00 48 8b 83 50 01 00 00 48 8b 93 58 01 00 00 4c 01 e8 <48> 89 42 08 48 89 10 48 8d 93 58 01 00 00 48 89 50 08 48 89 83 58
[ 155.108925] RSP: 0018:ffffb917ce28fc50 EFLAGS: 00010282
[ 155.108945] RAX: ffff917ae1c434d0 RBX: ffff917a10b95c08 RCX: 00000000001b062e
[ 155.108972] RDX: ffff917aa1b95d60 RSI: 0000000000604200 RDI: ffff917a2969ee50
[ 155.108998] RBP: ffffb917ce28fc80 R08: ffffd917bfd88800 R09: 0000000000000000
[ 155.109024] R10: ffff917a27c041b2 R11: ffff917a27c07bd0 R12: ffff917a2969ea90
[ 155.109050] R13: ffff9179f8c434b0 R14: ffff917a10b95fc8 R15: ffff917a2969ee50
[ 155.109077] FS: 0000000000000000(0000) GS:ffff917a5ff80000(0000) knlGS:0000000000000000
[ 155.109107] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 155.109128] CR2: ffff917aa1b95d68 CR3: 0000000171e0e000 CR4: 0000000000340ee0
[ 155.109154] Call Trace:
[ 155.109239] vdev_queue_io_to_issue+0x54a/0x9f0 [zfs]
[ 155.109310] vdev_queue_io_done+0x1ba/0x250 [zfs]
[ 155.109381] zio_vdev_io_done+0xd3/0x1f0 [zfs]
[ 155.109449] zio_execute+0x99/0xf0 [zfs]
[ 155.109471] taskq_thread+0x2ec/0x4d0 [spl]
[ 155.109491] ? wake_up_q+0x80/0x80
[ 155.109556] ? zio_taskq_member.isra.11.constprop.16+0x70/0x70 [zfs]
[ 155.109581] kthread+0x120/0x140
[ 155.109599] ? task_done+0xb0/0xb0 [spl]
[ 155.109615] ? __kthread_parkme+0x70/0x70
[ 155.109633] ret_from_fork+0x1f/0x40
[ 155.109648] Modules linked in: ebtable_filter ebtables ip_set ip6table_filter ip6_tables iptable_filter bpfilter softdog nfnetlink_log nfnetlink snd_hda_codec_hdmi snd_hda_codec_realtek snd_hda_codec_generic ledtrig_audio intel_rapl intel_telemetry_pltdrv intel_punit_ipc intel_telemetry_core intel_pmc_ipc x86_pkg_temp_thermal intel_powerclamp coretemp kvm_intel crct10dif_pclmul crc32_pclmul ghash_clmulni_intel aesni_intel aes_x86_64 crypto_simd cryptd zfs(PO) glue_helper zunicode(PO) intel_cstate zlua(PO) i915 snd_soc_skl kvmgt snd_soc_hdac_hda snd_hda_ext_core snd_soc_skl_ipc snd_soc_sst_ipc snd_soc_sst_dsp snd_soc_acpi_intel_match snd_soc_acpi vfio_mdev mdev vfio_iommu_type1 snd_soc_core vfio snd_compress intel_rapl_perf ac97_bus snd_pcm_dmaengine kvm irqbypass snd_hda_intel snd_hda_codec drm_kms_helper snd_hda_core pcspkr snd_hwdep drm snd_pcm i2c_algo_bit fb_sys_fops snd_timer syscopyarea sysfillrect sysimgblt snd mei_me soundcore mei processor_thermal_device intel_soc_dts_iosf mac_hid
[ 155.109685] int3403_thermal int3400_thermal int340x_thermal_zone acpi_thermal_rel int3406_thermal dptf_power zcommon(PO) znvpair(PO) zavl(PO) icp(PO) spl(O) vhost_net vhost tap ib_iser rdma_cm iw_cm ib_cm ib_core iscsi_tcp libiscsi_tcp libiscsi scsi_transport_iscsi sunrpc ip_tables x_tables autofs4 btrfs xor zstd_compress raid6_pq dm_thin_pool dm_persistent_data dm_bio_prison dm_bufio libcrc32c r8169 realtek i2c_i801 ahci libahci video pinctrl_geminilake pinctrl_intel
[ 155.110142] CR2: ffff917aa1b95d68
[ 155.110157] ---[ end trace e80675901fd6f84f ]---
[ 155.110227] RIP: 0010:zio_add_child+0xc2/0x180 [zfs]
[ 155.110247] Code: d2 48 c1 e0 04 41 80 bc 24 82 00 00 00 00 0f 94 c2 48 01 94 03 48 03 00 00 48 8b 83 50 01 00 00 48 8b 93 58 01 00 00 4c 01 e8 <48> 89 42 08 48 89 10 48 8d 93 58 01 00 00 48 89 50 08 48 89 83 58
[ 155.110312] RSP: 0018:ffffb917ce28fc50 EFLAGS: 00010282
[ 155.110331] RAX: ffff917ae1c434d0 RBX: ffff917a10b95c08 RCX: 00000000001b062e
[ 155.110357] RDX: ffff917aa1b95d60 RSI: 0000000000604200 RDI: ffff917a2969ee50
[ 155.110383] RBP: ffffb917ce28fc80 R08: ffffd917bfd88800 R09: 0000000000000000
[ 155.110409] R10: ffff917a27c041b2 R11: ffff917a27c07bd0 R12: ffff917a2969ea90
[ 155.110435] R13: ffff9179f8c434b0 R14: ffff917a10b95fc8 R15: ffff917a2969ee50
[ 155.110461] FS: 0000000000000000(0000) GS:ffff917a5ff80000(0000) knlGS:0000000000000000
[ 155.110490] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 155.110512] CR2: ffff917aa1b95d68 CR3: 0000000171e0e000 CR4: 0000000000340ee0
[32665.595728] perf: interrupt took too long (2515 > 2500), lowering kernel.perf_event_max_sample_rate to 79500
[45434.668453] perf: interrupt took too long (3151 > 3143), lowering kernel.perf_event_max_sample_rate to 63250
Das ZFS scheint hier wirklich zu sterben, daher auch der langsame Scrub.
 

Crax

New Member
Nov 26, 2019
4
0
1
47
Schönmal vielen Dank.

hier die Ausgabe von pveversion -v:

root@proxmox:~# pveversions -v
-bash: pveversions: command not found
root@proxmox:~# pveversion -v
proxmox-ve: 6.0-2 (running kernel: 5.0.21-5-pve)
pve-manager: 6.0-11 (running version: 6.0-11/2140ef37)
pve-kernel-helper: 6.0-12
pve-kernel-5.0: 6.0-11
pve-kernel-5.0.21-5-pve: 5.0.21-10
pve-kernel-5.0.21-2-pve: 5.0.21-7
pve-kernel-5.0.15-1-pve: 5.0.15-1
ceph-fuse: 12.2.11+dfsg1-2.1+b1
corosync: 3.0.2-pve4
criu: 3.11-3
glusterfs-client: 5.5-3
ksm-control-daemon: 1.3-1
libjs-extjs: 6.0.1-10
libknet1: 1.13-pve1
libpve-access-control: 6.0-3
libpve-apiclient-perl: 3.0-2
libpve-common-perl: 6.0-7
libpve-guest-common-perl: 3.0-2
libpve-http-server-perl: 3.0-3
libpve-storage-perl: 6.0-9
libqb0: 1.0.5-1
lvm2: 2.03.02-pve3
lxc-pve: 3.2.1-1
lxcfs: 3.0.3-pve60
novnc-pve: 1.1.0-1
proxmox-mini-journalreader: 1.1-1
proxmox-widget-toolkit: 2.0-8
pve-cluster: 6.0-7
pve-container: 3.0-10
pve-docs: 6.0-8
pve-edk2-firmware: 2.20190614-1
pve-firewall: 4.0-7
pve-firmware: 3.0-4
pve-ha-manager: 3.0-3
pve-i18n: 2.0-3
pve-qemu-kvm: 4.0.1-5
pve-xtermjs: 3.13.2-1
qemu-server: 6.0-13
smartmontools: 7.0-pve2
spiceterm: 3.1-1
vncterm: 1.6-1
zfsutils-linux: 0.8.2-pve2
 

Alwin

Proxmox Staff Member
Staff member
Aug 1, 2017
3,124
272
88
Scheint was mit der Hardware zu sein. RAM und Platten testen. Sowie BIOS updaten. Am Ende wird wohl nur ein Backup helfen. :/
 

LnxBil

Famous Member
Feb 21, 2015
4,434
442
103
Germany
NAME STATE READ WRITE CKSUM
ZFS-3TB ONLINE 0 0 0
mirror-0 ONLINE 0 0 0
sdb ONLINE 0 0 146 (repairing)
sdc ONLINE 0 0 147 (repairing)
Das sieht echt nicht gut aus, da er auf beiden Disks reparieren muss und er hat nur 2.

ich habe in meinem ZFS-Pool einen Fehler und habe daraufhin ein Reparatur per zpool scrub angesetzt.
Also scrub ist keine Reparatur. ZFS repariert sich automatisch selbst und wenn es das nicht mehr kann muss man ein Backup des betroffenen Datasets einspielen. Ein Scrub liest alle Daten um zu schauen ob sie korrekt gelesen werden können und falls dann ein Fehler auftaucht wird dieser durch die Selbstheilung korrigiert beim Lesen. Der periodisch ausgeführt scrub-Lauf ist dafür da die silent data corruption zu erkennen und zu heilen und das ist auch bitter notwendig, denn Fehler gibt es immer. Das sieht dann so aus:

Code:
root@proxmox /zpool/virtual_machines > zpool status
  pool: zpool
 state: ONLINE
  scan: scrub repaired 28K in 122h32m with 0 errors on Fri Apr 19 02:56:02 2019
 

Crax

New Member
Nov 26, 2019
4
0
1
47
Hallo zusammen,

Danke für die Hilfe, aber mein System ist komplett gestorben.
Ich konnte zum Glück noch ein paar nicht gesicherte Daten retten, somit halb so schlimm.

Ich habe das System nun neu aufgesetzt ohne ZFS-Spiegel.
Für meinen Heimbereich reicht es wenn ich regelmäßig Backups ziehe bzw. rsync nutze.
ZFS hat zwar tolle Features, aber eigentlich brauche ich die nicht zwingend.
Vielleicht gebe ich ZFS irgendwann ja nochmal eine Chance - aktuell habe ich aber die Nase voll.

Mal sehen wie es nun läuft :)

Munter

Ingo
 

LnxBil

Famous Member
Feb 21, 2015
4,434
442
103
Germany
Vielleicht gebe ich ZFS irgendwann ja nochmal eine Chance - aktuell habe ich aber die Nase voll.
Ich glaube nicht, dass ZFS daran Schuld ist, wenn es nicht korrekt von deinen Platten lesen kann - das Problem wirst du bei jedem Dateisystem haben, nur ZFS merkt es wenigstens selbst. Ich kann aber verstehen, dass du da jetzt ein mulmiges Gefühl hast.
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE 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!