On 2018/9/3 下午10:18, Etienne Champetier wrote: > Hello btfrs hackers, > > I have a computer acting as backup server with BTRFS RAID1, and I > would like to know the different options to rebuild this RAID > (I saw this thread > https://www.spinics.net/lists/linux-btrfs/msg68679.html but there was > no raid 1) > > # uname -a > Linux servmaison 4.4.0-134-generic #160-Ubuntu SMP Wed Aug 15 14:58:00 > UTC 2018 x86_64 x86_64 x86_64 GNU/Linux > > # btrfs --version > btrfs-progs v4.4 > > # dmesg > ... > [ 1955.581972] BTRFS critical (device sda2): corrupt leaf, bad key > order: block=6020235362304,root=1, slot=63 > [ 1955.582299] BTRFS critical (device sda2): corrupt leaf, bad key > order: block=6020235362304,root=1, slot=63 Please provide the following dump: # btrfs inspect dump-tree -t root /dev/sda2 # btrfs inspect dump-tree -b 6020235362304 /dev/sda2 The first one is to inspect current root tree to find any corruption. The second one is to show that corrupted tree block, and compare with first output to make sure if it's already in the committed tree. And the critical error message already shows what's causing the bug, your root tree is corrupted, some keys are not in correct order. All the following errors could be caused by this problem. [snip] > > # btrfs fi show / > Label: none uuid: 4917db5e-fc20-4369-9556-83082a32d4cd > Total devices 2 FS bytes used 2.25TiB > devid 1 size 3.64TiB used 2.34TiB path /dev/sda2 > devid 2 size 3.64TiB used 2.34TiB path /dev/sdb2 > > # btrfs device stats / > [/dev/sda2].write_io_errs 0 > [/dev/sda2].read_io_errs 0 > [/dev/sda2].flush_io_errs 0 > [/dev/sda2].corruption_errs 0 > [/dev/sda2].generation_errs 0 > [/dev/sdb2].write_io_errs 0 > [/dev/sdb2].read_io_errs 0 > [/dev/sdb2].flush_io_errs 0 > [/dev/sdb2].corruption_errs 0 > [/dev/sdb2].generation_errs 0 > > device stats report no errors :( > > # btrfs fi df / > Data, RAID1: total=2.32TiB, used=2.23TiB > System, RAID1: total=96.00MiB, used=368.00KiB > Metadata, RAID1: total=22.00GiB, used=19.12GiB > GlobalReserve, single: total=512.00MiB, used=0.00B > > # btrfs scrub status / > scrub status for 4917db5e-fc20-4369-9556-83082a32d4cd > scrub started at Mon Sep 3 05:32:52 2018, interrupted after > 00:27:35, not running > total bytes scrubbed: 514.05GiB with 0 errors > > I've already tried 2 times to run btrfs scrub (after reboot), but it > stops before the end, with the previous dmesg error > > My question is what is the safest way to rebuild this BTRFS RAID1? It depends on the inspect dump-tree output. > I haven't tried "btrfs check --repair" yet We need "btrfs check --readonly" output to verify if the bad key order is the only problem. If it's the only problem, "btrfs check --repair" indeed could fix it. Thanks, Qu > (I can boot on a more up to date Linux live if it helps) > > Thanks > Etienne >
Attachment:
signature.asc
Description: OpenPGP digital signature
