web-dev-qa-db-ja.com

Linuxが外付けドライブを不当に大きいものとして検出する

親戚が私に彼らのSeagate 2TB外付けハードドライブを見るように頼みましたが、彼らは以前は機能していたが今は機能していないと言いました。私はそれをデスクトップにポップしましたが、それがlsusbに(適切な名前で)表示されること以外、しばらくは何も起こりませんでした。

約10分後、ls \dev | grep sdを使用して、最終的に/ dev/sdcとして表示されることを確認したので、fdisk -lで表示しようとしましたが、リストに表示されませんでした。多分それがGPTテーブルだと思ったので、それをGPartedで開きましたが、ロードに時間がかかりすぎていたので、lsblkを試してみました。

NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 111.8G  0 disk 
├─sda1   8:1    0   108G  0 part /
├─sda2   8:2    0     1K  0 part 
└─sda5   8:5    0   3.8G  0 part [SWAP]
sdb      8:16   0   1.8T  0 disk 
└─sdb1   8:17   0   1.8T  0 part 
sdc      8:32   0   128P  0 disk 
sr0     11:0    1  1024M  0 rom  

さて、私の親戚はどういうわけか人に知られている最大のドライブを持っているか、または非常に奇妙なことが発生しました。後者を想定して、この問題を解決する方法はありますか?

少し余分な注意:GPartedでドライブをもう一度開こうとしましたが、今回はそれがロードされるのを待っていました。また、ドライブに128 PBの未割り当てスペースが含まれていると考えられたため、これは内部的なものです。また、パーティションが検出されていないことは明らかであり、親戚にそのデータについて実行できることはない可能性が高いとすでに言っていました。

失敗したddを使用してMBRを書き換えようとしたため、dmesgから次の関連メッセージが表示されました。

