devtmpfsをマウントするには/ etc / fstabを使用する必要がありますか?

devtmpfsをマウントするには/ etc / fstabを使用する必要がありますか?

私はRaspberry Pi 3(モデルB +)の5.6.4-v8 +カーネルに基づいてaarch64用のLinuxに似たオペレーティングシステムを開発しています。

カーネル構成オプションは次のとおりです。

CONFIG_DEVTMPFS=y
CONFIG_DEVTMPFS_MOUNT=y

システムが効果的にインストールされていることを確認できます。

dmesg | grep devtmpfs
[0.071] devtmpfs: initialized
[2,653] devtmpfs: mounted

また、システムが次の場所にインストールされていることを確認してください。/開発者:

df -h
Filesystem Size Used Avail Used%  Mounted on
devtmpfs   424M    0  424M    0%  /dev.

一方、ファイルには/etc/fstab次の行があります。

devtmpfs   /dev   devtmpfs   mode=0755,nosuid   0   0

この行を削除してテストを実行し、結果は次のとおりです。開発者ファイルシステム問題なくインストール/開発者。したがって、ファイルシステムを次のようにマウントする必要はないようです。システムテーブル、カーネルがこれを処理しそうだからです。

必ず含める必要があります開発者ファイルシステムfstabにマウントしますか?

ありがとうございます!

答え1

実際、場合によってはカーネルが自動的にマウントされますdevtmpfs/dev

カーネルをビルド時に設定すると、CONFIG_DEVTMPFS_MOUNT結果のカーネルはカーネルが初期ルートファイルシステムとしてinitramfsを使用しない限り、ルートファイルシステムをマウントしてから自動的にマウントしようとします。ydevtmpfs/dev

これは完全にオプションの機能です。あなたはそれを着ていたし、Vincentはテスト中にそれをオフにしたようだった。 (またはVincentはinitramfsを使用しています。)

バラよりdrivers/base/Kconfig詳細については。

答え2

私が知る限り、カーネルはdevtmpfsを自動的にマウントしません。これは「手動で」(起動スクリプトの1つに次の内容が含まれています)またはfstabを介してユーザースペースで実行する必要がありますmount -t devtmpfs none /dev

私のカスタムLinuxシステム(raspberry Zero / 4および86_64)は/ etc / fstabベースのインストールメカニズムを使用しません。mount -t devtmpfs none /dev/etc/profileからこのコマンドを削除しても、/devディレクトリはまだ空です。

したがって、あなたの質問に答えるには、fstabにdevtmpfsマウントを含める必要はありませんが、ユーザー(カーネルではないユーザー)が直接マウントする必要があります。

関連情報