2019-04-05 02:47, Qu Wenruo:


On 2019/4/4 下午11:27, Nik. wrote:


2019-04-03 03:04, Qu Wenruo:


[snip]
...

In your case, you just need latest btrfs-progs and re-run "btrfs check
--readonly" on it.

Will try this, but have no time before tomorrow evening.


If it just shows the same result, meaning I can't get the info about
which tree block is corrupted, then you could try to mount it with
-o ro
using *LATEST* kernel.

I tried this before with the 4.15.0-46 kernel, it was impossible. Will
try again with newer one as soon as possible (in best case tomorrow
evening); I will post the results.

Sorry for the delay, compiling the btrfs-progs took much more time than
expected (had to install new packages again and again). Finally had to
give up the conversion ("make" could not find reiserfs/misc.h, although
both libreiserfscore and reiser4fs are installed).
Output of the commands:
# uname -r
5.0.6-050006-generic
#btrfs --version
btrfs-progs v4.20.2
# btrfs check --readonly /dev/md0
Opening filesystem to check...
incorrect offsets 15003 146075
ERROR: cannot open file system

It seems that I will wait until 5.2 is out...
(the answer to Jeff Mahoney is coming with separate e-mail!)

OK, then you can try mount it with 5.0 with -o ro.

# mount -t btrfs -o ro /dev/md0 /mnt/md0/
mount: /mnt/md0: wrong fs type, bad option, bad superblock on /dev/md0, missing codepage or helper program, or other error.

The objective is not to make it work, but to get the dmesg, which should

# dmesg|tail
[65283.442278] audit: type=1107 audit(1554438151.396:115): pid=1 uid=0 auid=4294967295 ses=4294967295 subj=kernel msg='Unknown class service exe="/lib/systemd/systemd" sauid=0 hostname=? addr=? terminal=?' [72504.975359] audit: type=1107 audit(1554445372.928:116): pid=1 uid=0 auid=4294967295 ses=4294967295 subj=kernel msg='Unknown class service exe="/lib/systemd/systemd" sauid=0 hostname=? addr=? terminal=?' [72535.214394] audit: type=1107 audit(1554445403.166:117): pid=1 uid=0 auid=4294967295 ses=4294967295 subj=kernel msg='Unknown class service exe="/lib/systemd/systemd" sauid=0 hostname=? addr=? terminal=?' [72535.257571] audit: type=1107 audit(1554445403.210:118): pid=1 uid=0 auid=4294967295 ses=4294967295 subj=kernel msg='Unknown class system exe="/lib/systemd/systemd" sauid=0 hostname=? addr=? terminal=?'
[73427.486853] BTRFS info (device md0): disk space caching is enabled
[73427.938260] BTRFS info (device md0): bdev /dev/md0 errs: wr 0, rd 0, flush 0, corrupt 2181, gen 0 [73429.172707] BTRFS critical (device md0): corrupt leaf: root=2 block=1894009225216 slot=30, unexpected item end, have 146075 expect 15003 [73429.176628] BTRFS critical (device md0): corrupt leaf: root=2 block=1894009225216 slot=30, unexpected item end, have 146075 expect 15003
[73429.177153] BTRFS error (device md0): failed to read block groups: -5
[73429.197019] BTRFS error (device md0): open_ctree failed


contain the tree block bytenr, so that we can try to fix that offending
tree block manually.

Thanks,
Qu

Should I try something alse?
Thank you!
Nik.
--


Latest kernel will report anything wrong pretty vocally, in that case,
dmesg would include the bytenr of corrupted tree block.

Then I could craft needed commands to further debug the fs.

Ok, I will try to post more info tomorrow about this time.

Nik.
--

Thanks,
Qu


Thank you for trying to improve btrfs!

Nik.

Thanks,
Qu

You are not from the 007 - lab, are you? ;-)


Kind regards,

Nik.




Reply via email to