GPTを削除-デフォルトはMBRに戻る


33

私はこのエラーを受け取り続けます:

警告!!サポートされていないGPT(GUIDパーティションテーブル)が検出されました。GNU Partedを使用する

通常のMBRに戻りたい。私はここでいくつかのアドバイスを見つけてやった:

parted /dev/sda
mklabel msdos
quit

しかし、mklabelオプションに到達すると、すべてのデータを失うという警告を発し/dev/sdaます。ディスクをフォーマットせずに通常のMBRに戻す方法はありますか?


2
切り替えたい理由は何ですか?あなたが解決しようとしている本当の問題は何ですか?
ヨルダン

1
ドライブをフォーマットする場合は、これを試してください:blog.gnub.net/2009/03/die-gpt-die.html(申し訳ありませんが答えを出す評判はありません!)
レスターチャン14

回答:


28

あなたが投稿したリンクは、非常にいハック型ソリューションのように見えます。

ただし、gdiskMBR-> GPTの変換に使用されるマニュアルページによると、GPT-> MBRを変換するための「回復と変換」メニューにもオプションがありますrgキーになります。

GPTをMBRに変換して終了します。このオプションは、できるだけ多くのパーティションをMBR形式に変換し、GPTデータ構造を破棄し、新しいMBRを保存して終了します。GPTを試してみて、MBRの方が適している場合は、このオプションを使用してください。この関数は、最大4つのプライマリMBRパーティションまたは3つのプライマリパーティションと、生成可能な数の論理パーティションを生成することに注意してください。各論理パーティションには、最初のブロックの直前に少なくとも1つの未割り当てブロックが必要です。

私は最初にそれを試してみます。


簡単にできますが、それでも危険です。
ヨルダン

@jordanm:私はこれを自分でやったことはありません(これが「googleが暗示する」と認める理由です)。GDiskのmanページはのためにr- > gオプションは、すべての任意の警告を持っていません...
ゴルディロックス

回答に必要なgdiskステップをインライン化すると、この回答が改善されます。特にステップがどれだけ短いかで。リンクが機能しなくなると、答えが役に立たなくなる可能性があります。
デロバート14年

@derobert:ええ、オリジナルはもっとコメントでした。gdisk代わりにマニュアルページの内容を使用しました。
goldilocks 14年

1
完全に消去するには、gdiskでZAPを実行する必要があります
セルゲイP.別名紺

16

彼らはあなたが通常あなたがGPTパーティションテーブルのレイアウトに必要なものを行うことができると言うとき、前の回答者の大半は正しいですが、そこ以来、ある MBRを使用したいのための正当な理由は、私はちょうどあなたがいると仮定するのではなく、あなたの質問に答えるだろうと思い尋ねるのは間違っています。

GPTを取り除くには、このフォーマットではドライブの最後にパーティションテーブルが書き込まれていることを覚えておく必要があります。fdiskまたは非GPT対応のファイルシステムで削除しようとすると、パーティションテーブルが残ります。ツール。partedで行ったことは、このパーティションテーブルに対応していませんでした。

GPTを消去するには、gdiskのようなものを使用する必要があります。gdiskプロンプトでrootとして入力し、gdiskにどのデバイスを見たいかを伝えます(つまり/ dev / sd ??)。gdiskを使用して、MBRデータ構造にアクセスできることを確認するためだけに、保護MBRをディスクに書き込みます。次に、エキスパートオプションセクションに移動し(?さまざまなプログラムプロンプトで押して、さまざまなタイミングで使用可能なオプションを表示します)、「GPTデータ構造をザップ(破壊)して終了」というオプションを見つけます。プログラムは確認を求め、MBR構造を保持するかどうかを尋ねます。これを保存してください。

その後、コンピューターを再起動するだけで(カーネルは古いパーティションテーブルを使用し、更新するには再起動が必要になるため)、fdiskを起動してGPTパーティションの残りを削除するだけです。以前に見たGNU Partedの使用に関する警告が引き続き表示されますが、パーティションを削除すると消えるので、今回は無視できます。

これにより、OSを再インストールできる空のドライブにMBRパーティションテーブルシステムが作成されます。既存のパーティションでこれを行おうとすると、かなり複雑になり、場合によっては不可能になる可能性があるため、単にデータをバックアップしてこの方法で行うことをお勧めします。


1
「あなたが尋ねるのは間違っていると仮定する代わりに、あなたの質問に答えるだけだと思います。」-それは機能するのに十分クレイジーです!
マイケルMrozek

6

つかいます gdisk /dev/sda

注: /dev/sdaは、この質問をしたがドライブ名に変更した人の場合です。

gdiskを使用したら、次を使用します。

x   extra functionality (experts only)

入力pしてすべてのオプションを表示すると、次のように表示されます。

Expert command (? for help): ?
a   set attributes
c   change partition GUID
d   display the sector alignment value
e   relocate backup data structures to the end of the disk
g   change disk GUID
h   recompute CHS values in protective/hybrid MBR
i   show detailed information on a partition
l   set the sector alignment value
m   return to main menu
n   create a new protective MBR
o   print protective MBR data
p   print the partition table
q   quit without saving changes
r   recovery and transformation options (experts only)
s   resize partition table
t   transpose two partition table entries
u   Replicate partition table on new device
v   verify disk
w   write table to disk and exit
z   zap (destroy) GPT data structures and exit
?   print this menu

つかいます z

Expert command (? for help): z
About to wipe out GPT on /dev/xvdf. Proceed? (Y/N): Y
GPT data structures destroyed! You may now partition the disk using fdisk or
other utilities.
Blank out MBR? (Y/N): Y

