Linuxコマンド辞典 partedコマンド(デバイス)
パーティションの作成/削除/サイズ変更を行う「parted」コマンドの概要と使い方を記載しています。
RHEL Fedora CentOS Vine Ubuntu Plamo
概要・使用方法
書式
$ parted デバイスファイル名
$ parted [オプション] [デバイスファイル名[サブコマンド [オプションを]]]
partedはパーティションの作成/削除/サイズ変更を行うことができます。2TB越えるHDDでパーティション分割する場合はfdiskではなく、parted、gdiskコマンドを使うのが一般的です。「対話シェル」と「コマンド実行」の2パターンの実行方法があります。コマンドを指定しないとシェルが起動し、mkpartなどのコマンドを対話的に実行できます。対話的シェルにならないようにオプションを指定すれば、シェルスクリプトなどに利用できます。サイズの変更前にはデータをバックアップしておきます。
パーティション作成後は、mkfsコマンドなどを使ってファイルシステムを作成します。
旧来のMBRを使ってパーティションテーブルでは、1つのディスクを最大4つのプライマリパーティション(基本パーティション)に分割し、そのうちの1つを拡張パーティションとし、拡張パーティション内に複数の論理パーティションを作成できます。UEFIで使用可能なGUIDパーティションテーブル(GPT)では、最大128のプライマリパーティションを作成できます。
オプション
-l, –list | パーティション構成を表示する |
-s, –script | 対話的なプロンプトを出さない |
サブコマンド
mklabel ラベル | 新しいラベルを作成する。2TB以上のディスクの場合は「gpt」を指定してGPT、それ以下の場合は「msdos」を指定してMBRにパーティション構成を 格納する。loop/bsd/macなども使用できる。 |
mkpart パーティションタイプ開始場所,終了場所 | パーティションタイプはprimary(基本パーティション)、extend(拡張パーティション)、logicalを指定する。 指定した開始から終了までの領域でパーティションを作成する (例:0MBから150MB、0%から15%などのように指定する) |
mkfs 番号 ファイルシステム | 指定したパーティション番号に指定したファイルシステムを作成する。ファイルシステムにはfat16/fat32/ext2/linux-swapなどが選択できる。 それ以上のファイルシステムは別コマンドを利用する必要がある |
パーティション情報を表示する | |
quit | partedを終了する |
resize パーティション番号開始 終了 | 指定した番号のパーティションを開始、終了で指定する領域にサイズ変更する。ファイルシステムが既に作られている必要がある |
rm パーティション番号 | 指定した番号のパーティションを削除する |
select デバイス | 指定したデバイスを対象に扱う |
unit 単位 | デフォルトのサイズ単位を指定する。TB/TiB/GB/GiB/MB/MiBなどを指定できる |
set パーティション番号 フラグ 状態 | 指定したフラグを設定する。フラグは「boot」、「root」、「swap」など、状態を「on」「off」を指定する |
help | 利用できるコマンドを表示する |
現在のパーティション構成を表示する
$ parted -l
実行結果
[root@localhost ~]# parted -l
モデル: Msft Virtual Disk (scsi)
ディスク /dev/sda: 42.9GB
セクタサイズ (論理/物理): 512B/4096B
パーティションテーブル: msdos
ディスクフラグ:
番号 開始 終了 サイズ タイプ ファイルシステム フラグ
1 1049kB 1075MB 1074MB primary xfs boot
2 1075MB 42.9GB 41.9GB primary lvm
モデル: Msft Virtual Disk (scsi)
ディスク /dev/sdb: 1074MB
セクタサイズ (論理/物理): 512B/4096B
パーティションテーブル: msdos
ディスクフラグ:
番号 開始 終了 サイズ タイプ ファイルシステム フラグ
1 1049kB 1074MB 1073MB primary
[root@localhost ~]#
パーティションを作成する
$ parted デバイスファイル名
実行結果
[root@localhost ~]# parted /dev/sdb #←/dev/sdbを操作対象として起動する
GNU Parted 3.2
/dev/sdb を使用
GNU Parted へようこそ! コマンド一覧を見るには 'help' と入力してください。
(parted) mklabel msdos
警告: いま存在している /dev/sdb のディスクラベルは破壊され、このディスクの全データが失われます。続行しますか?
はい(Y)/Yes/いいえ(N)/No? y
(parted) mkpart primary 0% 100% #←パーティションを作成する。primaryタイプで0%~100%を指定する
(parted) print #←パーティションテーブルをテーブルを確認すると追加されていることが確認できる
モデル: Msft Virtual Disk (scsi)
ディスク /dev/sdb: 1074MB
セクタサイズ (論理/物理): 512B/4096B
パーティションテーブル: msdos
ディスクフラグ:
番号 開始 終了 サイズ タイプ ファイルシステム フラグ
1 1049kB 1074MB 1073MB primary lba
(parted)
デフォルトの単位をGBに変更する
unitサブコマンドの説明を表示し、デフォルトの単位をGBに指定する
$ parted
実行結果
[root@localhost ~]# parted
GNU Parted 3.2
/dev/sda を使用
GNU Parted へようこそ! コマンド一覧を見るには 'help' と入力してください。
(parted) help unit
unit UNIT デフォルトの単位を UNIT にする
UNIT は次のうちから選びます: s, B, kB, MB, GB, TB, compact, cyl, chs, %, kiB, MiB, GiB, TiB
(parted) unit GB #←単位をGBにする
(parted)
論理パーティションを追加する
「mkpart extended」サブコマンドを使用して論理パーティションを追加
$ parted デバイスファイル名
実行結果
(parted) mkpart extended 161MB 200MB #←論理パーティションを161MB-200MB範囲で拡張
(parted) p
モデル: Msft Virtual Disk (scsi)
ディスク /dev/sdb: 1074MB
セクタサイズ (論理/物理): 512B/4096B
パーティションテーブル: msdos
ディスクフラグ:
番号 開始 終了 サイズ タイプ ファイルシステム フラグ
1 1049kB 161MB 160MB primary lba
2 161MB 200MB 38.8MB extended lba
(parted)
論理パーティションを追加する(非対話的)
mkpart logical サブコマンドを使用して論理パーティションを追加
$ parted デバイス名 mkpart logical 開始 終了
実行結果
[root@localhost ~]# parted /dev/sdb mkpart logical 200MB 300MB