udev の設定

udev での名前割り当て.

起動して hotplug が走る度に, 有線 NIC と無線 NIC とに割り当てられる eth0 と eth1 が入れ変わったりそのままだったり, とえらく難儀をしていた, ので.

udev つかってんだし, 名前を付け変えたりできないモンか, と.

を参考に.

udevinfo を実行して情報をゲット.

 $ sudo  udevinfo -a -p /sys/class/net/eth0 | grep address

みたいな感じで. 必要なのは MAC アドレスの書き方 .

 ATTR{address}=="MAC アドレスが出るハズ"

みたいなの. これをトリガにする.

設定ファイルの修正

/etc/udev/rules.d/z25_persitent-net.rules に

# 有線
SUBSYSTEM=="net", DRIVERS=="?*", ATTRS{address}=="有線の MAC", NAME="eth0"

# PCI device 0x8086:0x4223 (ipw2200)
SUBSYSTEM=="net", DRIVERS=="?*", ATTRS{address}=="無線の MAC", NAME="wlan0"

として再起動.

# iwconfig

とかしてみると, 有線が eth0, 無線が wlan0 になっている.

ついでに外付け HDD と iPod の名前付けもしておく.

# udevinfo -a -p `udevinfo -q path -n /dev/sda` | grep ATTRS{serial}
# udevinfo -a -p `udevinfo -q path -n /dev/sda` | grep ATTRS{products}

あたりで使う serial number を入手して,

#usb HDD
SUBSYSTEMS=="usb", ATTRS{serial}=="HDD の serial number", KERNEL=="sd*", NAME="%k", SYMLINK+="usbhd%n"
#Apple iPod
SUBSYSTEMS=="usb", ATTRS{serial}=="ipod の serial number", KERNEL=="sd*", NAME="%k", SYMLINK+="ipod%n"

なんてのを /etc/udev/local.rules あたりに書いておいて, /etc/udev/rules.d/ 10-local.rules として symlink を作成しておく. で再起動

これでどんな時でも

できる.

/dev/ipod 等の実態は symlink. /dev/sda などに動的に symlink される. 便利.


参考文献