-------- Original Message --------
Subject: Re: read block failed check_tree_block / Couldn't read chunk tree
From: Rene Thomas <re.tho...@gmx.de>
To: Qu Wenruo <quwen...@cn.fujitsu.com>, <linux-btrfs@vger.kernel.org>
Date: 2014年10月28日 14:59
Yes, removed sdb as well. Got the same error.
You are right. I miss to add the btrfs ml when I reply. Thanks.
I'am looking forward to hearing from you.
Thanks
René
Oh, that's bad...
Also investigate the full output of chunk-recover.
The results is worse that I first think.
1. Missing chunk item in RAID5
Which caused so many orphan dev extents and orphan block groups.
This is especially bad when it comes to RAID0/RAID5 where the stripe
sequence matters.
That's to say, there are at least 499 chunks unable to recover.
(In RAID1, it could be recovered)
Also, chunk-recover current won't continue if there are so many orphans.
In your case, 1300+ valid chunk vs 500- unrecoverable orphan chunks,
The chance is very low now.
2. Low amount of rebuildable chunks.
The 77 bad chunks seems god, except the first bad chunk, who has no
corresponding dev extent nor
block group.
Other 76 chunks are rebuildable, but 1316 + 76 won't change much against
499 unrecoverable chunks.
So overall, it is almost impossible to recover.
I'm very sorry that I can't provide much help.
Thanks,
Qu
2014-10-27 9:20 GMT+01:00 Qu Wenruo <quwen...@cn.fujitsu.com
<mailto:quwen...@cn.fujitsu.com>>:
-------- Original Message --------
Subject: Re: read block failed check_tree_block / Couldn't read
chunk tree
From: Rene Thomas <re.tho...@gmx.de <mailto:re.tho...@gmx.de>>
To: Qu Wenruo <quwen...@cn.fujitsu.com
<mailto:quwen...@cn.fujitsu.com>>
Date: 2014年10月27日 15:30
Tried to mount the not affected drives in several ways. Always
get:
sudo mount -t btrfs -o degraded /dev/sda1 /home
[sudo] password for rthomas:
mount: Falscher Dateisystemtyp, ungültige Optionen, der
Superblock von /dev/sda1 ist beschädigt, fehlende
Kodierungsseite oder ein anderer Fehler
Manchmal liefert das Systemprotokoll wertvolle Informationen,
versuchen Sie »dmesg | tail« oder so
Even plug off the /dev/sdb?
If even remove the /dev/sdb hardware, it still reproduce the same
thing,
I think there is little chance.
And dmesg shows:
[ 311.335674] BTRFS: bad tree block start 0 5845480062976
[ 311.336215] BTRFS: bad tree block start 0 5845480062976
[ 311.354660] BTRFS: bad tree block start 0 5845480054784
[ 311.354762] BTRFS: bad tree block start 0 5845480054784
[ 311.355024] BTRFS: bad tree block start 0 5845480067072
[ 311.355145] BTRFS: bad tree block start 0 5845480067072
[ 311.355496] BTRFS: bad tree block start 0 5845480050688
[ 311.355612] BTRFS: bad tree block start 0 5845480050688
[ 311.356347] BTRFS: bad tree block start 0 5845480071168
[ 311.356458] BTRFS: bad tree block start 0 5845480071168
[ 311.580203] BTRFS: Failed to read block groups: -5
[ 311.605073] BTRFS: open_ctree failed
Tried all non-destructive ways to get data back.
Please find attached btrfs rescue chunk-recover log
http://sebsauvage.net/paste/?baa6fa7fbb2056cb#RTUGry3LQlmVghpjiMkRRGsxpwzDzoWOsmjO0elHF5c=
Thanks for the log,
I'll investigate it.
uname -a:
Linux engelserver 3.17.0-031700rc5-generic #201409151105 SMP
Mon Sep 15 15:08:10 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
btrfs --version:
3.17
I'am happy to help to improve tool quality / functionality.
Maybe it's interisting why mkfs.ntfs have such an impact on a
btrfs RAID5 array. In my opinion mkfs should not touch a
mounted device even when it's part of a raid and not explicit
mentioned in the fstab as the drive to be mounted.
Yes, mkfs should never touch a mounted device.
However, not every fs utils handles it in the right way.
In my test, ext4/btrfs/xfs can detect it and fail to mkfs, but
ntfs utils seems not to handle it right.
That caused the tragedy and btrfs-progs can't help but only to see
it happens.
BTW, would you mind Cc the mail to btrfs ml?
More people may provide help.
Thanks,
Qu
If there is a way get more information on the mount process /
chunk-recover,(e.g. enhanced log level) please advice.
Thanks
René
2014-10-27 3:29 GMT+01:00 Qu Wenruo <quwen...@cn.fujitsu.com
<mailto:quwen...@cn.fujitsu.com>
<mailto:quwen...@cn.fujitsu.com
<mailto:quwen...@cn.fujitsu.com>>>:
-------- Original Message --------
Subject: read block failed check_tree_block / Couldn't
read chunk tree
From: Rene Thomas <re.tho...@gmx.de
<mailto:re.tho...@gmx.de> <mailto:re.tho...@gmx.de
<mailto:re.tho...@gmx.de>>>
To: <linux-btrfs@vger.kernel.org
<mailto:linux-btrfs@vger.kernel.org>
<mailto:linux-btrfs@vger.kernel.org
<mailto:linux-btrfs@vger.kernel.org>>>
Date: 2014年10月25日 00:43
Dear Developers / Maintainer,
I’ve set up a running RAID5 with three devices (sda1 /
sdb1 /sdc1)
Mountpoint was /home, filesystem was mounted
A chain of unfortunal circumstances gives me the
chance to run
as root
in a terminal.
mkfs.ntfs /dev/sdb1
where /dev/sdb1 is device 1 in the Array.
After a while I’ve realised that the terminal I used
was the
wrong one
and killed the process where the progress still was 0%.
The filesystem was still in a readable state switched
to read
only.
Write access was not able.
After a restart the RAID failed to mount.
Tried several steps to reactivate the Array.
All btrfs commands leads to:
Check tree block failed, want=5845480062976, have=0
Check tree block failed, want=5845480062976, have=0
Check tree block failed, want=5845480062976, have=65536
Check tree block failed, want=5845480062976, have=0
Check tree block failed, want=5845480062976, have=0
read block failed check_tree_block
Couldn't read chunk tree
Chunk tree corruption will always lead to disaster :(
What about remove sdb1 and mount sda1/sdc1 with -o degraded ?
I hope the sda1/sdc1 is still in correct status...
Started with:
btrfs fi show
mount -o revovery,ro /dev/sdc1 /home
failed with error (see dmesg log at [311])
btrfs-image -c 9 -t 8 /dev/sdb1
/media/storageplace/fs_image
btrfs-zero-log /dev/sdb1
btrfs check /dev/sdb1
btrfs check --repair /dev/sdb1
At least I tried
btrfs rescue chunk-recover /dev/sdb1
Works for several hours on the arry and end up in
(huge log
available > 100k):
“Fail to recover the chunk tree.”
If my previous defraded doesn't help, chunk-recover is the
last
chance for it.
If still failed, the chance to recover seems quite low.
However, can you upload the huge log for developers to
investigate
and improve the chunk-recover tools?
Thanks,
Qu
I’ve checked the super block there are no errors
My question is there any chance on a broken c tree to
get the data
back? Not necessarily fix the Array only get the data.
Thanks in advanced
# uname -a
Linux engelserver 3.17.0-031700rc5-generic
#201409151105 SMP
Mon Sep
15 15:08:10 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
# btrfs --version
Btrfs v3.17
# btrfs fi show
Label: 'mythstorage' uuid:
9b454272-6800-4b3c-b196-9e180407a6cb
Total devices 1 FS bytes used 2.36MiB
devid 1 size 931.51GiB used 10.04GiB path
/dev/sdd1
Check tree block failed, want=5845480062976, have=0
Check tree block failed, want=5845480062976, have=0
Check tree block failed, want=5845480062976, have=65536
Check tree block failed, want=5845480062976, have=0
Check tree block failed, want=5845480062976, have=0
read block failed check_tree_block
Couldn't read chunk tree
Label: none uuid: 8ef575d9-2465-479c-bf9c-067e2e417770
Total devices 3 FS bytes used 3.02TiB
devid 1 size 2.73TiB used 1.77TiB path
/dev/sdb1
devid 2 size 2.73TiB used 1.77TiB path
/dev/sda1
devid 3 size 2.73TiB used 1.77TiB path
/dev/sdc1
Btrfs v3.17
dmesg:
[ 280.637338] init: plymouth-upstart-bridge main process
ended, respawning
[ 311.298682] BTRFS info (device sdc1): disk space
caching is
enabled
[ 311.335674] BTRFS: bad tree block start 0 5845480062976
[ 311.336215] BTRFS: bad tree block start 0 5845480062976
[ 311.354660] BTRFS: bad tree block start 0 5845480054784
[ 311.354762] BTRFS: bad tree block start 0 5845480054784
[ 311.355024] BTRFS: bad tree block start 0 5845480067072
[ 311.355145] BTRFS: bad tree block start 0 5845480067072
[ 311.355496] BTRFS: bad tree block start 0 5845480050688
[ 311.355612] BTRFS: bad tree block start 0 5845480050688
[ 311.356347] BTRFS: bad tree block start 0 5845480071168
[ 311.356458] BTRFS: bad tree block start 0 5845480071168
[ 311.580203] BTRFS: Failed to read block groups: -5
[ 311.605073] BTRFS: open_ctree failed
René
--
To unsubscribe from this list: send the line "unsubscribe
linux-btrfs" in
the body of a message to majord...@vger.kernel.org
<mailto:majord...@vger.kernel.org>
<mailto:majord...@vger.kernel.org
<mailto:majord...@vger.kernel.org>>
More majordomo info at
http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html