web-dev-qa-db-ja.com

空のfstabでマウントはどのように機能しますか?

Arch Linuxインストールガイドから:

/ etc/fstabファイルには、静的ファイルシステム情報が含まれています。これは、ストレージデバイスとパーティションをマウントしてシステム全体に統合する方法を定義します。特定のデバイスまたはパーティションをマウントするときに使用するオプションを決定するために、mountコマンドによって読み取られます。

これが、インストールプロセスのステップとしてそのファイルを生成する必要がある理由です。

それでは、インストールプロセスの最初の時点でmountがまだ空の場合、その時点でfstabがルートパーティションを/mntにマウントすることはどのように可能ですか。まだ生成されていませんか?

7
user1301428

/etc/fstabデフォルト設定を定義します。デフォルトのファイルシステム/マウントポイント/オプションの組み合わせが一覧表示されます。ファイルシステムをマウントするときに、完全なパラメータとオプションを指定しない場合、mountfstabからオプションを読み取ります。たとえば、次のように入力できます

mount /dev/sda1

mountはそれをどこに置くかを知っているので、入力することができます

mount /mnt/sda1

そしてmountはそれを見つける場所を知っています。しかし、あなたが独特になりたいなら、あなたはタイプすることができます

mount /dev/sda1 /mnt/sdq17

そしてmountがそれを行います。同様に、コマンドラインでファイルシステムを読み取り専用でマウントするように指定できます。逆に、/etc/fstabで、ファイルシステムをデフォルトで読み取り専用でマウントするように指定し、コマンドラインでそれをオーバーライドすることができます。また、/etc/fstabにまったく含まれていないファイルシステムを手動でマウントすることもできます。

また、/etc/fstabは、起動時に自動的にマウントされるファイルシステムを識別します。指定されたデフォルトオプションでマウントされます。

ただし、mount /dev/sda1 /mnt/sda1と入力できるのと同じように、プログラムは完全な引数リストを使用してmountを実行でき、(原則として)mount/etc/fstabにアクセスする必要がまったくありません。また、オペレーティングシステムは、ルートパーティションがどこにあるかを自動的に認識し、ブートプロセスの早い段階でルートファイルシステムを自動的にマウントしますvery。実際、マウントを実行する前にOSが/etc/fstabにアクセスできる必要がある場合、/etcにアクセスできないため、鶏が先か卵が先かという問題が発生しますntilルートファイルシステムがマウントされます。ルートパーティションは、/etc/fstabが存在する他の理由で/etc/fstabに含まれています—チェックするもののリストをfsckに提供します。

10
Scott