どーも!marusukeです!
この記事では、Linuxでディスクのパーティションを操作・確認するための主要コマンドをまとめて解説します。
この記事で分かることは次のとおりです。
- パーティションを作成・削除・変更するコマンド(fdisk・parted・gdisk)
- パーティション/ブロックデバイスの情報を確認するコマンド(lsblk・blkid)
- MBRとGPT、それぞれに対応したツールの違い
- どのコマンドを使うべきかの判断基準
注意
パーティション操作を誤ると、ディスク内のデータを失う可能性があります。重要なデータをバックアップし、操作対象のデバイス名を十分に確認してから実行してください。
パーティション操作系コマンドの全体像
パーティション操作は、大きく「確認」と「作成・変更・削除」の2つに分かれます。
| フェーズ | コマンド | 役割 |
|---|---|---|
| 確認 | lsblk | ブロックデバイス(ディスク・パーティション・LVM)をツリー表示 |
| 確認 | blkid | UUID・ファイルシステムタイプなどの属性を表示 |
| 作成・変更・削除 | fdisk | MBR・GPT両対応の対話型パーティション操作(現在の標準) |
| 作成・変更・削除 | gdisk | GPT専用の対話型パーティション操作(fdiskのGPT拡張版) |
| 作成・変更・削除 | parted | GPT・MBR両対応、対話/非対話(スクリプト)両モード対応 |
パーティションを作成したあとは、mkfs系コマンドでファイルシステムを作成し、mountでマウントする必要があります(この部分は別記事「ファイルシステム系コマンド完全まとめ」を参照してください)。
情報確認:lsblk
lsblk [オプション]
lsblkは、ディスク・パーティション・LVMなどのブロックデバイス情報をツリー形式で表示するコマンドです。パーティション操作の前に、まず対象ディスクを確認するために使います。
lsblk
出力例:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 100G 0 disk
├─sda1 8:1 0 50G 0 part /
├─sda2 8:2 0 49G 0 part /home
└─sda3 8:3 0 1G 0 part [SWAP]
lsblkの主なオプション
| オプション | 説明 |
|---|---|
-a, --all | すべてのデバイスを表示 |
-f, --fs | ファイルシステム情報を表示 |
-p, --paths | デバイスパスをフルパス表示 |
-o, --output | 表示する列を指定 |
-J, --json | JSON形式で出力 |
詳しくはlsblkコマンドの記事を参照してください。
情報確認:blkid
blkid [オプション] [デバイス]
blkidは、ブロックデバイスのUUID・ファイルシステムタイプ・ラベルなどの属性情報を表示するコマンドです。fstabの設定や、パーティションがどのファイルシステムで初期化されているかを確認する際に使います。
sudo blkid
出力例:
/dev/sda1: UUID="e2e1e15c-01d6-4c9a-9d1c-93d5f5e6e3fa" TYPE="ext4" PARTUUID="b1b2b3b4-01"
blkidの主なオプション
| オプション | 説明 |
|---|---|
-s <タグ> | 表示する特定のタグを指定(UUID、TYPEなど) |
-o | 出力フォーマットを指定(full、value、list、exportなど) |
-c <ファイル> | キャッシュファイルを指定 |
詳しくはblkidコマンドの記事を参照してください。
MBR/GPT対応:fdisk
fdisk [オプション] デバイス
fdiskは、パーティションテーブルを確認・作成・変更・削除するための対話型コマンドです。以前はMBR専用ツールとして使われることが多くありましたが、現在はGPTにも対応しており、特別な理由がなければfdiskを第一選択として使うのがおすすめです。
sudo fdisk /dev/sdb
対話モードでの主なコマンド:
| コマンド | 説明 |
|---|---|
n | 新しいパーティションを作成 |
d | パーティションを削除 |
p | 現在のパーティションテーブルを表示 |
g | 新しいGPTパーティションテーブルを作成 |
o | 新しいMBRパーティションテーブルを作成 |
w | 変更を保存して終了 |
q | 変更を保存せずに終了 |
パーティション情報の一覧表示には-lオプションを使います。
sudo fdisk -l /dev/sdb
詳しくはfdiskコマンドの記事を参照してください。
GPT専用:gdisk
gdisk [オプション] デバイス
gdiskは、GPTディスク専用のパーティション操作コマンドです。MBR用のfdiskをGPTに対応させる目的で作られたツールで、対話モードの操作感はfdiskとよく似ています。
sudo gdisk /dev/sda
対話モードでの主なコマンド:
| コマンド | 説明 |
|---|---|
n | 新しいパーティションを作成 |
d | パーティションを削除 |
p | 現在のパーティションテーブルを表示 |
t | パーティションのタイプコードを変更 |
w | 変更を保存して終了 |
q | 変更を保存せずに終了 |
一覧表示は-lオプションです。
sudo gdisk -l /dev/sda
現在はfdiskがGPTにも対応しているため、新規環境でgdiskをあえて選ぶ場面は減っていますが、GPT操作に特化した詳細表示・検証機能(vコマンドなど)が必要な場合に使われます。
詳しくはgdiskコマンドの記事を参照してください。
GPT/MBR対応・スクリプト向き:parted
parted [オプション] [デバイス]
partedは、GPT・MBRどちらにも対応し、対話モード・非対話モード(スクリプトモード)の両方で操作できるコマンドです。自動化したい場合に向いています。
対話モードの例:
sudo parted /dev/sda
(parted) mklabel gpt
(parted) mkpart primary ext4 0% 50%
(parted) print
(parted) quit
非対話モード(スクリプト)の例:
sudo parted -s /dev/sda mklabel gpt
sudo parted -s /dev/sda mkpart primary ext4 0% 50%
注意:
mkpartで指定するext4などの文字列は、実際にファイルシステムを作成するものではありません。パーティションタイプの目印として使われるだけで、実際にファイルシステムを作るには別途mkfsコマンドが必要です。
partedの主なオプション
| オプション | 説明 |
|---|---|
-l, --list | すべてのブロックデバイスのパーティション情報を表示 |
-s, --script | スクリプトモードで実行(対話なし) |
-a, --align | パーティション配置(アライメント)方法を指定 |
詳しくはpartedコマンドの記事を参照してください。
コマンド比較表
| コマンド | 対応フォーマット | モード | 主な用途 | 現在の位置づけ |
|---|---|---|---|---|
lsblk | – | 表示のみ | ブロックデバイスの一覧確認 | 操作前の確認に必須 |
blkid | – | 表示のみ | UUID・FSタイプの確認 | fstab設定などで利用 |
fdisk | MBR/GPT | 対話 | パーティション作成・変更・削除 | 標準的な第一選択 |
gdisk | GPT専用 | 対話 | GPT特化の詳細な操作・検証 | 用途を絞った場面で利用 |
parted | MBR/GPT | 対話/非対話 | パーティション操作・自動化 | スクリプト化したい場合に有効 |
どのコマンドを使うべきか(判断フロー)
- まず
lsblkで対象ディスクとパーティション構成を確認する - UUIDやファイルシステムタイプが必要なら
blkidで確認する - 通常のパーティション作成・削除は
fdiskを使う(GPT・MBRどちらでも対応可能) - GPT特有の検証・詳細操作が必要な場合は
gdiskを検討する - スクリプトで自動化したい場合は
parted -sを使う - パーティション作成後は
mkfsでファイルシステムを作成し、mountでマウントする
まとめ
パーティション操作系コマンドは、確認用のlsblk・blkidと、作成・変更・削除用のfdisk・gdisk・partedに分けて理解すると整理しやすくなります。基本はfdiskで十分対応できますが、GPTの詳細操作や自動化が必要な場面ではgdiskやpartedを使い分けましょう。
いずれの操作も、誤るとデータ損失につながるため、必ずバックアップを取り、対象デバイス名を確認してから実行してください。
以上です!
ここまで読んでいただきありがとうございました!

コメント