web-dev-qa-db-ja.com

GPTディスクパーティションの回復

ドライブの1つにパーティションを正しく表示するのに問題があります。

セットアップ:

  • Linux3.10.10-1-アーチ
  • ディスクは2TBで、2つのパーティションを持つGPTがあります。
  • 2つのパーティションはそれぞれ約700GBを保持するため、すべてに十分なスペースがあります。
  • ディスク上のデータには完全バックアップがありますが、再構築(オフサイトバックアップ)に時間がかかるため、可能であればidはこれを修正したいと考えています。
  • 私はlivecdでgpartedにパーティションを作成し、古いディスクからデータをddしました。
  • 両方のパーティションはext4ですが、それはそれほど重要ではありません。

私が実行する問題:

Sudo gdisk /dev/sdb

そして私は得る:

Warning! Disk size is smaller than the main header indicates! Loading
secondary header from the last sector of the disk! You should use 'v' to
verify disk integrity, and perhaps options on the experts' menu to repair
the disk.
Caution: invalid backup GPT header, but valid main header; regenerating
backup header from main header.

Warning! One or more CRCs don't match. You should repair the disk!

Partition table scan:
  MBR: protective
  BSD: not present
  APM: not present
  GPT: damaged

そこで、正確な問題を明らかにするためにvを実行しました。

Caution: The CRC for the backup partition table is invalid. This table may
be corrupt. This program will automatically create a new backup partition
table when you save your partitions.

Problem: The secondary header's self-pointer indicates that it doesn't reside
at the end of the disk. If you've added a disk to a RAID array, use the 'e'
option on the experts' menu to adjust the secondary header's and partition
table's locations.

Problem: Disk is too small to hold all the data!
(Disk size is 1953569134 sectors, needs to be 3907029168 sectors.)
The 'e' option on the experts' menu may fix this problem.

Problem: GPT claims the disk is larger than it is! (Claimed last usable
sector is 3907029134, but backup header is at
3907029167 and disk size is 1953569134 sectors.
The 'e' option on the experts' menu will probably fix this problem

Problem: partition 2 is too big for the disk.

Identified 5 problems!

eを実行してからvを再度実行すると、次のようになります。

Caution: The CRC for the backup partition table is invalid. This table may
be corrupt. This program will automatically create a new backup partition
table when you save your partitions.

Problem: partition 2 is too big for the disk.

Warning! Secondary partition table overlaps the last partition by
1953459891 blocks!
You will need to delete this partition or resize it in another utility.

Identified 3 problems!

pを使用して正しいパーティションを確認できるようになりました。

Disk /dev/sdb: 1953569134 sectors, 931.5 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): D690A9B2-EA00-4D2E-9E18-0D4545A8683A
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 1953569100
Partitions will be aligned on 2048-sector boundaries
Total free space is 2014 sectors (1007.0 KiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048      1953515519   931.5 GiB   0700  
   2      1953515520      3907028991   931.5 GiB   0700 

私はこの時点で立ち往生しており、どんな助けでも大歓迎です。

3
Nick

最初に、あなたは主張します:

  • ディスクは2TBで、2つのパーティションを持つGPTがあります。

残念ながら、gdiskはあなたに同意しません:

Disk /dev/sdb: 1953569134 sectors, 931.5 GiB

ディスクの要求サイズを再確認することをお勧めします。通常、ディスク本体のステッカーに印刷されています。実際に931.5GiB(1TiB)ディスクを使用している場合、2つの〜700GB(gdiskクレーム931.5GiB)パーティションをそのディスクに収めることはできません。したがって、gdiskに適切なデータがある場合は、より大きなディスクを取得するか、(元のファイルシステム内で1 TB以下の実際のスペースを使用している場合)ファイルレベルのバックアップを実行する必要があります。オリジナルの1TBターゲットディスクへの。

ディスクが2TBモデルとしてマークされている場合は、マークが間違っているか、 ホスト保護領域(HPA) 機能で問題が発生しています。この機能を使用すると、さまざまなあいまいな目的で一定量のディスク領域を「非表示」にすることができます。しかし、私が見たオンライン投稿から判断すると、設定が間違っていることがあり、あなたのような問題を引き起こします。この機能は、-Nオプションを使用してhdparmに表示および変更できます。 Sudo hdparm -N /dev/sdbと入力すると、ドライブの現在のHPA設定が表示されます。この機能がアクティブな場合は、man hdparmと入力し、-Nオプションのセクションをお読みください。基本的に、ディスクをリセットして全容量を使用するには、-Nを介してディスク上の実際のセクター数を渡す必要があります。

2
Rod Smith