On 2019/12/7 下午9:03, Christian Wimmer wrote: > Sorry for the repeated post, I am trying to pass the mail server... > > Hi Qui, > > I tried what you said and I got at least some very small files out of the device! > > Yes, I have sub volumes/snapshots. > > There should be a subvolume called “projects” which I am interested in. > Inside this subvolume should be lots of snapshots. > > Any chance to recover one of them? > > Here the output of the restore command that you suggested: > > # ./btrfs restore -l /dev/sdb1 > checksum verify failed on 5349895454720 found 000000A8 wanted 00000000 > checksum verify failed on 5349895454720 found 000000A8 wanted 00000000 > checksum verify failed on 5349895454720 found 000000A8 wanted 00000000 > bad tree block 5349895454720, bytenr mismatch, want=5349895454720, have=14275350892879035392 > WARNING: could not setup device tree, skipping it > tree key (EXTENT_TREE ROOT_ITEM 0) 641515520 level 2 > tree key (DEV_TREE ROOT_ITEM 0) 5349895454720 level 1 > tree key (FS_TREE ROOT_ITEM 0) 653901824 level 1 > tree key (CSUM_TREE ROOT_ITEM 0) 658161664 level 3 > tree key (UUID_TREE ROOT_ITEM 0) 657014784 level 0 > tree key (315 ROOT_ITEM 0) 637386752 level 1 > checksum verify failed on 3542131507200 found 0000008C wanted 00000000 > checksum verify failed on 3542131507200 found 000000F5 wanted 00000000 > checksum verify failed on 3542131507200 found 0000008C wanted 00000000 > bad tree block 3542131507200, bytenr mismatch, want=3542131507200, have=14275350892879035392 > > And I tried: > > # ./btrfs restore -r 315 -v -D /dev/sdb1 test/ > checksum verify failed on 5349895454720 found 000000A8 wanted 00000000 > checksum verify failed on 5349895454720 found 000000A8 wanted 00000000 > checksum verify failed on 5349895454720 found 000000A8 wanted 00000000 > bad tree block 5349895454720, bytenr mismatch, want=5349895454720, have=14275350892879035392 > WARNING: could not setup device tree, skipping it > This is a dry-run, no files are going to be restored > Restoring test/1 > Skipping snapshot snapshot > Skipping existing file test/1/info.xml > If you wish to overwrite use -o > Done searching /1 > Restoring test/4 > Skipping snapshot snapshot > Skipping existing file test/4/info.xml > Done searching /4 > Restoring test/28 > Skipping snapshot snapshot > Skipping existing file test/28/info.xml > Done searching /28 > Restoring test/52 > checksum verify failed on 3305202188288 found 0000009E wanted FFFFFFA9 > checksum verify failed on 3305202188288 found 000000FA wanted 00000000 > checksum verify failed on 3305202188288 found 0000009E wanted FFFFFFA9 > bad tree block 3305202188288, bytenr mismatch, want=3305202188288, have=18446556327804403584 > Error reading subvolume test/52/snapshot: 18446744073709551611 > Error searching test/52/snapshot > > > Well, I got the very small files info.xml. > How can I get the rest? Any ideas? I'm afraid there are too many corruptions in your filesystem. From root tree to fs tree, all had corruptions. Thus really hard to get recovered. Just curious, how this happened? Btrfs itself shouldn't cause so many random corruptions. Looks more like a hardware problem or random wipe. Thanks, Qu > > Thanks a lot for your help, > > > > Chris > > >