USBシリアル接続時に自動で書込権限を付与する(ubuntu,/dev/ttyACM0)

経緯

ubuntuでUSBシリアルデバイス等を扱う際、挿入時に書き込み・実行権限が付与されないため、挿入のたびに毎回、

sudo chmod 777 /dev/ttyACM0

として、いちいち権限をつけてやる必要がある。
特にロボット関係の機材はUSBシリアルデバイスが多く、抜き差しのたびに上記を実行するのはとても面倒であったため、自動で書き込み・実行権限を付与する方法を調べた。

書き込み、実行権限の自動付与

まずは、以下コマンドで設定ファイルを開く。

sudo emacs /lib/udev/rules.d/50-udev-default.rules


開いたファイルの(WAS)の行をISのように書き換える。
実行権限が必要ない場合は、"0666"とした方が良いかもしれない。

(WAS)
KERNEL=="tty[A-Z]*[0-9]|pppox[0-9]*|ircomm[0-9]*|noz[0-9]*|rfcomm[0-9]*", GROUP="dialout"

(IS)
KERNEL=="tty[A-Z]*[0-9]|pppox[0-9]*|ircomm[0-9]*|noz[0-9]*|rfcomm[0-9]*", GROUP="dialout", MODE="0777"

この変更をするだけで、次回以降、USBシリアルデバイスを開いた際に自動で権限が付与される。便利。