[15404.910434] scsi_io_completion_action: 14 callbacks suppressed
[15404.910445] sd 10:0:0:0: [sdc] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE cmd_age=0s
[15404.910449] sd 10:0:0:0: [sdc] tag#0 Sense Key : Medium Error [current] 
[15404.910453] sd 10:0:0:0: [sdc] tag#0 Add. Sense: Unrecovered read error
[15404.910457] sd 10:0:0:0: [sdc] tag#0 CDB: Read(16) 88 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00
[15404.910458] print_req_error: 14 callbacks suppressed
[15404.910461] blk_update_request: critical medium error, dev sdc, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
[15404.914427] sd 10:0:0:0: [sdc] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE cmd_age=0s
[15404.914430] sd 10:0:0:0: [sdc] tag#0 Sense Key : Medium Error [current] 
[15404.914432] sd 10:0:0:0: [sdc] tag#0 Add. Sense: Unrecovered read error
[15404.914435] sd 10:0:0:0: [sdc] tag#0 CDB: Read(16) 88 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00
[15404.914437] blk_update_request: critical medium error, dev sdc, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
[15404.914440] buffer_io_error: 38 callbacks suppressed
[15404.914442] Buffer I/O error on dev sdc, logical block 0, async page read
[15404.915937] sd 10:0:0:0: [sdc] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE cmd_age=0s
[15404.915941] sd 10:0:0:0: [sdc] tag#0 Sense Key : Medium Error [current] 
[15404.915944] sd 10:0:0:0: [sdc] tag#0 Add. Sense: Unrecovered read error
[15404.915949] sd 10:0:0:0: [sdc] tag#0 CDB: Read(16) 88 00 00 00 00 00 00 00 00 02 00 00 00 06 00 00
[15404.915953] blk_update_request: critical medium error, dev sdc, sector 2 op 0x0:(READ) flags 0x0 phys_seg 3 prio class 0
[15404.915959] Buffer I/O error on dev sdc, logical block 1, async page read
[15404.915963] Buffer I/O error on dev sdc, logical block 2, async page read
[15404.915966] Buffer I/O error on dev sdc, logical block 3, async page read
[15404.917683] sd 10:0:0:0: [sdc] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE cmd_age=0s
[15404.917686] sd 10:0:0:0: [sdc] tag#0 Sense Key : Medium Error [current] 
[15404.917689] sd 10:0:0:0: [sdc] tag#0 Add. Sense: Unrecovered read error
[15404.917692] sd 10:0:0:0: [sdc] tag#0 CDB: Read(16) 88 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00
[15404.917694] blk_update_request: critical medium error, dev sdc, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
[15404.917698] Buffer I/O error on dev sdc, logical block 0, async page read
[15404.919186] sd 10:0:0:0: [sdc] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE cmd_age=0s
[15404.919189] sd 10:0:0:0: [sdc] tag#0 Sense Key : Medium Error [current] 
[15404.919192] sd 10:0:0:0: [sdc] tag#0 Add. Sense: Unrecovered read error
[15404.919195] sd 10:0:0:0: [sdc] tag#0 CDB: Read(16) 88 00 00 00 00 00 00 00 00 02 00 00 00 06 00 00
[15404.919197] blk_update_request: critical medium error, dev sdc, sector 2 op 0x0:(READ) flags 0x0 phys_seg 3 prio class 0
[15404.919200] Buffer I/O error on dev sdc, logical block 1, async page read
[15404.919203] Buffer I/O error on dev sdc, logical block 2, async page read
[15404.919205] Buffer I/O error on dev sdc, logical block 3, async page read
[15404.920932] sd 10:0:0:0: [sdc] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE cmd_age=0s
[15404.920935] sd 10:0:0:0: [sdc] tag#0 Sense Key : Medium Error [current] 
[15404.920937] sd 10:0:0:0: [sdc] tag#0 Add. Sense: Unrecovered read error
[15404.920940] sd 10:0:0:0: [sdc] tag#0 CDB: Read(16) 88 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00
[15404.920942] blk_update_request: critical medium error, dev sdc, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
[15404.920945] Buffer I/O error on dev sdc, logical block 0, async page read
[15404.922433] sd 10:0:0:0: [sdc] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE cmd_age=0s
[15404.922436] sd 10:0:0:0: [sdc] tag#0 Sense Key : Medium Error [current] 
[15404.922438] sd 10:0:0:0: [sdc] tag#0 Add. Sense: Unrecovered read error
[15404.922440] sd 10:0:0:0: [sdc] tag#0 CDB: Read(16) 88 00 00 00 00 00 00 00 00 02 00 00 00 06 00 00
[15404.922442] blk_update_request: critical medium error, dev sdc, sector 2 op 0x0:(READ) flags 0x0 phys_seg 3 prio class 0
[15404.922445] Buffer I/O error on dev sdc, logical block 1, async page read
[15404.923930] sd 10:0:0:0: [sdc] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE cmd_age=0s
[15404.923932] sd 10:0:0:0: [sdc] tag#0 Sense Key : Medium Error [current] 
[15404.923934] sd 10:0:0:0: [sdc] tag#0 Add. Sense: Unrecovered read error
[15404.923936] sd 10:0:0:0: [sdc] tag#0 CDB: Read(16) 88 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00
[15404.923938] blk_update_request: critical medium error, dev sdc, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
[15404.925438] sd 10:0:0:0: [sdc] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE cmd_age=0s
[15404.925442] sd 10:0:0:0: [sdc] tag#0 Sense Key : Medium Error [current] 
[15404.925446] sd 10:0:0:0: [sdc] tag#0 Add. Sense: Unrecovered read error
[15404.925449] sd 10:0:0:0: [sdc] tag#0 CDB: Read(16) 88 00 00 00 00 00 00 00 00 02 00 00 00 06 00 00
[15404.925453] blk_update_request: critical medium error, dev sdc, sector 2 op 0x0:(READ) flags 0x0 phys_seg 3 prio class 0
[15404.925481] ldm_validate_partition_table(): Disk read failed.
[15404.927181] sd 10:0:0:0: [sdc] tag#0 FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE cmd_age=0s
[15404.927185] sd 10:0:0:0: [sdc] tag#0 Sense Key : Medium Error [current] 
[15404.927189] sd 10:0:0:0: [sdc] tag#0 Add. Sense: Unrecovered read error
[15404.927192] sd 10:0:0:0: [sdc] tag#0 CDB: Read(16) 88 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00
[15404.927195] blk_update_request: critical medium error, dev sdc, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
[15404.937694] Dev sdc: unable to read RDB block 0
[15404.945196]  sdc: unable to read partition table

