udev 201

/ LPIC / Comment[0]
udev(userspace device management)とは接続されたデバイスに対して自動でデバイスファイルを作成する仕組み

udevの対応付けルールファイルが置かれているディレクトリ
/etc/udev/rules.d/

SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:00:00:00:00:00", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"



デバイスの情報を表示
# udevadm コマンド コマンドオプション

コマンド
 info sysfsかudevデータベースに問い合わせる
 trigger カーネルからイベントを問い合わせる
 settle 終了するイベントキューを待つ
 control udevデーモンをコントロールする
 monitor udevイベントをリスニングする
 test シミュレーション実行

オプション
 -a 指定したデバイスの上位のデバイスについても表示
 -o sysfs上のデバイスを指定
 -n デバイスファイルを指定
 -q 表示する情報の種類を指定 name,symlink,path,env,all

# udevadm info -q name -n /dev/sda1



デバイスファイルには2種類ある
ブロックデバイス  バッファがあるランダムアクセス可能なデバイス HDD、RAMディスクなど
キャラクタデバイス バッファが無いランダムアクセスが不可能なデバイス キーボード、マウスなど

ブロックデバイス
$ ls -l /dev/sd*
brw-rw---- 1 root disk 8, 0 2010-05-11 17:13 /dev/sda
brw-rw---- 1 root disk 8, 1 2010-05-11 17:13 /dev/sda1
brw-rw---- 1 root disk 8, 2 2010-05-11 17:13 /dev/sda2
brw-rw---- 1 root disk 8, 3 2010-05-11 17:13 /dev/sda3
brw-rw---- 1 root disk 8, 4 2010-05-11 17:13 /dev/sda4
brw-rw---- 1 root disk 8, 16 2010-05-11 17:13 /dev/sdb
brw-rw---- 1 root disk 8, 17 2010-05-11 17:13 /dev/sdb1


8,*があるフィールドはメジャー番号,マイナー番号というもので、デバイスを認識するためにあらかじめ定められている番号

キャラクタデバイス
$ ls -l /dev/{ttyS*,input/mice}
crw-r----- 1 root root 13, 63 2010-05-11 17:13 /dev/input/mice
crw-rw---- 1 root dialout 4, 64 2010-05-11 17:13 /dev/ttyS0
crw-rw---- 1 root dialout 4, 65 2010-05-11 17:13 /dev/ttyS1
crw-rw---- 1 root dialout 4, 66 2010-05-11 17:13 /dev/ttyS2
crw-rw---- 1 root dialout 4, 67 2010-05-11 17:13 /dev/ttyS3



カーネルが認識してるデバイスを確認
キャラクタデバイスとブロックデバイスに分けられて表示される
$ cat /proc/devices
Character devices:
1 mem
4 /dev/vc/0
4 tty
4 ttyS
5 /dev/tty
5 /dev/console
5 /dev/ptmx
6 lp
7 vcs
10 misc
13 input
14 sound
21 sg
29 fb
61 BaseRemoteCtl
81 video4linux
99 ppdev
108 ppp
116 alsa
128 ptm
136 pts
180 usb
:

Block devices:
1 ramdisk
259 blkext
7 loop
8 sd
9 md
11 sr
65 sd
66 sd
67 sd
68 sd
69 sd
70 sd
71 sd
128 sd
:
関連記事

コメント

:
:
:
:
:
管理人のみ表示を許可