バランシング後、Btrfs ファイルシステムは使用できません。

バランシング後、Btrfs ファイルシステムは使用できません。

私はDebian 10 Buster(テスト)カーネルバージョンを実行しているコンピュータを持っています:

Linux (none) 4.14.0-3-amd64 #1 SMP Debian 4.14.13-1 (2018-01-14) x86_64 GNU/Linux

ルートファイルシステムは、単一のデバイスを備えたBtrfsです。

最近、ファイルシステムの不均衡の問題が発生し、以下の手順を実行しました。マークのブログバランスを再調整してください。私のシステムがいっぱいで、「ファイルシステムがいっぱいでバランスを実行できませんでした」以下の手順に従う必要がありました。これには、3GBのファイルを作成し、ddそれをbtrfsファイルシステムにループデバイスとして追加することが含まれていました。これにより、正常に平衡を達成できます。

ところで、再起動する前にループデバイスを削除するのを忘れていました。再起動後、次のエラーで initramfs プロンプトが表示されます。

BTRFS error: failed to read chunk tree: -5
BTRFS error: open_ctree failed 

これはbtrfs filesystem show

bytenr mismatch, want=167954300928
Label: none uuid: <uuid>
             Total devices 2 FS bytes used 91.58GiB
             devid      1 size 151.03GiB used 111.04GiB path /path/to/device
             *** Some devices missing

btrfs check返品:

bytenr mismatch, want=167954300928, have=0

欠落しているループバックデバイスを削除するためにファイルシステムを部分的にマウントしようとすると、mount -o degraded,ro /path/to/device /mnt次のものが返されます。

BTRFS error: failed to read block groups: -5
BTRFS error: open_ctree failed

唯一の他の情報は、dmesgID 2のデバイスが欠落していると文句を言うことです。

実行btrfs rescue chunk-recover結果:

Scanning: DONE in dev0
open with broken chunk error
Chunk tree recovery failed

ファイルシステムから復元しようとすると、次のようなbtrfs restore /path/to/device /mnt結果が発生します。

bytenr mismatch, want=167954300928, have 0
Could not open root, trying backup super
bytenr mismatch, want=167954300928, have 0
Could not open root, trying backup super
ERROR: superblock bytenr 274877906944 is larger than device size 162164375552
Could not open root, trying backup super

状況のようです似たような到着このフォーラムの投稿、新しいデバイスが短時間追加されたが削除されますが、状況はまったく同じではありません。

私の質問は次のとおりです

  1. システムを現在の状態に復元するためにどのような措置を講じることができますか?
  2. できない場合は、いくつかのファイルをどのように回復できますか?

システムの大部分はバックアップされますが、一部の重要なファイルは毎日のバックアップサイクルの間に作成され、そのファイルを復元できないと失われます。

関連情報