GNU/Linux >> Linux の 問題 >  >> Linux

LinuxでPartedを使用してディスクパーティションを作成および管理する

LinuxおよびUnixライクなシステムでハードドライブをパーティション分割するために、fdisk、cdiskなどの多くのユーティリティが存在します。この記事では、Linuxでpartedユーティリティを使用してパーティションを作成し、ディスクパーティションを管理する方法(パーティションのサイズ変更、削除)に焦点を当てます。

Partedとは何ですか?

GNU Partedは、LinuxおよびUnixシステムでパーティションテーブルを作成および操作するためのコマンドラインスイートです。 Partedを使用すると、パーティションの作成、サイズ変更、削除、ディスク使用量の再編成、データのコピー、ディスクイメージの作成を行うことができます。

Partedにはライブラリが含まれていますlibparted 、およびコマンドラインフロントエンド別れ 、スクリプトでも使用できます。 Partedは、データ損失の可能性を最小限に抑えるように設計されています。停電などの予期しない状況でのデータ損失を回避するために、多くの安全チェックを実行します。

Partedは、最新のLinuxオペレーティングシステムにデフォルトで付属している無料のオープンソースプログラムです。

LinuxでPartedをインストール

Partedには、すべてのLinuxディストリビューションがインストールされています。ディストリビューションでpartedが利用できない場合は、次のコマンドを実行してインストールできます。

PartedをAlpineLinuxにインストールするには、次のコマンドを実行します。

 $ sudo apk add parted 

Arch Linux、EndeavourOS、およびManjaro Linuxでは、次のコマンドを実行します。

 $ sudo pacman -S parted 

Debian / Ubuntuおよびその派生物については、次のコマンドを実行します。

 $ sudo apt -y install parted 

Fedora、RHEL、AlmaLinux、およびRocky Linux:

 $ sudo dnf install parted -y 

適切なデバイスの選択

partedを使用する前に最初に注意することは、パーティションを作成するディスクです。ディスク名を引数として渡さずにpartedコマンドを実行すると、最初に検出されたブロックデバイスを取得して使用します。

  $ sudo parted  GNU Parted 3.2 / dev /sdaWelcomeを使用してGNUParted!コマンドのリストを表示するには、「help」と入力します。(parted)

ヘッズアップ: rootユーザーとしてsudoまたはswitchを使用し、partedコマンドを実行する必要があります。

特定のデバイスを使用するには、デバイスを渡す必要があります(例:/dev/sdc )partedコマンドの引数として。

  $ sudo parted / dev / sdc  GNU Parted 3.2 / dev /sdcWelcomeを使用してGNUParted!コマンドのリストを表示するには、「help」と入力します。(parted)

または、partedユーティリティ内から、"select"を使用して異なるドライブを切り替えることができます。 コマンド。

(parted)select / dev / sdb 
/ dev/sdbの使用
(別れ)/ dev/sdcを選択します
/ dev/sdcの使用

分割ヘルプセクションの印刷

分割されたコマンドのリストを取得するには、helpを実行します コマンド。

(別れ)ヘルプ align-check TYPE N TYPE(min | opt)のパーティションNをチェックします。alignmenthelp [COMMAND]一般的なヘルプを出力するか、COMMANDのヘルプmklabel、mktable LABEL-TYPE新しいディスクラベル(パーティションテーブル)を作成しますmkpart PART-TYPE [FS-TYPE ]STARTENDパーティション名を作成するNUMBERNAMEnameパーティションNUMBERasNAME print [devices | free | list、all | NUMBER]パーティションテーブル、使用可能なデバイス、空き領域、見つかったすべてのパーティション、または特定のパーティションを表示します終了プログラムレスキューSTART ENDは、STARTおよびENDの近くで失われたパーティションをレスキューします。resizepartNUMBERENDサイズ変更パーティションNUMBERRMNUMBERパーティションの削除NUMBERデバイスの選択disk_setを編集するデバイスの選択FLAGSTATE選択したデバイスのFLAGの変更disk_toggle[FLAG]トグルt選択したデバイスセットのFLAGの状態NUMBERFLAGSTATEパーティションのFLAGを変更しますNUMBERtoggle[NUMBER[FLAG]]パーティションのFLAGの状態を切り替えますNUMBERunitUNITデフォルトのユニットをUNITに設定しますバージョンGNUのバージョン番号と著作権情報を表示します別れました

これらの各コマンドには、個別のヘルプセクションがあります。たとえば、printのサポートオプションを取得する場合 コマンド次のコマンドを実行できます。

(別れ)ヘルプ印刷

パーティションテーブルを印刷する

使用可能なすべてのブロックデバイスのパーティションテーブルを表示する場合は、ターミナルから次のコマンドを実行します。

 $ sudo parted -l <​​/ pre> 

