udev(userspace device management)とは,カーネルがパソコンへの接続を検出したデバイスに対して,動的に「デバイス・ファイル」を作成して割り当てるための仕組みです。

 Linuxは,システムに存在するあらゆるリソースをファイルとして扱うという特徴を持っています。デバイス・ファイルとは,周辺機器などのデバイスをファイルとして扱えるようにしたもので,/devディレクトリの下に格納されています。

 例えばマウスなら,/dev/input/miceといった名前のデバイス・ファイルが用意されています。デバイス・ファイルもファイルの一種なので,基本的に通常のファイルと同じように扱えます。ファイルの中身を表示するcatコマンドを使えば,マウスから入力された情報が画面に表示されるという具合です。逆に,デバイス・ファイルに対して書き込みをすることで,周辺機器を操作することも可能です。

 最近は,USB機器のように,ユーザーがシステム起動後に任意のタイミングで抜き挿し可能なタイプのデバイスが増えています。昔のLinuxでは,接続したい機器に対して,あらかじめデバイス・ファイルを用意しておくなどの作業が必要でした。udevを利用すれば,こうした煩わしさから開放され,周辺機器をより柔軟に利用可能になります。

 udevを使うには,どの周辺機器が接続されたら(カーネルから通知があったら),どんなデバイス・ファイルを作るかという「対応付けルール」(udev rules)を定めた設定ファイルを作成する必要があります。設定ファイルは,/etc/udev/rules.d以下などに,「50-udev.rules」という形式のファイル名で保存されています。