Saya memiliki skala USB, USB HID. Saat ini, ketika dicolokkan, izin hanya memungkinkan superuser untuk mengaksesnya. Bagaimana saya bisa mengkonfigurasi udev agar orang lain mengakses perangkat ini? Saya memiliki ID vendor dan produk, tetapi saya ingin mencocokkannya berdasarkan tipe HID.
Saat ini, saya mengalami kesulitan menemukan aturan yang ada yang berlaku untuk ini (saya menerima "hidraw" di /lib/udev/rules.d
dan /etc/udev/rules.d
, di antara hal-hal lain).
sumber
.rules
ekstensi. File dengan.conf
ekstensi tidak akan berfungsi.lsusb -vvv
untuk mendapatkan idProduct dan idVendorlsusb
adalah awal yang baik untuk melihat apa yang terhubung dan ID.idVendor
danidProduct
kecocokan tampaknya peka terhadap huruf besar-kecil , jadi IDDA77
tidak berfungsi untuk saya tetapida77
tidak. (Handy diagnostikudevadm info --attribute-walk /dev/bus/usb/008/023
:, bus 008 perangkat 023 contoh saya;lsusb
untuk Anda.) Setelah menambahkan aturan,sudo udevadm control --reload-rules
dan kemudiansudo udevadm trigger
hindari reboot: perubahan terjadi beberapa detik setelah itu. ATTR vs ATTRS tidak membuat masalah. Saya berkas .rules berbunyi:SUBSYSTEM=="usb", ATTR{idVendor}=="da77", ATTR{idProduct}=="d12e", GROUP="users", MODE="0666"
.Hanya untuk ringkasannya:
Anda dapat memfilter untuk:
Dan gunakan:
== Bandingkan untuk kesetaraan.
! = Bandingkan untuk ketimpangan.
= Tetapkan nilai ke kunci. Kunci yang mewakili daftar diatur ulang dan hanya nilai tunggal ini yang ditetapkan.
+ = Tambahkan nilai ke kunci yang menyimpan daftar entri.
: = Tetapkan nilai pada kunci akhirnya; larang perubahan selanjutnya.
Anda dapat memberikan perangkat tertentu jalur baru tertentu di / dev / ...
Contoh:
Hasil dalam:
Anda dapat mengakses perangkat melalui '/ dev / hiddevx' atau melalui '/ dev / myhid' dengan mudah, setiap pengguna dalam grup 'cdrom' dapat membaca dari perangkat. Pemilik 'user28' dapat membaca dan menulis.
atau paling sederhana:
Hasil dalam: Setiap pengguna dapat mengakses setiap hiddevice dari Vendor 0x16c0
Untuk detailnya lihat: Documents
sumber
:=
bukan untuk perbandingan. Documents mengatakan, "Tetapkan nilai pada suatu kunci akhirnya; larang perubahan selanjutnya."Jika Anda perlu mengubah (seperti saya)
ttyACM0
izin, ini adalah pengaturan saya:Gagal ketika saya mencoba menentukan vendor dan ID produk. Saya tidak yakin mengapa.
sumber
Jika ini merupakan perangkat HIDRAW, Anda harus melakukannya
di mana X adalah nomor perangkat hid, misalnya hidraw0. Anda dapat melakukan
untuk melihat daftar :) Atau lakukan saja
untuk mengatur semua perangkat hidraw, mungkin tidak disarankan.
sumber
Pembaruan / klarifikasi Ubuntu 18.04:
Jawaban Kees Cook dekat tetapi membutuhkan 2 perubahan untuk berfungsi dalam 18,04 (rilis saat ini dan hanya satu yang saya uji ini aktif).
Tetapi dengan nilai hex idVendor dan idProduct Anda.
sumber
ATTRS
baik untuk vendor dan ID produk? Maka contoh kode Anda salah (sama seperti Anda menyatakan dua baris kemudian).