PythonでUSBデバイスを操る方法。
pyusbなどをインストールしたはいいものの、
usb.core.USBError: [Errno 13] Access denied (insufficient permissions)
などでエラーが出てしまう。sudoをつければいいのだが、例えばcron化するときなどで、一般ユーザーのほうが手堅い場合がある。
そういう場合はudevの編集を行う。
/etc/udev/rules.dのフォルダに
10-any_name_is_ok.rules
というファイルをつくる。
注意が必ず.rulesという拡張子にすること。そうじゃないと読み込んでくれない。
lsusbなどで、デバイス情報を追加し、以下を記載する。
SUBSYSTEM=="usb", ATTR{idVendor}=="067b", ATTR{idProduct}=="2303", MODE="0666", GROUP="plugdev"
後はudevの再起動をすれば良い。
sudo gpasswd -a username plugdev
sudo chmod a+r /etc/udev/rules.d/10-any_name_is_ok.rules
sudo udevadm control –reload-rules
sudo restart udev
などを行っておくこと
株式会社OctOpt
コンピューターサイエンス会社OctOptの技術公式ブログ
等々力 康弘
@rocky_house