Re: Recover from "couldn't read tree root"?
From: Chris Murphy <hidden>
Date: 2021-06-20 21:09:58
On Sun, Jun 20, 2021 at 2:38 PM Nathan Dehnel [off-list ref] wrote:
A machine failed to boot, so I tried to mount its root partition from systemrescuecd, which failed: [ 5404.240019] BTRFS info (device bcache3): disk space caching is enabled [ 5404.240022] BTRFS info (device bcache3): has skinny extents [ 5404.243195] BTRFS error (device bcache3): parent transid verify failed on 3004631449600 wanted 1420882 found 1420435 [ 5404.243279] BTRFS error (device bcache3): parent transid verify failed on 3004631449600 wanted 1420882 found 1420435 [ 5404.243362] BTRFS error (device bcache3): parent transid verify failed on 3004631449600 wanted 1420882 found 1420435 [ 5404.243432] BTRFS error (device bcache3): parent transid verify failed on 3004631449600 wanted 1420882 found 1420435 [ 5404.243435] BTRFS warning (device bcache3): couldn't read tree root [ 5404.244114] BTRFS error (device bcache3): open_ctree failed btrfs rescue super-recover -v /dev/bcache0 returned this: parent transid verify failed on 3004631449600 wanted 1420882 found 1420435 parent transid verify failed on 3004631449600 wanted 1420882 found 1420435 parent transid verify failed on 3004631449600 wanted 1420882 found 1420435 parent transid verify failed on 3004631449600 wanted 1420882 found 1420435 parent transid verify failed on 3004631449600 wanted 1420882 found 1420435 Ignoring transid failure ERROR: could not setup extent tree Failed to recover bad superblocks uname -a: Linux sysrescue 5.10.34-1-lts #1 SMP Sun, 02 May 2021 12:41:09 +0000 x86_64 GNU/Linux btrfs --version: btrfs-progs v5.10.1 btrfs fi show: Label: none uuid: 76189222-b60d-4402-a7ff-141f057e8574 Total devices 10 FS bytes used 1.50TiB devid 1 size 931.51GiB used 311.03GiB path /dev/bcache3 devid 2 size 931.51GiB used 311.00GiB path /dev/bcache2 devid 3 size 931.51GiB used 311.00GiB path /dev/bcache1 devid 4 size 931.51GiB used 311.00GiB path /dev/bcache0 devid 5 size 931.51GiB used 311.00GiB path /dev/bcache4 devid 6 size 931.51GiB used 311.00GiB path /dev/bcache8 devid 7 size 931.51GiB used 311.00GiB path /dev/bcache6 devid 8 size 931.51GiB used 311.03GiB path /dev/bcache9 devid 9 size 931.51GiB used 311.03GiB path /dev/bcache7 devid 10 size 931.51GiB used 311.03GiB path /dev/bcache5 Is this filesystem recoverable?quoted
(Sorry, re-sending because I forgot to add a subject)
Definitely don't write any irreversible changes, such as a repair attempt, to anything until you understand what what wrong or it'll make recovery harder or impossible. Was bcache in write back or write through mode? What's the configuration? Can you supply something like lsblk -o NAME,FSTYPE,SIZE,FSUSE%,MOUNTPOINT,UUID,MIN-IO,SCHED,DISC-GRAN,MODEL -- Chris Murphy