「Parted」の版間の差分
Kusanaginoturugi (トーク | 投稿記録) (関連記事の追加) |
(→新しいパーティションテーブルの作成: 同期) |
||
(3人の利用者による、間の14版が非表示) | |||
2行目: | 2行目: | ||
[[Category:システムリカバリ]] |
[[Category:システムリカバリ]] |
||
[[Category:コマンド]] |
[[Category:コマンド]] |
||
+ | [[Category:GNU]] |
||
+ | [[de:GParted]] |
||
[[en:GNU Parted]] |
[[en:GNU Parted]] |
||
− | [[ |
+ | [[es:Parted]] |
− | [[ |
+ | [[ru:Parted]] |
+ | [[zh-hans:Parted]] |
||
{{Related articles start}} |
{{Related articles start}} |
||
{{Related|fdisk}} |
{{Related|fdisk}} |
||
11行目: | 14行目: | ||
{{Related articles end}} |
{{Related articles end}} |
||
− | GNU Parted はパーティションテーブルを作成したり操作するためのプログラムです。GUI フロントエンド |
+ | GNU Parted はパーティションテーブルを作成したり操作するためのプログラムです。GParted は GUI フロントエンドです。 |
== インストール == |
== インストール == |
||
+ | 次のパッケージのいずれかを [[インストール]] して下さい: |
||
− | {{Pkg|parted}} パッケージを[[インストール]]してください。グラフィカルインターフェイスを使いたい場合、''parted'' のグラフィカルフロントエンドである {{pkg|gparted}} パッケージを[[インストール]]してください。 |
||
+ | |||
+ | * {{Pkg|parted}} – コマンドラインのみ |
||
+ | * {{Pkg|gparted}} – ''parted'' のグラフィカルフロントエンド |
||
+ | |||
+ | {{Note|1=[[Wayland]] で GParted を実行するには、{{Pkg|xorg-xhost}} のオプションの依存関係が必要です。[http://gparted-forum.surf4.info/viewtopic.php?id=17682]}} |
||
== 使用方法 == |
== 使用方法 == |
||
23行目: | 31行目: | ||
# parted device |
# parted device |
||
− | {{ic|''device''}} は |
+ | ここでの、{{ic|''device''}} は、({{ic|/dev/sda}}、{{ic|/dev/nvme0n1}}、{{ic|mmcblk0}} などの [[ブロックデバイス]] です。{{ic|''device''}} 引数を省略すると、''parted'' は必要なデバイスを推測しようとします。 |
=== コマンドラインモード === |
=== コマンドラインモード === |
||
68行目: | 76行目: | ||
=== 新しいパーティションテーブルの作成 === |
=== 新しいパーティションテーブルの作成 === |
||
+ | {{Warning|データが存在するディスク上に新しいパーティション テーブルを作成すると、ディスク上のすべてのデータが消去されます。 これがあなたがやりたいことであることを確認してください。}} |
||
− | パーティションを作成したことがない場合やパーティションテーブルのタイプを変更したいときはデバイスのパーティションテーブルを(再)作成する必要があります。スクラッチからパーティションスキームを再構築したい場合もデバイスのパーティションテーブルを再作成すると良いでしょう。 |
||
+ | {{Tip| |
||
− | パーティションテーブルを(再)作成したいデバイスを開いてください: |
||
+ | * パーティションを分割する前に、NVMe ドライブと Advanced Format のハードディスクドライブが [[Advanced Format|最適な論理セクタサイズ]] を使用していることを確認してください。 |
||
+ | * SSD でパーティション分割する前に、[[ソリッドステートドライブ/メモリセルの消去|メモリセルを消去]] することを検討してください。}} |
||
+ | |||
+ | パーティションを作成したことがない場合やパーティションテーブルのタイプを変更したいときはデバイスのパーティションテーブルを(再)作成する必要があります。スクラッチからパーティションスキームを再構築したい場合もデバイスのパーティションテーブルを再作成すると良いでしょう。 |
||
+ | |||
+ | パーティションテーブルを(再)作成したいデバイスを開いてください: |
||
# parted /dev/sd''x'' |
# parted /dev/sd''x'' |
||
84行目: | 98行目: | ||
=== パーティションスキーム === |
=== パーティションスキーム === |
||
− | デバイスを分割するパーティションの数と容量、どのディレクトリをパーティションにマウントするか (マウントポイント) 決めます。必要なパーティションについては[[パーティショニング#パーティション |
+ | デバイスを分割するパーティションの数と容量、どのディレクトリをパーティションにマウントするか (マウントポイント) 決めます。必要なパーティションについては[[パーティショニング#パーティションスキーム]]を見てください。 |
以下のコマンドを使ってパーティションを作成できます: |
以下のコマンドを使ってパーティションを作成できます: |
||
156行目: | 170行目: | ||
(parted) mkpart primary ext3 24GiB 100% |
(parted) mkpart primary ext3 24GiB 100% |
||
− | == パーティションのリサイズ == |
+ | === パーティションのリサイズ === |
{{Warning|パーティションのサイズを変更するときはアンマウントして使用されてない状態にする必要があります。({{ic|/}} をマウントしているパーティションなど) アンマウントできない場合、ライブメディア環境などを使って下さい。}} |
{{Warning|パーティションのサイズを変更するときはアンマウントして使用されてない状態にする必要があります。({{ic|/}} をマウントしているパーティションなど) アンマウントできない場合、ライブメディア環境などを使って下さい。}} |
||
{{Note| |
{{Note| |
||
− | * {{ic|parted}} で |
+ | * {{ic|parted}} でできるのはパーティションの末端を移動することだけです。 |
* parted v4.2 現在、''resizepart'' を使うには [[#インタラクティブモード]] でなければなりません [https://bugs.launchpad.net/ubuntu/+source/parted/+bug/1270203]。 |
* parted v4.2 現在、''resizepart'' を使うには [[#インタラクティブモード]] でなければなりません [https://bugs.launchpad.net/ubuntu/+source/parted/+bug/1270203]。 |
||
* 以下の手順は ext2, ext3, ext4 ファイルシステムを使っているパーティションの場合です。 |
* 以下の手順は ext2, ext3, ext4 ファイルシステムを使っているパーティションの場合です。 |
||
167行目: | 181行目: | ||
パーティションを拡大したい場合、パーティションをリサイズしてからパーティション上のファイルシステムをリサイズする必要があります。逆に、縮小する場合は、データが消失しないように先にファイルシステムをリサイズしてから、パーティションのリサイズを行います。 |
パーティションを拡大したい場合、パーティションをリサイズしてからパーティション上のファイルシステムをリサイズする必要があります。逆に、縮小する場合は、データが消失しないように先にファイルシステムをリサイズしてから、パーティションのリサイズを行います。 |
||
− | === パーティションの拡大 === |
+ | ==== パーティションの拡大 ==== |
パーティションを拡大するには (parted のインタラクティブモード): |
パーティションを拡大するには (parted のインタラクティブモード): |
||
181行目: | 195行目: | ||
{{ic|''sdaX''}} は拡大するパーティションに、{{ic|''size''}} はパーティションの新しい容量に置き換えて下さい。 |
{{ic|''sdaX''}} は拡大するパーティションに、{{ic|''size''}} はパーティションの新しい容量に置き換えて下さい。 |
||
− | === パーティションの縮小 === |
+ | ==== パーティションの縮小 ==== |
パーティションのファイルシステムを縮小するには: |
パーティションのファイルシステムを縮小するには: |
||
206行目: | 220行目: | ||
=== アライメント === |
=== アライメント === |
||
+ | |||
+ | {{Warning|''parted'' は、パーティションの先頭のみアラインメントし、サイズはアライメントしません。これは dm-crypt/LUKS には十分ではありません。[[Advanced Format#パーティションのアライメント]] を参照してください。}} |
||
パーティションの作成時、''parted'' はパーティションのアライメントが正しくないと警告することがありますが、正しいアライメントについてのヒントは教えてくれません。例: |
パーティションの作成時、''parted'' はパーティションのアライメントが正しくないと警告することがありますが、正しいアライメントについてのヒントは教えてくれません。例: |
||
211行目: | 227行目: | ||
(parted) mkpart primary fat16 0 32M |
(parted) mkpart primary fat16 0 32M |
||
Warning: The resulting partition is not properly aligned for best performance. |
Warning: The resulting partition is not properly aligned for best performance. |
||
− | Ignore/Cancel? |
+ | Ignore/Cancel? |
この警告はパーティションの開始位置がアラインされていないことを意味しています。"Ignore" と入力すると先に進み、開始位置がわかるようにパーティションテーブルがセクタで表示され、警告がなくなるまで2の冪まで開始セクタが切り上げられてパーティションが削除/再作成されます。例えば、512B セクタのフラッシュドライブの場合、Parted は 2048 の倍数のセクタでパーティションを開始させようとします (1MiB アライメント)。 |
この警告はパーティションの開始位置がアラインされていないことを意味しています。"Ignore" と入力すると先に進み、開始位置がわかるようにパーティションテーブルがセクタで表示され、警告がなくなるまで2の冪まで開始セクタが切り上げられてパーティションが削除/再作成されます。例えば、512B セクタのフラッシュドライブの場合、Parted は 2048 の倍数のセクタでパーティションを開始させようとします (1MiB アライメント)。 |
||
221行目: | 237行目: | ||
== ヒントとテクニック == |
== ヒントとテクニック == |
||
− | === |
+ | === アライメントのチェック === |
+ | {{Warning|''parted'' は、パーティションの開始位置のアラインメントのみを検証し、サイズは検証しません。これは dm-crypt/LUKS には十分ではありません。[[Advanced Format#パーティションのアライメント]] を参照してください。}} |
||
− | Windows XP パーティションを別のドライブに移動してブートパーティションにしたい場合、パーティションを移動する前に以下のレジストリキーを削除することで GParted を使って簡単に Windows を維持することができます: |
||
− | |||
− | HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices |
||
− | |||
− | 詳しくは [http://gparted-forum.surf4.info/viewtopic.php?pid=8347#p8347 こちら] を参照してください。 |
||
− | |||
− | === アライメントのチェック === |
||
既にパーティション済みのディスクで ''parted'' を使ってデバイスのパーティションのアライメントを検証することができます。例えば、{{ic|/dev/sda}} の1番目のパーティションのアライメントを確認するには: |
既にパーティション済みのディスクで ''parted'' を使ってデバイスのパーティションのアライメントを検証することができます。例えば、{{ic|/dev/sda}} の1番目のパーティションのアライメントを確認するには: |
2024年8月3日 (土) 00:51時点における最新版
GNU Parted はパーティションテーブルを作成したり操作するためのプログラムです。GParted は GUI フロントエンドです。
目次
インストール
次のパッケージのいずれかを インストール して下さい:
使用方法
Parted には2つのモードがあります: コマンドラインモードとインタラクティブモードです。Parted は以下のように実行します:
# parted device
ここでの、device
は、(/dev/sda
、/dev/nvme0n1
、mmcblk0
などの ブロックデバイス です。device
引数を省略すると、parted は必要なデバイスを推測しようとします。
コマンドラインモード
コマンドラインモードでは、1つまたは複数のコマンドを指定します。例:
# parted /dev/sda mklabel gpt mkpart P1 ext3 1MiB 8MiB
インタラクティブモード
インタラクティブモードではパーティショニングを簡単に行うことができ、指定したデバイスにパーティショニングコマンドで自動的に適用されるためコマンドを繰り返し実行する必要がありません。
デバイスの操作を開始するには、以下のコマンドを実行:
# parted /dev/sdx
コマンドラインプロンプトがハッシュ (#
) から (parted)
に切り替わります。プロンプトの (parted)
は手動で入力する必要があるコマンドではありません。
利用可能なコマンドを確認するには:
(parted) help
パーティショニングが完了したときや、他のデバイスのパーティションテーブル・スキームを変更したい場合、以下のコマンドで parted を終了します:
(parted) quit
終了後、コマンドラインプロンプトは元の #
に戻ります。
コマンドにパラメータを指定しなかった場合、Parted はパラメータを尋ねます。例:
(parted) mklabel New disk label type? gpt
ラウンディング
多くのパーティショニングシステムには複雑な制約が存在するため、Parted はあなたが要求したことと少しだけ違うことをすることがあります (例えば、パーティションの開始位置を 10.4Mb から 10.352Mb に変えることがあります)。計算された値があまりにも食い違った場合、Parted はあなたに確認を行います。Parted が何をするのか詳しく知りたい場合は、"unit s" コマンドを使うことでパーティションの終末点がセクタで表示されます。また、細かく指定したい場合、セクタでパーティションの終末点を指定することもできます ("s" を後ろに付ける)。
parted-2.4 から、“MiB”, “GiB”, “TiB” などのように IEC バイナリ単位を使って開始地点や終末地点を指定したとき、parted はそれらの値をバイト数で指定したときと同じ数値として正確に扱います (つまり “B” を付けたときと同じ)。そのため曖昧な誤差は生じません。逆に、“4GB” のようにパーティションの開始位置を指定した場合、その地点よりも最大で 500MB ほど前だったり後ろだったりになることがあります。従って、パーティションを作成するときは、バイト (“B”) やセクタ (“s”) を使うか “MiB” のような IEC バイナリ単位を使うほうが良いでしょう。
パーティショニング
新しいパーティションテーブルの作成
パーティションを作成したことがない場合やパーティションテーブルのタイプを変更したいときはデバイスのパーティションテーブルを(再)作成する必要があります。スクラッチからパーティションスキームを再構築したい場合もデバイスのパーティションテーブルを再作成すると良いでしょう。
パーティションテーブルを(再)作成したいデバイスを開いてください:
# parted /dev/sdx
GUID Partition Table を新しく作成したい場合、以下のコマンドを使用します:
(parted) mklabel gpt
Master Boot Record/MS-DOS パーティションテーブルを新しく作成したい場合、以下のコマンドを実行:
(parted) mklabel msdos
パーティションスキーム
デバイスを分割するパーティションの数と容量、どのディレクトリをパーティションにマウントするか (マウントポイント) 決めます。必要なパーティションについてはパーティショニング#パーティションスキームを見てください。
以下のコマンドを使ってパーティションを作成できます:
(parted) mkpart part-type fs-type start end
part-type
はprimary
,extended
,logical
のどれかになります。MBR パーティションテーブルでのみ意味があります。fs-type
は使用するファイルシステムに一番適した識別子になります (help mkpart
と入力してリストを確認できます)。mkpart コマンドはファイルシステムを作成するわけではありません:fs-type
パラメータは単に parted が1バイトのコードを設定するのに使われ、コードによってブートローダーはパーティションに含まれているデータの種類をプレビューします。Wikipedia:Disk partitioning#PC partition types を参照。
start
はパーティションのデバイスにおける開始位置です。数字と 単位 で指定し、例えば1MiB
なら 1 MiB が開始位置になります。end
はデバイスの先頭からのパーティションの終末位置です (start
の値からの位置ではありません)。start
と同じ形式で指定し、例えば100%
はデバイスの末尾までを意味します (全ての領域を使用します)。
/boot
ディレクトリを含むパーティションには以下のコマンドを使ってパーティションを起動可能にします:
(parted) set partition boot on
partition
はフラグを立てるパーティションの数字に置き換えてください (print
コマンドの出力で数字を確認できます)。
UEFI/GPT の例
どのようにパーティショニングする場合でも、特殊な EFI System Partition が必要となります。
EFI システムパーティションを新しく作成する場合、以下のコマンドを使います (推奨サイズは 550 MiB):
(parted) mkpart ESP fat32 1MiB 551MiB (parted) set 1 esp on
後はどのようにパーティションするかはあなた次第です。残り領域の 100% を使うパーティションをひとつだけ作成する場合:
(parted) mkpart primary ext4 551MiB 100%
あるいは /
(20 GiB) と /home
(残り全ての領域) パーティションに分ける場合:
(parted) mkpart primary ext4 551MiB 20.5GiB (parted) mkpart primary ext4 20.5GiB 100%
もしくは /
(20 GiB), スワップ (4 GiB), /home
(残りの全ての領域) パーティションに分割する場合:
(parted) mkpart primary ext4 551MiB 20.5GiB (parted) mkpart primary linux-swap 20.5GiB 24.5GiB (parted) mkpart primary ext4 24.5GiB 100%
BIOS/MBR の例
ディスク領域を全て占有するプライマリパーティションをひとつだけ作る最小の構成の場合、以下のコマンドを使用:
(parted) mkpart primary ext4 1MiB 100% (parted) set 1 boot on
20 GiB の /
パーティションを作成してから残り領域全てを使って /home
パーティションを作成する例:
(parted) mkpart primary ext4 1MiB 20GiB (parted) set 1 boot on (parted) mkpart primary ext4 20GiB 100%
/boot
(100 MiB), /
(20 GiB), スワップ (4 GiB), /home
(残り全領域) パーティションに分割して作成する場合:
(parted) mkpart primary ext3 1MiB 100MiB (parted) set 1 boot on (parted) mkpart primary ext3 100MiB 20GiB (parted) mkpart primary linux-swap 20GiB 24GiB (parted) mkpart primary ext3 24GiB 100%
パーティションのリサイズ
パーティションを拡大したい場合、パーティションをリサイズしてからパーティション上のファイルシステムをリサイズする必要があります。逆に、縮小する場合は、データが消失しないように先にファイルシステムをリサイズしてから、パーティションのリサイズを行います。
パーティションの拡大
パーティションを拡大するには (parted のインタラクティブモード):
(parted) resizepart number end
number
は拡大したいパーティションの番号に置き換えて下さい。end
がパーティションの新しい末端です (古い末端よりも大きくする必要があります)。
次に、パーティションのファイルシステムを拡大します:
# resize2fs /dev/sdaX size
sdaX
は拡大するパーティションに、size
はパーティションの新しい容量に置き換えて下さい。
パーティションの縮小
パーティションのファイルシステムを縮小するには:
# resize2fs /dev/sdaX size
sdaX
は縮小するパーティションに、size
はパーティションの新しい容量に置き換えて下さい。
次にパーティションを縮小 (parted のインタラクティブモード):
(parted) resizepart number end
number
は縮小したいパーティションの番号に置き換えて下さい。end
がパーティションの新しい末端です (古い末端よりも小さくする必要があります)。
完了したら、util-linux の 'resizepart コマンドを使ってカーネルに新しい容量を通知します:
# resizepart device number size
device
はパーティションが存在するデバイスに、number
はパーティションの番号に、size
はパーティションの新しい容量に置き換えて下さい。
ワーニング
危険な操作をしようとすると Parted はかならず警告を表示します。ただし本質的に危険なコマンドについては別です (viz., rm, mklabel, mkpart)。
アライメント
パーティションの作成時、parted はパーティションのアライメントが正しくないと警告することがありますが、正しいアライメントについてのヒントは教えてくれません。例:
(parted) mkpart primary fat16 0 32M Warning: The resulting partition is not properly aligned for best performance. Ignore/Cancel?
この警告はパーティションの開始位置がアラインされていないことを意味しています。"Ignore" と入力すると先に進み、開始位置がわかるようにパーティションテーブルがセクタで表示され、警告がなくなるまで2の冪まで開始セクタが切り上げられてパーティションが削除/再作成されます。例えば、512B セクタのフラッシュドライブの場合、Parted は 2048 の倍数のセクタでパーティションを開始させようとします (1MiB アライメント)。
parted に適切なアライメントを計算して欲しいときは、開始位置に具体的な数字の代わりに 0% を指定してください。例えば巨大なひとつの ext4 パーティションを作成する場合:
(parted) mkpart primary ext4 0% 100%
ヒントとテクニック
アライメントのチェック
既にパーティション済みのディスクで parted を使ってデバイスのパーティションのアライメントを検証することができます。例えば、/dev/sda
の1番目のパーティションのアライメントを確認するには:
# parted /dev/sda (parted) align-check optimal 1 1 aligned