Переходим к еще более тяжелому вооружению...
$ sudo btrfs rescue chunk-recover /dev/loop0
Scanning: DONE in dev0
open with broken chunk error
Chunk tree recovery failed
Облом
$ sudo btrfs rescue super-recover /dev/loop0
All supers are valid, no need to recover
Типа и так все хорошо. Ну оно и естественно ибо суперблок - он на каждом девайсе свой создается.
$ sudo btrfs rescue zero-log /dev/loop0
warning, device 2 is missing
warning devid 2 not found already
Clearing log on /dev/loop0, previous log_root 0, level 0
Unable to find block group for 0
extent-tree.c:289: find_search_start: Assertion `1` failed.
btrfs[0x438110]
btrfs(btrfs_reserve_extent+0x70b)[0x43c31e]
btrfs(btrfs_alloc_free_block+0x63)[0x43c5ae]
btrfs(__btrfs_cow_block+0x100)[0x430792]
btrfs(btrfs_cow_block+0x93)[0x430d3b]
btrfs[0x434cc4]
btrfs(btrfs_commit_transaction+0xb5)[0x436519]
btrfs[0x42950c]
btrfs(main+0x139)[0x40ec30]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf0)[0x7fb93ddab830]
btrfs(_start+0x29)[0x40ec69]
Обна - тут пожоже btrfs вообще в осадок выпала
Пробуем btrfs restore (т.е. уже самое мощное, что есть) пробую перезаписать файлы игнорируя ошибки:
$ sudo btrfs restore -oi /dev/loop0 .
warning, device 2 is missing
warning devid 2 not found already
Exhausted mirrors trying to read
Error copying data for ./VID_20140921_194528.3gp
Exhausted mirrors trying to read
Error copying data for ./VID_20160102_131639.3gp
Exhausted mirrors trying to read
Error copying data for ./VID_20160229_214007.3gp
Exhausted mirrors trying to read
Error copying data for ./VID_20160320_120347.3gp
... что-то вроде сделалось, но монтирование опять возможно только с degraded и RO
Зато тут нам четко показали каким файлам полный кирдык.
... пока мысли кончились: что еще можно сделать...
Собственно спасти файлы (они же доступны в РО режиме) и пересоздать файловую систему - это конечно решение.
Но вот починить - пока не удается...