partedユーティリティ内のパーティションテーブルを表示するには、"print"を使用します 指図。

print コマンドは、ディスクモデル、ディスクサイズ、パーティションスキーム、最後にパーティションテーブルなどの情報を提供します。これは新しいディスクであるため、パーティションは作成されません。

ディスクのどのパーティションスキームを取得するには、printのいずれかを実行できます。 分割されたコンソール内でコマンドを実行するか、ターミナルから直接次のコマンドを実行します。

 $ sudo parted / dev / sdc print | grep -i tablePartitionテーブル: gpt  

"devices"を渡すことで、ブロックデバイス名だけを取得できます 印刷コマンドの引数として。

(分割)印刷デバイス 
/ dev / sdc(21.5GB)
/ dev / sda(53.7GB)
/ dev / sdb(21.5GB)
/ dev / sr0(61.1MB)

"free"を渡すと、ディスクに残っている空き容量を取得できます。 printへの引数として コマンド。

(別れ)無料で印刷 モデル:ATA VBOX HARDDISK(scsi)Disk / dev / sdc:21.5GBセクターサイズ(論理/物理):512B / 512Bパーティションテーブル:gptDiskフラグ:番号開始終了サイズファイルシステム名フラグ17.4kB21.5GB21.5GB空き容量
>

parted内のすべてのデバイス情報を印刷するには、"list,all"を渡します。 printへの引数として コマンド。

(parted)print list、all 

ラベルのないディスク

ドライブを使用してパーティションを作成する前に、特定のパーティションスキームを使用するようにドライブにラベルを付ける必要があります。ラベルのないディスクでprintコマンドを実行すると、エラーが表示されます。

(別れ)印刷 
エラー:/ dev / sdc:認識されないディスクラベル
モデル:ATA VBOX HARDDISK(scsi)
ディスク/dev/ sdc:21.5GB
セクターサイズ(論理/物理):512B / 512B
パーティションテーブル:不明
ディスクフラグ:

ラベルを作成するには、mklabelのいずれかを使用できます またはmktable 指図。サポートされているラベルのリストがわからない場合は、「help mklabel」を実行してください。 "または"help mktable "。

このドライブにGPTスキームを使用するようにラベルを付けます。 MBRパーティションスキームが必要な場合は、 msdosを使用してください 。

(parted)mklabel gpt 

ここで、printを実行すると もう一度コマンドを実行すると、ラベルが表示されます。

注意: このコマンドを実行する前に、正しいディスクを使用していることを確認してください。このコマンドは、ディスク内のパーティション全体をそのデータで消去できるためです。

Partedを使用して新しいパーティションを作成する

パーティションを作成するには、mkpartを使用する必要があります 指図。

mkpartコマンドを実行する前に、オプションのリストに関する詳細を提供するヘルプ情報を確認してください。

ヘルプmkpart

サイズがそれぞれ10GBのパーティションを2つ作成します。最初のパーティションを作成しましょう。

(別れ) mkpart  パーティション名? []? プロジェクト ファイルシステムの種類は? [ext2]?  ext4  始める?  1  終わり?  10GB  

このステップはインタラクティブになります。

  • パーティションの名前を選択してください。
  • ファイルシステムの種類を選択します。デフォルトでは、ext2に設定されています 。
  • ディスクの開始位置を選択します。 MB、GBで指定できます。ここでは1として指定したので、1MBから開始します。
  • ディスクの終了位置を選択します。ここでは、 10GB 与えられます。

printを実行します コマンドを実行すると、作成されたパーティションを確認できます。

(別れ)印刷 モデル:ATA VBOX HARDDISK(scsi)Disk / dev / sdc:21.5GBセクターサイズ(論理/物理):512B / 512Bパーティションテーブル:gptDiskフラグ:番号開始終了サイズファイルシステム名フラグ1 1049kB10.0GB9999MBプロジェクト

2番目のパーティションを作成しましょう。すべてのインタラクティブ入力を組み合わせて、引数としてmkpartに渡すことができます。 コマンド。

(parted)mkpart project1 ext4 10001MB 19999MB 

作成したパーティションはまだ保存されていません。 「partprobe」を使用する必要があります "行ったパーティションテーブルの変更についてカーネルに通知するコマンド。

quit」と入力して、partedユーティリティを終了します "そしてpartprobeを実行します コマンド。

 $ sudo partprobe 

パーティションの削除

rmを使用してパーティションを削除できます 指図。 rm コマンドは、引数としてパーティション番号を受け入れ、そのパーティションを削除します。

 help rm 

