読むだけでちょっと賢くなる、架空のまとめスレ

【疑問】新しいディスクに fdisk したら MBR と GPT どっちか聞かれた。パーティションテーブルの違いと fdisk・gdisk・parted【LPICレベル1】

17レスカテゴリ:Linux
1: 名無しさん

4TB のディスクを足して、fdisk で切ろうとした
MBR(DOS)と GPT があるらしいけど、どっちにしたらええん?

2: 名無しさん

前提のおさらい。ディスクを用途ごとに分けるのがパーティション。UEFI の起動には ESP、BIOS で GPT から起動するなら BIOS 起動パーティションが要る

3: 名無しさん

>>1
4TB なら GPT。MBR はパーティションの位置と大きさを32ビットのセクタ数で持つから、512バイトのセクタやと2TiBまでしか扱えない

4: 名無しさん

>>3

5: 名無しさん

>>3
ほかの違い
MBR:基本パーティションは4つまで。もっと要るなら1つを拡張パーティションにして、その中に論理パーティション
GPT:既定で128個まで(sgdisk の表示に Partition table holds up to 128 entries)。ディスクの最後に予備の表もある

6: 名無しさん

>>5
100MiB のファイルで試した(ディスクの代わりに普通のファイルを使った)
MBR で 20M・10M・拡張・その中に30M を作ったら、名前は 1・2・3(拡張)・5 になった。論理パーティションは5から数える

7: 名無しさん

>>6
20M のほうは 40960 セクタやった

最初のパーティションは 2048 セクタ目(1MiB)から始まってた

8: 名無しさん

>>1
fdisk の操作は?

9: 名無しさん

>>8
fdisk /dev/sdb で入って、1文字のコマンドを打つ
m ヘルプ、p 表示、n 作る、d 消す、t 種類を変える、l 種類の一覧
o 新しい MBR、g 新しい GPT
w 書き込んで終わる、q 保存せずに終わる

10: 名無しさん

>>9
w を打つまではディスクに書かれへんのか。間違えたら q で逃げられる

11: 名無しさん

>>8
種類の番号は?

12: 名無しさん

>>11
MBR は2桁の16進:83 Linux、82 Linux swap、5 拡張、8e LVM。GPT は4桁(gdisk の表記):8300 Linux、8200 swap、8E00 LVM、EF00 ESP、EF02 BIOS 起動

13: 名無しさん

>>2
gdisk と parted は?

14: 名無しさん

>>13
gdisk は GPT 用で、操作は fdisk とほぼ同じ1文字のコマンド(n・d・p・t・w・q、o で新しい GPT)。fdisk も今は GPT を扱える

15: 名無しさん

>>13
parted はコマンドを打った時点ですぐ書き込む。parted /dev/sdb mklabel gpt、mkpart data ext4 1MiB 50MiB、print。単位を書かないと MB(1000の累乗)で表示されたから、unit MiB を付けると分かりやすい

16: 名無しさん

>>15
mklabel は表を作り直すから、中のパーティションは全部なくなる。使ってるディスクで打たないこと

17: 名無しさん

>>3
2TiB を超えたら GPT、MBR は4つまでで論理は5から、fdisk は w まで書かない、parted はすぐ書く。これで切れる

管理人のひとこと