2
共有してくれてありがとう。
アレクサンダー

1

これほとんどの場合に機能するはずです。2TBを超えるパーティションがある場合、または15パーティションを超える場合は、MBRを使用できないことがわかっています。

  • partedを使用してパーティションのサイズを確認します(つまり、すべて2TB未満ですか?)。 parted /dev/sdX p
  • 大きなパーティションがある場合は、問題のファイルシステムと実行する必要のある他のすべてを縮小します。(この投稿の最後にこれについての詳細があります。)
  • すべての正確なパーティションサイズをダンプparted /dev/sdX u B pします(バイト単位でサイズを表示)。最終的にパーティションレイアウトを再作成する方法がわかります。携帯電話を使用して、両方のparted出力から写真を作成します。
  • 内部構造により、MBRを持つプライマリパーティションは4つしか持てないことに注意してください。したがって、さらにパーティションがある場合は、ディスクのどこかに空き領域が必要です(これがどこにあるのかを知る必要があります!)、VBRを配置できる論理パーティションを作成して、他の4番目/以前に存在した5番目と6番目のパーティション。
  • gdiskGPTのザップに使用します。
  • 新しいMBRを作成します。
  • パーティションを再作成し、1番目、2番目、3番目をプライマリパーティションとして作成してから、空き領域(データが以前に配置されていませんでした!!!)で論理パーティションを作成し、他のパーティションを作成します。
  • 保存して終了します。
  • 祈る。
  • リブート。

grmlこれにはすべて、livediskを使用する必要があります。何か間違ったことをした場合は、再起動して再試行してください。

ディスクにデータを書き込まない限り、何も失われません。電話機にはまだすべてのパーティションレイアウトがあるため、本当に必要な場合は元のGPTを再作成できます。

あなたが本当に何かを犯して写真を撮っていない場合testdiskは、パーティションの境界を見分けてみてください。しかし、レイアウトが異常なものになったらすぐにお金をかけないでください。


パーティションを小さくするためのサイズ変更に関する鳥瞰的な視点:

  • 最初に、常にファイルシステムを縮小する必要があります。ext4(resize2fs -M dev/sdX)では簡単ですが、XFSでは圧縮できないため不可能です。そのようなスタントを試みる前に、使用しているものとグーグルを知ってください。
  • LVMがある場合は、次に論理ボリュームを縮小します。(lvreduce -L 20G /dev/mapper/<VG>-<LV>
  • 次のLVMステップは、物理ボリュームの小型化です。pvresize --setphysicalvolumesize 25G /dev/sdX行く方法です。
  • その後、選択したパーティション設定ツールを使用して、lvmが置かれているパーティションを削除し、より小さく再作成します。

ここで言及されているすべての要素のサイズは次のとおりです。ファイルシステム<LV <PV <パーティション。次の再起動後にそうでない場合は、FSチェックを行う必要があります。それをしないで、もう一度livediskをリブートして、調整してください。そこで問題を修正すると、システムが再び起動します。

PARTITION + LUKS + LVM + FILESYSTEMがある場合にこれをすべて実行できるようにするために、シェルからこれを行う方法に関するヒントを次に示します。

  • df -h パーティションをマウントしたときにファイルシステムのサイズを表示するための友達です
  • lsblkそしてlsblk -fあなたの友人は、パーティションを示すためのものです
  • LUKSを使用している場合は、で暗号化コンテナーを開き、cryptsetup open /dev/sdX asdfパスワードを入力すると、パスワードが利用可能になります/dev/mapper/asdf。暗号コンテナーのサイズを変更する必要はありません。(もちろん、暗号化されたパーティションがない場合はこれをスキップしてください。)
  • vgchange -aay すべての論理ボリュームをアクティブにして、それらを操作できるようにします。
  • mkdir asdf; mount /dev/mapper<VG>-<LV> asdfそしてdf -h、サイズ変更の前にファイルシステムのサイズを確認します。
  • umount asdf そのため、再びアンマウントされます。
  • resize2fs -M /dev/mapper/<VG>-<LV>
  • mount /dev/mapper/<VG>-<LV> asdf; df -h ファイルシステムの大きさを確認するために。
  • LV 1GBをファイルシステムより大きくします。おそらく、これでは十分ではありません。努力することができれば、それよりもさらに大きくしてください。そうしないと、Linuxは再起動後に動作しないことを通知します。DONTはプロンプトが表示されたらFSチェックを実行し、livediskから再起動して再起動します。その場合、データは失われません。
  • PVをLVよりも1GB大きくします。
  • パーティションをPVより1GB大きくします。LVMは4Mのサイズのエクステントを作成するため、100Mも簡単に十分です(これはハードディスク上のブロックに直接似ていますが、LVMの場合)。パーティションを小さくしすぎて最後のエクステントを省略しないようにしたいだけです。しかし、私が言ったように、する必要があります。すべてを計算するのではなく、物事を調整し、破損した場合は修正します。結局のところLinuxです。これを実行してみましょう。

必要以上に大きくすることで、頻繁にリブートする必要がなくなります。

簡単LVMで、常にVGおよびマウントポイント(の名前としてホスト名を使用しているものが何であるかを見分けるためにrootswapvarあなたのLVMのセットアップを作成するときに、あなたはすでにそれをしなかった場合は、LVのために、...)。これは一般的なヒントであり、上記のステップで実行する必要があるものではありません。


1

GPartedのは(上でテスト私のために仕事をしたカーリーのLinuxだけで行うことにより、USBライブV2.1):

Device --> Create Partition Tablet --> Type MSDOS

最初にすべてのパーティションを削除します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.