カーネルに次のオプションがあることに気づきました:CONFIG_DEVTMPFS
Device Drivers -> Generic Driver Options -> Maintain devtmpfs to mount at /dev
そして、それはDebianディストリビューションカーネル3.2.0-4-AMD64
でデフォルトで有効になっていることがわかります
このオプションがもたらす違いを理解しようとしています。このオプションを使用しない場合、/dev
はtmpfs
としてマウントされ、このオプションを使用すると、devtmpfs
としてマウントされます。それ以外は特に違いはありません。
help
もそれを明確にしませんでした:
これにより、起動の早い段階でtmpfs/ramfsファイルシステムインスタンスが作成されます。このファイルシステムでは、カーネルドライバーコアは、割り当てられたメジャー/マイナー番号を持つすべての登録済みデバイスに対するデフォルトの名前とアクセス許可を持つデバイスノードを維持します。
完全に機能する/ devディレクトリを提供します。通常、ここでudevが最上位で実行され、権限を管理し、意味のあるシンボリックリンクを追加します。
非常に限られた環境では、それ以上の支援なしで十分な機能の/ devを提供する可能性があります。また、シンプルなレスキューシステムを可能にし、動的なメジャー/マイナー番号を確実に処理します。
誰かがCONFIG_DEVTMPFS
と標準の/dev
の違いを説明できますか?
devtmpfs
は、カーネルによって自動生成されたデバイスノードを備えたファイルシステムです。つまり、udevを実行したり、静的な/dev
レイアウトを作成したり、追加の不要な存在しないデバイスノードを作成したりする必要はありません。代わりに、カーネルは既知のデバイスに基づいて適切な情報を入力します。
一方、標準の/dev
処理では、udev
、追加のデーモンの実行、または/dev
でのデバイスノードの静的な作成が必要です。