web-dev-qa-db-ja.com

パーティションを作成するときにpartedがファイルシステムタイプを必要とするのはなぜですか?また、そのアクションはmkfs.ext4のようなユーティリティとどのように異なりますか?

パーティションにext4ファイルシステムを配置することを目的としてディスクをパーティション分割しています。私はチュートリアルに従っています。これは、ext4ファイルシステムを指定する必要がある2つの別々のステップがあることを示しています。 1つ目は、パーティションを作成するときに分割されます。

Sudo parted -a opt /dev/sda mkpart primary ext4 0% 100%

2つ目は、ファイルシステム自体を作成するmkfs.ext4ユーティリティによるものです。

Sudo mkfs.ext4 -L datapartition /dev/sda1

私の質問は、これらのツールのそれぞれが正確に何をしているのかということです。パーティションを作成するときにext4が必要なのはなぜですか?パーティション自体の定義は、構成ファイルシステムからある程度独立していると思いました。

(私がフォローしているチュートリアルはここにあります: https://www.digitalocean.com/community/tutorials/how-to-partition-and-format-storage-devices-in-linux

1
David M

パーティションは type を持つことができます。パーティションタイプは、「このパーティションは特定の機能を提供するように指定されています」のようなヒントです。多くのパーティションタイプは特定のファイルシステムに関連付けられていますが、関連付けは必ずしも厳密または明確であるとは限りません。タイプ0x07のパーティションにはMicrosoft互換のファイルシステム(例:FAT、NTFS、exFAT)があり、0x83にはネイティブLinuxファイルシステム(例:ext2/3/4)があると予想できます。

ファイルシステムの作成は、実際には完全に独立した直交するステップです(ファイルシステムはどこにでも配置できます。箱から出してすぐに機能することを期待しないでください)。

partedは、「ディスク全体の一部」のようにパーティションを定義します。実際にはパーティションタイプを知る必要はありません(パラメータはオプションです)。ただし、使用中は、パーティションタイプがファイルシステムを正しく示唆していない場合、ファイルシステムの自動検出および以降の自動マウントが正しく機能しない可能性があります。

パーティションは、厳密に線形のストレージスペースです。 mkfs.ext4 antのバリ​​アントはファイルシステムを作成するため、名前付きファイルを便利に保存できる実際のディレクトリツリーを作成できます。

4
Hermann