Parted は、ハードディスク パーティションの操作に使用される GNU ユーティリティです。
parted を使用すると、パーティションとそれらのパーティションにあるファイル システムを追加、削除、および編集できます。パーティションを複製することもできます。
この記事では、9 つの実用的な parted コマンドの例について説明します。
警告:parted ユーティリティは、ハードディスクのパーティション テーブルを操作し、変更をすぐに保存します。したがって、自分が何をしているのかわからない場合は、パーティションを削除、変更、追加、または何もしないでください。データが失われます。あなたの救助のための元に戻すボタンはありません!
1.分割するハードディスクを選択してください
引数なしで parted コマンドを実行すると、デフォルトで、システムで利用可能な最初のハードディスク ドライブが選択されます。
次の例では、/dev/sda がこのシステムの最初のハード ドライブであるため、自動的に選択されています。
# parted GNU Parted 2.3 Using /dev/sda Welcome to GNU Parted! Type 'help' to view a list of commands. (parted)
別のハードディスクを選択するには、次に示すように select コマンドを使用します。
(parted) select /dev/sdb
指定されたハードディスク名が見つからない場合、次のエラー メッセージがスローされます。
Error: Error opening /dev/sdb: No medium found Retry/Cancel? y
2. print を使用してすべてのパーティションを表示
print コマンドを使用すると、選択したハードディスクで使用可能なすべてのパーティションを表示できます。 print コマンドは、以下に示すように、モデル、サイズ、セクター サイズ、パーティション テーブルなどのハードディスクのプロパティも表示します。
(parted) print Model: ATA WDC WD5000BPVT-7 (scsi) Disk /dev/sda: 500GB Sector size (logical/physical): 512B/4096B Partition Table: msdos Number Start End Size Type File system Flags 1 1049kB 106MB 105MB primary fat16 diag 2 106MB 15.8GB 15.7GB primary ntfs boot 3 15.8GB 266GB 251GB primary ntfs 4 266GB 500GB 234GB extended 5 266GB 269GB 2682MB logical ext4 7 269GB 270GB 524MB logical ext4 8 270GB 366GB 96.8GB logical lvm 6 366GB 370GB 3999MB logical linux-swap(v1) 9 370GB 500GB 130GB logical ext4
3. mkpart を使用して、選択した HDD にプライマリ パーティションを作成します
mkpart コマンドを使用して、START と END のディスクの場所でプライマリ パーティションまたは論理パーティションを作成します。以下の例では、サイズが約 15GB のパーティションを作成します。 mkpart コマンドに渡される START ポイントと END ポイントは MB 単位です。
(parted) mkpart primary 106 16179
以下に示すように、パーティションで起動オプションを有効にすることもできます。 Linux はプライマリ パーティション用に 1 ~ 4 または 1 ~ 3 のパーティション番号を予約し、拡張パーティションは番号 5 から始まります。
(parted) set 1 boot on
4. mkpart を使用して、選択した HDD に論理パーティションを作成します
mkpart コマンドを使用して、特定のサイズの新しいパーティションを作成します。これにより、ファイル システムを作成せずに、プライマリ、論理、または拡張などの特定のタイプのパーティションが作成されます。
パーティションを作成する前に、印刷コマンドを実行して現在のレイアウトを表示してください。
(parted) print Model: ATA WDC WD5000BPVT-7 (scsi) Disk /dev/sda: 500GB Sector size (logical/physical): 512B/4096B Partition Table: msdos Number Start End Size Type File system Flags 1 1049kB 106MB 105MB primary fat16 diag 2 106MB 15.8GB 15.7GB primary ntfs boot 3 15.8GB 266GB 251GB primary ntfs 4 266GB 500GB 234GB extended 5 266GB 316GB 50.0GB logical ext4 6 316GB 324GB 7999MB logical linux-swap(v1) 7 324GB 344GB 20.0GB logical ext4 8 344GB 364GB 20.0GB logical ext2
以下に示すように、mkpart を使用して、サイズが 127GB の新しい論理パーティションを作成します。
(parted) mkpart logical 372737 500000
以下に示すように、印刷コマンドを実行して新しいレイアウトを表示します。
(parted) print Model: ATA WDC WD5000BPVT-7 (scsi) Disk /dev/sda: 500GB Sector size (logical/physical): 512B/4096B Partition Table: msdos Number Start End Size Type File system Flags 1 1049kB 106MB 105MB primary fat16 diag 2 106MB 15.8GB 15.7GB primary ntfs boot 3 15.8GB 266GB 251GB primary ntfs 4 266GB 500GB 234GB extended 5 266GB 316GB 50.0GB logical ext4 6 316GB 324GB 7999MB logical linux-swap(v1) 7 324GB 344GB 20.0GB logical ext4 8 344GB 364GB 20.0GB logical ext2 9 373GB 500GB 127GB logical (parted)
5. mkfs を使用してパーティションにファイル システムを作成する
fdisk コマンドを使用してハード ディスクを分割する場合は、fdisk ユーティリティを終了し、mkfs 外部プログラムを使用してパーティションにファイル システムを作成する必要があります。
ただし、parted ユーティリティを使用すると、ファイルシステムを作成することもできます。 parted の mkfs コマンドを使用して、パーティションにファイル システムを作成します。ファイルシステムの作成中にパーティション内の既存のデータがすべて失われるため、これを行うときは注意が必要です。 parted でサポートされているファイルシステムは、ext2、mips、fat16、fat32、linux-swap、reiserfs (libreiserfs がインストールされている場合) です。
パーティション番号 8 のファイル システム (以下の印刷出力に示されています) を ext4 から ext2 ファイル システムに変更しましょう。
(parted) print Model: ATA WDC WD5000BPVT-7 (scsi) Disk /dev/sda: 500GB Sector size (logical/physical): 512B/4096B Partition Table: msdos Number Start End Size Type File system Flags 1 1049kB 106MB 105MB primary fat16 diag 2 106MB 15.8GB 15.7GB primary ntfs boot 3 15.8GB 266GB 251GB primary ntfs 4 266GB 500GB 234GB extended 5 266GB 316GB 50.0GB logical ext4 6 316GB 324GB 7999MB logical linux-swap(v1) 7 324GB 344GB 20.0GB logical ext4 8 344GB 364GB 20.0GB logical ext4 9 364GB 500GB 136GB logical ext4
以下に示すように、mkfs コマンドを使用して、パーティション番号 8 のファイル システム タイプを変更します。mkfs コマンドは、パーティション番号とファイル システム タイプの入力を求めます。
(parted) mkfs WARNING: you are attempting to use parted to operate on (mkfs) a file system. parted's file system manipulation code is not as robust as what you'll find in dedicated, file-system-specific packages like e2fsprogs. We recommend you use parted only to manipulate partition tables, whenever possible. Support for performing most operations on most types of file systems will be removed in an upcoming release. Warning: The existing file system will be destroyed and all data on the partition will be lost. Do you want to continue? Yes/No? y Partition number? 8 File system type? [ext2]? ext2
print コマンドを再度実行して、パーティション番号 8 のファイル システム タイプが ex2 に変更されたことを確認します。
(parted) print Model: ATA WDC WD5000BPVT-7 (scsi) Disk /dev/sda: 500GB Sector size (logical/physical): 512B/4096B Partition Table: msdos Number Start End Size Type File system Flags 1 1049kB 106MB 105MB primary fat16 diag 2 106MB 15.8GB 15.7GB primary ntfs boot 3 15.8GB 266GB 251GB primary ntfs 4 266GB 500GB 234GB extended 5 266GB 316GB 50.0GB logical ext4 6 316GB 324GB 7999MB logical linux-swap(v1) 7 324GB 344GB 20.0GB logical ext4 8 344GB 364GB 20.0GB logical ext2 9 364GB 500GB 136GB logical ext4 (parted)
6. mkpartfs を使用してパーティションとファイルシステムを一緒に作成
mkpartfs parted コマンドを使用して、特定のファイルシステムでパーティションを作成することもできます。これは mkpart に似ていますが、パーティションにファイル システムを作成する機能が追加されています。
mkpartfs の前のパーティションのレイアウトは次のとおりです。
(parted) print Model: ATA WDC WD5000BPVT-7 (scsi) Disk /dev/sda: 500GB Sector size (logical/physical): 512B/4096B Partition Table: msdos Number Start End Size Type File system Flags 1 1049kB 106MB 105MB primary fat16 diag 2 106MB 15.8GB 15.7GB primary ntfs boot 3 15.8GB 266GB 251GB primary ntfs 4 266GB 500GB 234GB extended 5 266GB 316GB 50.0GB logical ext4 6 316GB 324GB 7999MB logical linux-swap(v1) 7 324GB 344GB 20.0GB logical ext4 8 344GB 364GB 20.0GB logical
次の例では、mkpartfs はサイズ 127GB の新しい fat32 パーティションを作成します。
(parted) mkpartfs logical fat32 372737 500000 WARNING: you are attempting to use parted to operate on (mkpartfs) a file system. parted's file system manipulation code is not as robust as what you'll find in dedicated, file-system-specific packages like e2fsprogs. We recommend you use parted only to manipulate partition tables, whenever possible. Support for performing most operations on most types of file systems will be removed in an upcoming release.
以下に示すように、パーティション番号 9 が正常に作成されました。
(parted) print Model: ATA WDC WD5000BPVT-7 (scsi) Disk /dev/sda: 500GB Sector size (logical/physical): 512B/4096B Partition Table: msdos Number Start End Size Type File system Flags 1 1049kB 106MB 105MB primary fat16 diag 2 106MB 15.8GB 15.7GB primary ntfs boot 3 15.8GB 266GB 251GB primary ntfs 4 266GB 500GB 234GB extended 5 266GB 316GB 50.0GB logical ext4 6 316GB 324GB 7999MB logical linux-swap(v1) 7 324GB 344GB 20.0GB logical ext4 8 344GB 364GB 20.0GB logical 9 373GB 500GB 127GB logical fat32 lba (parted)
7. resize を使用して、あるサイズから別のサイズにパーティションのサイズを変更します
次の例に示すように、resize parted コマンドを使用して、パーティションのパーティション サイズを増減できます。
(parted) resize 9 WARNING: you are attempting to use parted to operate on (resize) a file system. parted's file system manipulation code is not as robust as what you'll find in dedicated, file-system-specific packages like e2fsprogs. We recommend you use parted only to manipulate partition tables, whenever possible. Support for performing most operations on most types of file systems will be removed in an upcoming release. Start? [373GB]? 373GB End? [500GB]? 450GB
上に示したように、parted コマンドは、何か危険なこと (例:rm、resize、mkfs) を行おうとすると常に警告します。
パーティション 9 のサイズは、実際には 127GB から 77GB に縮小されています。以下に示すように、印刷コマンドを使用して、パーティションのサイズが適切に変更されていることを確認してください。
(parted) print Model: ATA WDC WD5000BPVT-7 (scsi) Disk /dev/sda: 500GB Sector size (logical/physical): 512B/4096B Partition Table: msdos Number Start End Size Type File system Flags 1 1049kB 106MB 105MB primary fat16 diag 2 106MB 15.8GB 15.7GB primary ntfs boot 3 15.8GB 266GB 251GB primary ntfs 4 266GB 500GB 234GB extended 5 266GB 316GB 50.0GB logical ext4 6 316GB 324GB 7999MB logical linux-swap(v1) 7 324GB 344GB 20.0GB logical ext4 8 344GB 364GB 20.0GB logical 9 373GB 450GB 77.3GB logical fat32 lba
parted では、印刷用の「p」、選択用の「sel」など、コマンドの明確な省略形を入力できます。
8. cp を使用してあるパーティションから別のパーティションにデータをコピーする
cp コマンドを使用して、あるパーティションのデータ全体を別のパーティションにコピーできます。また、コピーを開始する前にコピー先のコンテンツが削除されることにも注意してください。ソース パーティションからのデータを保持するのに十分なサイズが宛先パーティションにあることを確認してください。
「p」コマンド (印刷) を使用して、現在のパーティション レイアウトを表示します。
(parted) p Model: ATA WDC WD5000BPVT-7 (scsi) Disk /dev/sda: 500GB Sector size (logical/physical): 512B/4096B Partition Table: msdos Number Start End Size Type File system Flags 1 1049kB 106MB 105MB primary fat16 diag 2 106MB 15.8GB 15.7GB primary ntfs boot 3 15.8GB 266GB 251GB primary ntfs 4 266GB 500GB 234GB extended 5 266GB 316GB 50.0GB logical ext4 6 316GB 324GB 7999MB logical linux-swap(v1) 7 324GB 344GB 20.0GB logical ext4 8 344GB 364GB 20.0GB logical ext2 9 373GB 450GB 77.3GB logical fat32 lba 10 461GB 500GB 39.2GB logical ext2
コピーを実行する前に、ソース パーティションと宛先パーティションの両方をアンマウントすることをお勧めします。この例では、コンテンツをパーティション 8 からパーティション 10 にコピーします。
以下は、コピー前の対応するパーティションの内容を示しています。
# mount /dev/sda8 /mnt # cd /mnt # ls -l total 52 -rw-r--r-- 1 root root 0 2011-09-26 22:52 part8 -rw-r--r-- 1 root root 20 2011-09-26 22:52 test.txt # umount /mnt # mount /dev/sda10 /mnt # cd /mnt # ls -l total 48 -rw-r--r-- 1 root root 0 2011-09-26 22:52 part10
以下に示すように、parted cp コマンドを使用して、パーティション 8 をパーティション 10 にコピーします。
(parted) cp 8 10 WARNING: you are attempting to use parted to operate on (cp) a file system. parted's file system manipulation code is not as robust as what you'll find in dedicated, file-system-specific packages like e2fsprogs. We recommend you use parted only to manipulate partition tables, whenever possible. Support for performing most operations on most types of file systems will be removed in an upcoming release. growing file system... 95% (time left 00:38)error: block relocator should have relocated 517
コピー後のパーティション 10 の内容を以下に示します。以下に示すように、パーティション 8 の内容がパーティション 10 にコピー (上書き) されます。
# mount /dev/sda10 /mnt # cd /mnt # ls -l total 52 -rw-r--r-- 1 root root 0 2011-09-26 22:52 part8 -rw-r--r-- 1 root root 20 2011-09-26 22:52 test.txt
注: 異なるファイル システム (たとえば、src :ext2 と dst :ext4) のパーティション間でコピーする場合、宛先パーティションのファイル システムは、実際にはソース パーティションのファイル システム (つまり :ext2) に変換されます。
9. rm を使用して選択したハードディスクからパーティションを削除
不要または未使用のパーティションを削除するには、parted rm コマンドを使用して、以下に示すようにパーティション番号を指定します。
(parted) rm Partition number? 9 (parted)
上記の rm コマンドの後、パーティション番号 9 が削除され、以下に示すように、print コマンドによって /dev/sda ディスク内の使用可能なパーティションのリストが表示されます。
(parted) print Model: ATA WDC WD5000BPVT-7 (scsi) Disk /dev/sda: 500GB Sector size (logical/physical): 512B/4096B Partition Table: msdos Number Start End Size Type File system Flags 1 1049kB 106MB 105MB primary fat16 diag 2 106MB 15.8GB 15.7GB primary ntfs boot 3 15.8GB 266GB 251GB primary ntfs 4 266GB 500GB 23GB extended 5 266GB 316GB 50.0GB logical ext4 6 316GB 324GB 7999MB logical linux-swap(v1) 7 324GB 344GB 20.0GB logical ext4 8 344GB 364GB 20.0GB logical ext2