HFS +パーティションは読み取り不可、2TBのみ250GBと表示


1

最近、Macマシンを再インストールするためのバックアップとして、大量のデータをHFS +ハードドライブに転送しました。再インストールが完了した後、すべてのデータをマシンにロードし直したかった。(外部)ハードドライブは、マシンによって認識されなくなりました。

  • USB 3を介してMacOSマシンに接続すると、どこにも表示されませんdiskutil、システムレポート、何も表示されません。
  • ドライブを取り外し、SATAを介してDebianシステムに直接配置すると、パーティションが認識されますが、2TBではなく250GBの大きさです。読み取りまたはマウントできません

__

の出力fdisk -l

Disk /dev/sdb: 1,8 TiB, 2000398934016 bytes, 3907029168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: dos
Disk identifier: 0x00000000

Device     Boot Start       End   Sectors   Size Id Type
/dev/sdb1           2 488378644 488378643 232,9G af HFS / HFS+

Partition 1 does not start on physical sector boundary.

そして、これはGUIがDebian上で私に見せるものです

ディスクツールのスクリーンショット

私は、パーティションテーブルに何か問題があるか、または再構築可能な同様のものを疑っています(そして望んでいます)。誰にもアイデアはありますか?残念ながら、このドライブには500GBのプライベートメモリがあり、数日前にNASが故障したため、これが最後のバックアップでした...新しいNASの準備をしていました:-X

ありがとう、パスカル

回答:


2

問題の少なくとも一部は、セクターサイズの問題が原因である可能性があります。ハードディスクの大部分は、ネイティブ(通常はSATA)インターフェイスで512バイトの論理セクターサイズを使用します。(によって報告される「物理」セクターサイズfdiskはこの説明とは無関係です。)多くの外部USBエンクロージャーは、8つの512バイトセクターのセットを1つの4096バイトセクターに「変換」します。これにより、2TiBを超えるディスクを古いマスターブートレコード(MBR)パーティションシステムで使用できるようになります。少なくとも特定のエンクロージャーでは、USBインターフェイスを介してディスクを完全にアドレス指定する必要もあります。

したがって、発生したのは、この変換を行うUSBインターフェイスを介してディスクがパーティション分割されたため、ディスクに約488,378,646 4096バイトセクターがあったことだと思います。ただし、コンピューターのSATAポートに直接接続すると、3,907,029,168 512バイトセクターがあると読み取られました。(その値はfdisk出力から得られます。)パーティションテーブルは、より少ないがより大きなセクターを想定して書かれています。パーティションテーブルはパーティションの開始点とサイズをセクター数で記録しますが、セクターのサイズに関するヒントを提供しないため、特定した不一致が表示されます。

基本的に、この問題には2つの修正があります。

  • 外部USBエンクロージャを使用する -ディスクを元のエンクロージャに戻し、動作させることができます。OS Xで動作しない場合でも、Debianシステムで動作する可能性があります。ただし、不適切なタイミングでエンクロージャーに障害が発生した可能性があります。最初のエンクロージャーと同じ方法。特定のモデルが何をするのかを追跡していないため、特定のエンクロージャーを推奨することはできませんが、このタイプの変換はかなり一般的です。OTOH、一部のエンクロージャー(特に古いエンクロージャー)は翻訳を行わないため、役に立ちません。
  • パーティションテーブルを調整する -適切な値を使用して新しいパーティションテーブルを作成することにより、問題を修正できます。この場合、ディスク上の1つのパーティションを削除し、現在の値の正確に8倍のセクター値を持つ新しいパーティションを作成します。原則として、これをで実行できfdiskますが、ほぼ確実にアライメントポリシーを変更する必要があります。これは以前は可能でしたがfdisk、Ubuntu 16.04で試したところ、配置を変更するオプションが表示されませんでした。最善の策fdiskは、アーカイブのソースコードからコンパイルするか、古い緊急ディスクまたはインストールディスクを使用して、古いバージョンを見つけることです。または、既存のパーティションを削除してfdiskからTestDiskに依存することもできますまたは、現在のディスクセクターサイズを使用してパーティションを回復するための同様の方法。これは少しヒットまたはミスですが、おそらく動作します。

2番目のオプション機能するはずです。ただし、間違えたり、予期しない問題が発生した場合、特に変更されたパーティションに書き込む場合、事態が悪化する可能性があります。また、このオプションは、SATAを介して直接、またはセクターサイズの変換を行わない USBエンクロージャーを介してディスクを使用するようにロックします。したがって、全体として、最初のオプションに焦点を当てることをお勧めします。これには、交換用エンクロージャの購入が必要になる場合があります。


こんにちはロッド。精巧なフィードバックをありがとう。イベントがどこにも表示されず、USBコントローラーがイベントを認識しなかったため、エンクロージャーで何かが起こっているのではないかと心配しました。ハードドライブを別の(古い)USBエンクロージャに入れると、説明どおりに動作しました。しかし、そのエンクロージャはUSB 2.0であり、2TB未満のドライブ用でした。同じタイプの別のエンクロージャを入手し、そのドライブを新しいNASに使用するだけです。または、別のハードドライブで練習し、重要なセットアップを再作成してから修正してみてください。壊れたものでも同じです。
pascalwhoop

2番目のオプションをもう少し詳しく調べましたが、おそらくあなたが述べたアライメントポリシーの修正を実行できないことがわかりました。ただし、2GB以上で、USB 3.0接続のWDで(ドイツで)見つけたebayには、同じタイプであると期待できる外付けハードドライブもありません。この512/4096変換を行うような種類のエンクロージャーをリストするオンラインリソースはありますか?
pascalwhoop

特定のエンクロージャーがセクターサイズの変換を行うかどうかを指定するリソースを知りません。製造業者に尋ねてみてください。または、直接購入できる場合は、ディスクを持ち込んで、正しく読み取られるかどうかを確認してください。
ロッド・スミス

あるいは、ddrescueを使用して/ dev / sdbのブロックをコピーし、何らかの形式のブロックサイズ値を定義して別のドライブに書き込むことはできますか?これらの2 TBドライブがいくつかあり、新しいブロックサイズを使用してドライブ全体を簡単にコピーできます
-pascalwhoop

デバイスが使用するブロックサイズを調整する方法がないことを知っているので、4096バイトのブロックサイズを持つディスクのように動作するように作られたディスクにそれをコピーしても、何の役にも立ちません。とはいえ、データを保護するためにディスクをコピーすることは価値があるかもしれません。私の2番目のオプションを再検討してください。適切な値を使用することは必須であり、柔軟なツールが必要ですが、それほど複雑ではありません。
ロッドスミス
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.