[Linux][command] パーティション作成_fdisk, gdisk, parted, MBR, GPT, パーティションタイプ

  
# パーティションとは
- HDD(またはSSD)は「パーティション」と呼ばれる論理的な空間に分割して利用する
- ディスク全体をひとつの領域とする場合にも、全容量を割り当てたひとつのパーティションを作る必要がある

# パーティション管理とは
- ハードディスク全体のパーティションの情報をパーティションテーブルと呼ぶ
- パーティションテーブルの管理方式は従来のMBR（Master Boot Record）と新しいGPT（GUID Partition Table）の2種類がある

# パーティションタイプ
|パーティションID|パーティションタイプ|
|:--|:--|
|0|空|
|82|Linux swap|
|83|Linux|
|8e|Linux LVM|

# MBRの特徴
- 基本パーティション：4個
- 容量：2.2TB
- パーティション操作：`fdisk`コマンド、`parted`コマンド
- 起動用システムファームウェア：BIOS
- ブートローダー：GRUB Legacy, GRUB 2

# GPTの特徴
- 基本パーティション：128個
- 容量：9.4ZB（9.4x1000x1000x1000TB）
- パーティション操作：`gdisk`コマンド、`parted`コマンド
- 起動用システムファームウェア：UEFI
- ブートローダー：GRUB Legacy, GRUB 2

# fdisk/gdiskコマンド
~~~terminal:
$ fdisk/gdisk デバイス名

or

デバイスのパーティションテーブルを確認する
$ fdisk/gdisk -l デバイス名
~~~
~~~terminal:例
$ Command (m for help): l
// 使用可能なパーティションタイプの一覧を表示

$ Command (m for help): n
// 新しいパーティションを作成
~~~

| サブコマンド | 英語の由来 | 説明 |
|:--|:--|:--|
|なし||コマンドプロンプトを表示し、対話的な操作を開始|
| `m` | menu (help) | ヘルプメニューを表示 |
| `l` | list partition types | 使用可能なパーティションタイプの一覧を表示 |
| `n` | new partition | 新しいパーティションを作成 |
| `d` | delete partition | 既存のパーティションを削除 |
| `p` | print partition table | 現在のパーティションテーブルを表示 |
| `t` | type | パーティションのタイプを変更 |
| `w` | write changes | 変更を保存<INS>して</INS>に終了 |
| `q` | quit | 変更を保存<INS>せず</INS>に終了 |


# partedコマンド
~~~terminal
$ parted デバイス名
~~~
または
~~~terminal
$ parted デバイス名 [-s サブコマンド]
~~~

| サブコマンド | 英語の由来 | 説明 |
|:--|:--|:--|
|なし||コマンドプロンプトを表示し、対話的な操作を開始|
| `mklabel` | make label | 新しいディスクラベルを作成します（例：`gpt`、`msdos`）。 |
| `mkpart` | make partition | 新しいパーティションを作成します。 |
| `rm` | remove partition | 既存のパーティションを削除します。 |
| `print`<br>`P` | print partition table | パーティションテーブルを表示します。 |
| `quit`<br>`q` | quit | 対話モードを終了します。 |

## パーティション作成手順
1. パーティションテーブルの指定 (MBR形式)
    ~~~shell:
    (parted) mklabel msdos
    ~~~

1. パーティションの作成 (primary（基本）、extended（拡張）、logical（論理）)
    ~~~shell:
    (parted) mkpart [ パーティションタイプ ファイルシステム種別 パーティション名 ]
    (parted) mkpart primary ext4 1 1000MB
    ~~~

1. 確認する
    ~~~shell:
    (parted) print
    ~~~

# 参考リンク
- [パーティションタイプ](https://www.wdic.org/w/TECH/%E3%83%91%E3%83%BC%E3%83%86%E3%82%A3%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%BF%E3%82%A4%E3%83%97)

# Ping-t
fdisk
- [3528_fdisk -l](https://mondai.ping-t.com/question_subjects/31/question_sessions/32163062/progressing_questions/492736596)
- [3529_fdisk](https://mondai.ping-t.com/question_subjects/31/question_sessions/31140772/progressing_questions/477192460)
- [3670_fdisk l, m](https://mondai.ping-t.com/question_subjects/31/question_sessions/32581786/progressing_questions/499228241)
- [3671_fdisk t](https://mondai.ping-t.com/question_subjects/31/question_sessions/31232403/progressing_questions/478592406)

parted
- [3614_parted, mklabel, mkpart, print](https://mondai.ping-t.com/question_subjects/31/question_sessions/32697155/progressing_questions/500927927)
- [3615_parted /dev/sdb -s, parted /dev/sdb](https://mondai.ping-t.com/question_subjects/31/question_sessions/31509922/progressing_questions/482817763)
- [3324_parted](https://mondai.ping-t.com/question_subjects/31/question_sessions/30552498/progressing_questions/468099719)

その他
- [3423_MBR](https://mondai.ping-t.com/question_subjects/31/question_sessions/32448701/progressing_questions/497231317)
- [3656_パーティション番号](https://mondai.ping-t.com/question_subjects/31/question_sessions/30873040/progressing_questions/472962310)
- [3689_GPT](https://mondai.ping-t.com/question_subjects/31/question_sessions/30205245/progressing_questions/462752070)
- [3710_パーティション番号](https://mondai.ping-t.com/question_subjects/31/question_sessions/32919483/progressing_questions/504279526)
- [35634_パーティション番号](https://mondai.ping-t.com/question_subjects/31/question_sessions/32919483/progressing_questions/504279548)