パーティションを作成するときにpartedにファイルシステムの種類が必要なのはなぜですか。

パーティションを作成するときにpartedにファイルシステムの種類が必要なのはなぜですか。

パーティションにext4ファイルシステムを持つためにディスクをパーティション化しています。私はext4ファイルシステムを指定するために必要な2つの別々のステップがあるというチュートリアルに従っています。 1つ目は、パーティションの作成時にpartedを使用することです。

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

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

ファイルシステムの作成は実際にはまったく別の直交ステップです(必要な場所にファイルシステムを配置できます。ただし、すぐに機能するとは思わないでください)。

partedパーティションを「フルディスクの一部」として定義します。実際、パーティションの種類を知る必要はありません(このパラメータはオプションです)。ただし、使用中のパーティションタイプがファイルシステムを正しくプロンプトしない場合、ファイルシステムの自動検出とその後のサイレントインストールが正しく機能しない可能性があります。

パーティションは厳密に線形なストレージスペースです。そして、そのmkfs.ext4バリエーションは、名前付きファイルを便利に保存できる実際のディレクトリツリーを持つようにファイルシステムを作成します。

答え2

mkfs.something既存のパーティションにファイルシステムを作成します。あなたの場合:

  • ドライブの最初のパーティションを探す/dev/sda
  • その上に新しいファイルシステムを作成します。ファイルシステムタイプext4
  • ラベルを貼るdatapartition

しかし、もし

  • パーティションが存在しません
  • 存在しますが、分割タイプが使用できないタイプに設定されました。ファイルシステムタイプext4。 ㅏ分割入力するとシステムに「通知」します。ファイルシステム(タイプ)パーティションで使用できます。パーティションタイプを設定してもファイルシステムは作成されず、特定のファイルシステムタイプが可能であることだけを通知します。たとえば、パーティションタイプ0x83は、ファイルシステムタイプext2、ext3、ext4、btrfs...には適していますが、fat、ntfs...には適していません。

そもそも走る理由partedは終わらないことを終わらせたいからだmkfs.ext4。あなたの場合は、パーティションを作成し、/dev/sdaタイプをサポートされているタイプに設定しますext4。これで、実行に必要なすべてが準備されました。mkfs.ext4

parted多くのオプションがあることがわかります。あなたの場合、これらのオプションは、partedパーティションテーブルがディスク上の最良のレイアウトに設定されているのか、パーティションがディスク全体をいっぱいにするのか、論理パーティションではなくプライマリパーティションであるべきかを示します。これらの選択の理由はまったく異なる問題を解決します。他の選択をすることはまったく問題ありませんが、多くのユースケースで行われた選択は実際には「通常の」選択です。

関連情報