「Fdisk」の版間の差分
(同期) |
(他言語へのリンクを追加) |
||
6行目: | 6行目: | ||
[[en:Fdisk]] |
[[en:Fdisk]] |
||
[[es:Fdisk]] |
[[es:Fdisk]] |
||
+ | [[fa:Fdisk]] |
||
[[ru:Fdisk]] |
[[ru:Fdisk]] |
||
+ | [[tr:Fdisk]] |
||
[[zh-hans:Fdisk]] |
[[zh-hans:Fdisk]] |
||
{{Related articles start}} |
{{Related articles start}} |
||
143行目: | 145行目: | ||
== パーティションの移動 == |
== パーティションの移動 == |
||
− | {{Warning|パーティションはオフラインでのみ移動できます。パーティションを移動するには、パーティション全体をディスクに書き直す必要があるため、時間がかかり、潜在的に危険な操作になります。バックアップを強くお勧めします |
+ | {{Warning|パーティションはオフラインでのみ移動できます。パーティションを移動するには、パーティション全体をディスクに書き直す必要があるため、時間がかかり、潜在的に危険な操作になります。バックアップを強くお勧めします! '' sfdisk '' のマニュアルページによると、 'この操作は危険を伴います"}} |
− | パーティションを移動するには、パーティションを移動する場所に空き領域が必要です。必要に応じて、パーティションとその上のファイルシステムを縮小することでスペースを空けることができます。 [[Parted#パーティションの縮小]] を参照してください。パーティションを再配置するには |
+ | パーティションを移動するには、パーティションを移動する場所に空き領域が必要です。必要に応じて、パーティションとその上のファイルシステムを縮小することでスペースを空けることができます。 [[Parted#パーティションの縮小]] を参照してください。パーティションを再配置するには: |
# echo '+''sectors'',' | sfdisk --move-data ''device'' -N ''number'' |
# echo '+''sectors'',' | sfdisk --move-data ''device'' -N ''number'' |
||
− | ここで、{{ic|''sectors''}} はパーティションを移動するセクターの数です |
+ | ここで、{{ic|''sectors''}} はパーティションを移動するセクターの数です({{ic|''+''}} はパーティションを前方に移動することを示します)、{{ic|''device''}} はパーティションを保持するデバイスであり、{{ic|''number''}} はパーティション番号です。ディスクの中央または先頭に新しいパーティションを追加する場合は、パーティションの番号を付け直す必要があることに注意してください。 [[#パーティションのソート]] または ''fdisk'' の "extrafunctionality" モードを参照してください。 |
== ヒントとテクニック == |
== ヒントとテクニック == |
2023年5月17日 (水) 02:56時点における版
関連記事
util-linux fdisk はダイアログで操作するコマンドラインユーティリティで、ハードディスク上のパーティションテーブルやパーティションを作成・編集することができます。ハードディスクはパーティションに分割され、その分割情報はパーティションテーブルに記述されます。
この記事では fdisk(8) とその派生である sfdisk(8) ユーティリティについて解説します。
目次
インストール
fdisk とその派生ユーティリティは、util-linux パッケージにより提供されています。このパッケージは base メタパッケージの依存パッケージです。
パーティションの確認
デバイス上のパーティションテーブルとパーティションを確認するには、以下を実行します (デバイスの名前 /dev/sda
は適当に置き換えてください):
# fdisk -l /dev/sda
パーティションテーブルのバックアップとリストア
ハードディスクに変更を加える前に、ドライブのパーティションテーブルとパーティションスキームをバックアップしておくと良いでしょう。また、バックアップを利用して、同じパーティションレイアウトを多数のドライブにコピーすることもできます。
GPT と MBR のどちらでも sfdisk の -d
/--dump
オプションを使ってデバイスのパーティションレイアウトをファイルに保存できます。/dev/sda
デバイスを保存するには以下のコマンドを実行:
# sfdisk -d /dev/sda > sda.dump
1 GiB の ext4 パーティションが存在する場合、ファイルは以下のようになります:
sda.dump
label: gpt label-id: AAAAAAAA-BBBB-CCCC-DDDD-EEEEEEEEEEEE device: /dev/sda unit: sectors first-lba: 34 last-lba: 1048576 /dev/sda1 : start=2048, size=1048576, type=0FC63DAF-8483-4772-8E79-3D69D8477DE4, uuid=BBF1CD36-9262-463E-A4FB-81E32C12BDE7
レイアウトを復元するには次を実行:
# sfdisk /dev/sda < sda.dump
パーティションテーブルとパーティションの作成
パーティショニングするときはまずパーティションテーブルを作成します。その後、望ましいパーティションスキームにあわせてパーティションを作成します。MBR と GPT のどちらを使用するかについてはパーティションテーブルを見てください。
最初に、パーティションテーブルとレイアウトをバックアップすることを推奨します。
最近のバージョンの fdisk はデフォルトの表示単位にシリンダーを使用する古いシステムのサポートや、MS-DOS との互換性をデフォルトで廃止しています。fdisk は自動的に全てのパーティションを2048セクタ (1024 KiB、1セクタあたり 512 B) にアライメントします。なので、すべての Advanced Format HDD と、全てではないにしても大半の SSH と互換性があるはずです。つまりデフォルト設定で正しいアライメントが行われます。
fdisk を使うには、変更/編集したいブロックデバイスの名前を指定してプログラムを実行してください。以下の例では /dev/sda
を使います:
# fdisk /dev/sda
これで、fdisk の対話が開始され、コマンドを実行してパーティショニングを行うことができます。
新しいテーブルの作成
新しいパーティションテーブルを作成して既存のパーティションデータを全て消去するには、MBR パーティションを作成する場合はプロンプトに o
と、GUID パーティションテーブル(GPT)を作成する場合は g
入力します。既存のテーブルを使用する場合は、何もせず次に進んで下さい。
パーティションの作成
n
コマンドで新しいパーティションを作成します。MBR パーティションタイプ、パーティション番号、開始セクタ、終わりのセクタを入力します。
パーティションタイプ
MBR を使用している場合、fdisk は MBR パーティションタイプを尋ねてきます。プライマリパーティションを作成したい場合は p
と、拡張パーティションを作成したい場合は e
と入力してください。プライマリパーティションは4つまで作成できます。
fdisk はパーティションタイプ ID を尋ねずに、デフォルトで 'Linux filesystem' を使用します。これは後で変更できます。
パーティション番号
パーティション番号とは、パーティションに割り当てられる番号です。例えば、ディスク /dev/sda
上の番号1
が割り当てられたパーティションは /dev/sda1
となります。パーティション番号は、ディスク上のパーティションの順番と必ずしも一致しているとは限りません。この場合、パーティションをソートすることができます。
パーティション番号は、fdisk によって提案されたデフォルトの番号を使うことをおすすめします。
先頭と末尾のセクタ
パーティションの先頭のセクタは、セクタ番号を使って絶対値で指定しなければなりません。パーティションの末尾のセクタは、セクタ番号で絶対値で指定するか、あるいはキビバイト(K
)、メビバイト(M
)、ギビバイト(G
)、テビバイト(T
)、ペビバイト(P
)単位で指定することができます。
パーティションの末尾のセクタの位置の指定方法は以下の2通りあります:
- ディスクの先頭からの絶対値。例えば、先頭のセクタとして
40M
を指定すると、ディスクの先頭から 40 MiB の位置となります。 +size
や-size
のように、サイズの前に +/- を付けると相対値を指定できます。例えば、デフォルトの先頭セクタから 2 GiB の点を指定するには+2G
、利用可能な末尾のセクタから 200 MiB の点を指定するには-200M
。
何も入力しないで Enter
キーを押すと、先頭セクタの一番広いブロックから末尾セクタと同じブロックの終末までが指定されます。
必要なパーティションが揃うまで、この手順を繰り返してください。
パーティションタイプの変更
それぞれのパーティションには、1つのタイプが割り当てられます。MBR では、パーティション ID を使います。GPT では、パーティションタイプ GUID を使います。
パーティションのタイプを変更するには、t
を入力してください。デフォルトでは Linux filesystem
が使用され、ほとんどのユースケースで問題ないはずです。
パーティションを起動可能にする
a
を入力することで、MBR パーティションを起動可能にすることができます。
ディスクに変更を書き込む
ディスクにテーブルを書き込んで終了するには w
コマンドを使います。
パーティションの移動
パーティションを移動するには、パーティションを移動する場所に空き領域が必要です。必要に応じて、パーティションとその上のファイルシステムを縮小することでスペースを空けることができます。 Parted#パーティションの縮小 を参照してください。パーティションを再配置するには:
# echo '+sectors,' | sfdisk --move-data device -N number
ここで、sectors
はパーティションを移動するセクターの数です(+
はパーティションを前方に移動することを示します)、device
はパーティションを保持するデバイスであり、number
はパーティション番号です。ディスクの中央または先頭に新しいパーティションを追加する場合は、パーティションの番号を付け直す必要があることに注意してください。 #パーティションのソート または fdisk の "extrafunctionality" モードを参照してください。
ヒントとテクニック
パーティションのソート
パーティションの合間に新しいパーティションを作成したり、パーティションを削除した場合に、以下のコマンドでパーティションを並び替えられます。
# sfdisk -r /dev/sda
永続的なブロックデバイスの命名を使っていない場合、パーティションを並び替えたら /etc/fstab
や /etc/crypttab
ファイルを修正する必要があるかもしれません。