例外が回復された後でもbtrfsを引き続き使用できますか?

例外が回復された後でもbtrfsを引き続き使用できますか?

USB HDDに破損した(マウントできない)btrfsパーティションがあります。この問題には、ここで説明したのと同じエラーメッセージがあります。 https://bbs.archlinux.org/viewtopic.php?id=182505

dmesgの出力は次のとおりです。

[   54.371041] BTRFS: device label BackupMobile devid 1 transid 1420 /dev/dm-3
[   54.384764] BTRFS info (device dm-3): disk space caching is enabled
[   54.384767] BTRFS: has skinny extents
[   54.425187] BTRFS error (device dm-3): bad tree block start 15489378549331356982 932187635712
[   54.431990] BTRFS error (device dm-3): bad tree block start 15489378549331356982 932187635712
[   54.432025] BTRFS: failed to read tree root on dm-3
[   54.449061] BTRFS: open_ctree failed
[  199.271168] BTRFS info (device dm-3): enabling auto recovery
[  199.271174] BTRFS info (device dm-3): disabling disk space caching
[  199.271178] BTRFS: has skinny extents
[  199.278451] BTRFS error (device dm-3): bad tree block start 15489378549331356982 932187635712
[  199.279109] BTRFS error (device dm-3): bad tree block start 15489378549331356982 932187635712
[  199.279119] BTRFS: failed to read tree root on dm-3
[  199.279762] BTRFS error (device dm-3): bad tree block start 15489378549331356982 932187635712
[  199.280509] BTRFS error (device dm-3): bad tree block start 15489378549331356982 932187635712
[  199.280518] BTRFS: failed to read tree root on dm-3
[  208.294771] BTRFS: checking UUID tree

スマートテストに成功しました。

最後に、以下を使用してインストールの問題を解決しました。btrfs-zeroログ。その後、ボリュームを再マウントできます。

1日後にも同じ問題が発生しました(インストールできず、同様のエラーメッセージが表示され、ログにスタックトレースまで表示されます)。

今回は、回復オプションでパーティションをマウントすると、問題が「解決」されたようです。-o 復元。これで、データに再度アクセスでき、さらにディスクに書き込むことができます(作成/保存されたデータの整合性を確認しませんでしたが)。 Linuxは文句を言わず、dmesgログは次のようになります。

[32382.410416] BTRFS info (device dm-6): disk space caching is enabled
[32382.410420] BTRFS: has skinny extents

(nautilus / GNOMEを介して)問題なくドライブを複数回マウントできます。

このパーティションを保存して引き続き使用しますか?スナップショットを維持したいです。それ以外の場合は再フォーマットしました。それでもスマートテストに合格しましたが、これはハードウェアエラーではなく、btrfsが責任があるとどうやって確信できますか?

現在のプラグインとUSB HDDマウントの完全なdmesgログ:

[32376.048700] usb 3-4: new high-speed USB device number 9 using xhci_hcd
[32376.177756] usb 3-4: New USB device found, idVendor=152d, idProduct=0539
[32376.177770] usb 3-4: New USB device strings: Mfr=10, Product=11, SerialNumber=5
[32376.177773] usb 3-4: Product: USB3.0 to SATA Bridge
[32376.177775] usb 3-4: Manufacturer: JMicron
[32376.177777] usb 3-4: SerialNumber: XXXXXXXXXXXX
[32376.178348] usb-storage 3-4:1.0: USB Mass Storage device detected
[32376.178434] usb-storage 3-4:1.0: Quirks match for vid 152d pid 0539: 4000000
[32376.178462] scsi host16: usb-storage 3-4:1.0
[32377.688528] scsi 16:0:0:0: Direct-Access     ST2000LM 015-2E8174       0000 PQ: 0 ANSI: 2 CCS
[32377.689259] sd 16:0:0:0: Attached scsi generic sg2 type 0
[32377.699007] sd 16:0:0:0: [sdc] 3907029168 512-byte logical blocks: (2.00 TB/1.82 TiB)
[32377.699386] sd 16:0:0:0: [sdc] Write Protect is off
[32377.699390] sd 16:0:0:0: [sdc] Mode Sense: 28 00 00 00
[32377.699661] sd 16:0:0:0: [sdc] No Caching mode page found
[32377.699664] sd 16:0:0:0: [sdc] Assuming drive cache: write through
[32377.717199]  sdc: sdc1
[32377.729514] sd 16:0:0:0: [sdc] Attached SCSI disk
[32382.410416] BTRFS info (device dm-6): disk space caching is enabled
[32382.410420] BTRFS: has skinny extents

編集する:

Shikiが指摘したように、btrfsの世界でbtrfsスクラブのように見える「表面スキャン」を行いました。 btrfsクリーンアップログには、72688 read_errorsと72688 un Correctable_errorsが表示されます。良くないようです。別のbtrfsドライブを確認しましたが、そのドライブのクリーンログにエラーがまったく含まれていませんでした。

完全なログ:

scrub status:1
dc484331-2fb1-49a7-8960-38d0b603bd9f:1
|data_extents_scrubbed:85282
|tree_extents_scrubbed:130262
|data_bytes_scrubbed:5386072064
|tree_bytes_scrubbed:2134212608
|read_errors:72688
|csum_errors:0
|verify_errors:0
|no_csum:0
|csum_discards:0
|super_errors:0
|malloc_errors:0
|uncorrectable_errors:72688
|corrected_errors:0
|last_physical:7553941504
|t_start:1502107169
|t_resumed:0
|duration:62
|canceled:1
|finished:1

関連情報