[〜#〜] os [〜#〜]:カーネル5.5.13-2のDebian 10(ブルズアイ)

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

smartctl 7.1 2019-12-30 r5022 [x86_64-linux-5.5.0-1-AMD64] (local build)
Copyright (C) 2002-19, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     Seagate Mobile HDD
Device Model:     ST2000LM007-1R8174
Serial Number:    WDZCWPT0
LU WWN Device Id: 5 000c50 0b926222d
Firmware Version: SBK2
User Capacity:    18,446,744,073,709,551,104 bytes [18446 PB]
Sector Size:      512 bytes logical/physical
Rotation Rate:    7200 rpm
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   ATA8-ACS T13/1699-D revision 4
SATA Version is:  SATA 3.0, 6.0 Gb/s
Local Time is:    Mon Apr 27 18:21:43 2020 EDT
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

Read SMART Data failed: scsi error aborted command

=== START OF READ SMART DATA SECTION ===
SMART Status command failed: scsi error aborted command
SMART overall-health self-assessment test result: UNKNOWN!
SMART Status, Attributes and Thresholds cannot be read.

Read SMART Log Directory failed: scsi error aborted command

Read SMART Error Log failed: scsi error aborted command

Read SMART Self-test Log failed: scsi error aborted command

Selective Self-tests/Logging not supported

SeaGate Utilitiesの情報は次のとおりです。

==========================================================================================
 SeaChest_SMART - Seagate drive utilities - NVMe Enabled
 Copyright (c) 2014-2019 Seagate Technology LLC and/or its Affiliates, All Rights Reserved
 SeaChest_SMART Version: 1.12.0-1_19_23 X86_64
 Build Date: Jun 10 2019
 Today: Mon Apr 27 18:07:59 2020
==========================================================================================

/dev/sg3 - BACKUP+ - 90CD8083BJBG         - SCSI
    Vendor ID: Seagate 
    Model Number: BACKUP+         
    Serial Number: 90CD8083BJBG
    Firmware Revision: 0304
    World Wide Name: 5000000000000001
    Drive Capacity (PB/PiB): 144.12/128.00
    Temperature Data:
        Current Temperature (C): Not Reported
        Highest Temperature (C): Not Reported
        Lowest Temperature (C): Not Reported
    Power On Time: Not Reported
    Power On Hours: Not Reported
    MaxLBA: 281474976710653
    Native MaxLBA: Not Reported
    Logical Sector Size (B): 512
    Physical Sector Size (B): 512
    Sector Alignment: 0
    Rotation Rate (RPM): Not Reported
    Form Factor: Not Reported
    Last DST information:
        Not supported
    Long Drive Self Test Time: Not Supported
    Interface speed:
        Not Reported
    Annualized Workload Rate (TB/yr): Not Reported
    Total Bytes Read (B): Not Reported
    Total Bytes Written (B): Not Reported
    Encryption Support: Not Supported
    Cache Size (MiB): Not Reported
    Read Look-Ahead: Enabled
    Write Cache: Enabled
    SMART Status: Unknown or Not Supported
    ATA Security Information: Not Supported
    Firmware Download Support: Full, Segmented
    Specifications Supported:
        SPC-4
        SBC-3
        UAS
        SPC-4
    Features Supported:
        Power Conditions [Enabled]
        Informational Exceptions [Mode 0]
15
Brayden Freitas

smartctl出力に基づいて、問題はドライブの物理ストレージが失敗したことではありません。代わりに、サイズ(ファームウェアに「焼き付ける」必要がある)を正しく報告することさえできないという事実は、チェーンのある時点でコントローラーの電子機器が故障していることを示唆しています。

ほとんどの外付けUSBハードディスクには基本的な機能がありますが、常に高度なわけではありませんSMARTサポート。Seagateドライブは、予想されるベースラインでさえサポートを提供しないことがわかっているため、= SMART障害はコントローラーの障害の結果です。ただし、不正確に報告されたサイズは、それが起こったことを示しています。

これが「オールインワン」の外付けドライブである場合、実際のハードディスクを取り外し、スタンドアロンのUSB-HDアダプターに接続することで、データを回復できる場合があります。 (これは、障害がオンボードドライブの電子機器ではなくUSBインターフェイスの電子機器にある場合に当てはまります。)それが機能せず、同様のエラーが発生した場合、データを復旧ラボに送信すると、データが復旧できる可能性があります。これは非常に高価になる傾向があり、貴重な家族の写真や貴重なビットコインの財布などを持っている場合にのみ価値があります。

ドライブがなくなったようです。エラーは明らかに不良セクターがあり、それらを再割り当てしようとしたが、実行可能なセクターが残っていないことを明らかに示しています。

HDDはしばらくの間不良セクターを蓄積しているようです。最終的には、それ以上の再割り当てに使用できるスペースがなくなります。

smartctl -a /dev/sdcを実行して、追加情報を取得できるかどうかを確認してください。

編集

スマートデータは、ファームウェアの問題がこの問題の原因であることを示しています。私は、1000を超える不良セクターを持つドライブを使用しました。あなたはちょうど初期化に必要なブロックを占有しているようです。

Seagateが this link からソフトウェアソリューションを提供しているかどうかを確認することができます

また、専門のデータ救助者がドライブとデータを修正できる場合もあります。ただし、コストがかかりすぎる可能性があります。ですから、ドライブにかけがえのないものがない限り、私はその方法をサポートしません。

さらに、いくつかのハードウェアソリューションを自分で試すこともできます。これが Youtubeの簡単なチュートリアル です。ただし、注意しないと、ドライブとデータの両方が失われる可能性があります。

6
rubaiat

Debian 5.5?これは本当に古いバージョンなので、lsblkのバグにぶつかって、デッドドライブの最大値が表示されることがあります。添付したログから、ドライブが停止しているようです。

3
user409132

実行後dd if=/dev/sdc bs=512 count=2、私は出力を得ました:

dd: error reading '/dev/sdc': Input/output error
0+0 records in
0+0 records out
0 bytes copied, 0.00484632 s, 0.0 kB/s

そのため、ドライブはブロックレベルでも物理的に読み取ることができず、デッドになっていると思います。 ddrescueはエラーのみを報告し、これをサポートし、他の2つの回答からの入力も報告します。

3
Brayden Freitas

他のユーザーがコメントで述べたように(コメントを追加することはできません)、HDDをUSBエンクロージャのハウジングからできるだけ慎重に取り外すことができるかどうかを確認します(プラスチックまたはそれ以上の破損が必要になる場合があります)。

私は、通常トースターのように垂直にベアドライブを差し込むドッキングステーションをいくつか使用しています。 USB、eSATA、Thunderbolt、その他のコネクタを使用できます。

他の人たちは、USB-SATAアダプタを提案しています。これらには電源のオン/オフの問題がある可能性があります。 (私の好みはドックです。)私はnot自分のマシンに直接接続します。

接続し、最高の希望。

0
newyork10023

死亡したのがインターフェース電子機器の場合:

同一のドライブを使用している場合(おそらく同時に購入したドライブが2つある場合)、2つのドライブ間で電子機器を交換できます。それがインターフェイスにあれば、すべて回復可能です。その後、あなたが最も愛するドライブを決定します。

0
boatcoder