diary/Kojima

・udev 関連のメモ

hotplug agent を外した状態でudev-122 のデフォルトのルールファイルを使うと, /dev/hdc 用のドライバ(ide-cd と cdrom)とかもロードはされるものの, /dev/hdc のパーミッションが 50-udev-default.rules で 666 にしても 640 になってしまうので少し調べてみた.

当初は 50-udev-default.rules の書き方がまずいのかなぁ,,とあれこれ試行錯誤してみたのだけど, どうもこのファイルでは cdrom なドライバがロードされないようなので,結局ルールファイルを総当たり的に 動かしながら調べるハメに陥ってしまった...

あれこれいじっているうちに udev-122 のデフォルトのルールファイルでは 80-drivers.rules の

DRIVER!="?*", ENV{MODALIAS}=="?*", RUN{ignore_error}+="/sbin/modprobe $env{MODALIAS}

の設定がないと cdrom のドライバがロードされないらしいことに気づく.

テスト中の Plamo-4.5 では hotplug agent の murasaki を外そうとしているのだけど, どうやら murasaki を外してしまうと cold plug のデバイス用のモジュールのロードは udev だけではうまく行かない模様.

あまり詳しくは調べてないのだけど,IDE な CD-ROM の場合,ide-cd をロードして, cd-rom をロードして,iso9660-fs をロードして,,みたいな階層構造になっているので, udev だけではうまくいかないのかなぁ,,という印象.

とりあえず,rc.S の中でインストーラと同等の cold plug な処理を追加したら 50-udev-default.rules の設定でパーミッションが与えられるようになった模様. 一応,これができれば,後はカーネル自体の modprobe 機能と udev で何とかなりそうだけど, murasaki に依存している Planet 回りはかなりイジらないといけないだろうなぁ..

その意味では,deprecated といっても hotplug agent を残しておくという選択もありかも知れないなぁ.



トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2021-12-17 (金) 16:35:41