パーティションがアクティブで、すでにファイルシステムがマウントされている場合は、最初にデータをクリーンアップし、ファイルシステムをアンマウントしてから、パーティションを削除することをお勧めします。

使用中にパーティションを削除しようとすると、パーティションを削除するように確認するメッセージが表示され、再起動後に変更が有効になるというエラーがスローされます。 「Ignore」を選択します "。

(別れ) rm 1  警告:パーティション/ dev/sdc1が使用されています。続行してもよろしいですか?はい/いいえ? はい エラー:/ dev / sdcのパーティション1が書き込まれましたが、カーネルに変更を通知できませんでした。おそらく、パーティションが使用されているためです。その結果、古いパーティションは引き続き使用されます。さらに変更を加える前に、今すぐ再起動する必要があります。無視/キャンセルしますか? 無視 

パーティションへの名前のタグ付け

name」を使用できます "パーティションの名前を変更するか、名前を割り当てるコマンド。name コマンドは、パーティション番号を最初の引数として受け入れ、その後に新しい名前が続きます。

(parted)name 2 p1 

ここでは、パーティション2の名前を project1から変更しています。 p1へ 。

パーティションのサイズを変更する

resizepartを使用して、パーティションを縮小または拡張できます 指図。コマンドresizepart パーティションIDを引数として取ります。サイズを尋ねられます(終了?)。

作成した最初のパーティションを縮小してみましょう。パーティションIDは1 パーティションサイズは10GB 。ここでは、パーティションを 5GBに縮小しています 。

(別れ)サイズ変更パート1  
終わり? [10.0GB]? 5 GB
警告:パーティションを縮小するとデータが失われる可能性があります。続行してもよろしいですか?
はい・いいえ? はい

2番目のパーティションに5GBのスペースがあり、さらに2GBを追加して7GBにしたいのです。

(別れ)サイズ変更パート2  終わり? [15.0GB]? 17GB 

ここで、パーティションテーブルを印刷すると、最初のパーティションが5 GBに縮小され、2番目のパーティションが7GBに拡張されます。

番号開始終了サイズファイルシステム名前フラグ11049kB5000MB 4999MB ext4 p1 2 10.0GB 17.0GB 7000MB ext4 p2 

パーティションフラグの変更

setを使用する コマンドを使用すると、パーティションにフラグを割り当てることができます。サポートされているフラグのリストを取得するには、次のhelpを実行します コマンド。

(別れ)ヘルプセット

パーティションをスワップパーティションとしてタグ付けする場合は、次のようにコマンドを実行する必要があるとします

 set [partition name] [flag] [ON / OFF](parted)set 1 swap ON 

ファイルシステムの作成

これまで、partedを使用してさまざまなディスクパーティション操作を実行する方法を学習しました。ご存知かもしれませんが、パーティションの使用を開始するには、パーティションをフォーマットしてマウントする必要があります。

lsblkを実行して作成されたパーティションを確認できます コマンド。

 $ lsblk 

タイプext4のファイルシステムを作成しましょう /dev/sdc1の場合 次のコマンドを実行します。

 $ mkfs.ext4 / dev / sdc1 

次に、ファイルシステムを任意のディレクトリにマウントし、パーティションを使用します。

 $ mount / dev / sdc1 / mnt / 
  $ df -h / dev / sdc1  使用されたファイルシステムのサイズ使用率使用率/dev/ sdc1 4.6G 19M 4.3G 1%/ mnt 

結論

この記事では、partedユーティリティを使用してLinuxのPartedプログラムでディスクパーティションを作成および管理する方法について説明しました。また、新しく作成したパーティションをext4ファイルシステムでフォーマットしてシステムにマウントする方法も確認しました。

RHELバージョン8以降、RedHatはfdiskの代わりにpartedユーティリティを使用することを提案しています。したがって、RHCSA認定の準備をしている人であれば、この記事は非常に役立ちます。

Linuxデスクトップユーザー向けに、 GPartedと呼ばれるpartedのGUIバージョンがあります。 。 Gpartedについては、別の記事で詳しく説明します。しばらくお待ちください!


Linux
  1. ディスクパーティションを作成、サイズ変更、レスキューするための8つのLinux「Parted」コマンド

  2. LinuxでのFdiskコマンド(パーティションの管理)

  3. parted で新しいパーティションを作成し、ハード ドライブをフォーマットするにはどうすればよいですか?

  1. LinuxでGNUPartedを使用してドライブをパーティション分割する

  2. TestDiskでパーティションとファイルを回復する

  3. Linuxでpartedを使用してパーティションを作成および管理する

  1. DiskPartでディスクを管理する

  2. Parted GPT を使用して Linux で 2TB サイズのパーティションを作成する方法

  3. Linux から exFAT パーティションを作成してフォーマットする