Setting up the udev Rules¶
To be able to access your devices without root privileges, nitropy requires the Nitrokey udev rules. On many distributions, they can be installed from a package:
Arch Linux: Nitrokey-udev-rules
Debian: Nitrokey-udev (Debian 14 Forkystä lähtien)
NixOS: Nitrokey-udev-rules (aseta
hardware.nitrokey.enablearvoksitrue)Ubuntu: Nitrokey-udev (Ubuntu 26.10 Stonking Stingray -versiosta lähtien)
Jos jakelupakettisi ei sisällä sääntöjä, voit asentaa ne manuaalisesti:
wget https://raw.githubusercontent.com/Nitrokey/nitrokey-udev-rules/main/41-nitrokey.rules
sudo mv 41-nitrokey.rules /etc/udev/rules.d/
sudo chown root:root /etc/udev/rules.d/41-nitrokey.rules
sudo chmod 644 /etc/udev/rules.d/41-nitrokey.rules
Kun olet asentanut säännöt, sinun on ladattava ne uudelleen:
sudo udevadm control --reload-rules && sudo udevadm trigger
Jos et vieläkään pääse käsiksi laitteeseesi, yritä uudelleen käynnistettyäsi järjestelmän uudelleen.
Rajoitukset¶
Suositelluissa udev-säännöissä käytetään mekanismia uaccess oikeuksien dynaamiseen määrittämiseen. Tämä mekanismi edellyttää systemd ja toimii vain paikallisesti kirjautuneiden käyttäjien kanssa (eli ei SSH-kirjautumisia tai vastaavia).
Vianmääritys¶
Jos udev-sääntöjen asentaminen ei ratkaissut ongelmaa, voit selvittää ongelman seuraavien ohjeiden avulla:
Unplug the Nitrokey.
Käynnistä tietokone uudelleen, jotta udev-säännöt tulevat voimaan.
Suorita komento
sudo dmesg --followja liitä Nitrokey. Tarkkaile sen jälkeen näkyviin tulevia lokiviestejä. Näkyviin pitäisi tulla seuraavanlainen rivi:[46561.825062] hid-generic 0003:20A0:42B2.000F: hiddev97,hidraw3: USB HID v1.11 Device [Nitrokey Nitrokey 3] on usb-0000:00:14.0-3.4.1/input1
Selvitä hidraw-laitteen nimi lokiviestistä. Tässä tapauksessa se on
hidraw3.Tarkista hidraw-laitteen käyttöoikeudet suorittamalla komento
getfacl /dev/$name, jossa$nameon hidraw-laitteen nimi. Käyttäjälläsi pitäisi olla käyttöoikeudetrw. Esimerkiksi käyttäjällemyuser:$ getfacl /dev/hidraw3 getfacl: Removing leading '/' from absolute path names # file: dev/hidraw3 # owner: root # group: root user::rw- user:myuser:rw- group::--- mask::rw- other::---
Jos käyttäjälläsi ei ole tarvittavia käyttöoikeuksia, suorita komento
loginctl list-sessions. Näkyviin pitäisi tulla yksi istunto käyttäjällesi, jolla on käyttöoikeus, esimerkiksi:$ loginctl list-sessions SESSION UID USER SEAT LEADER CLASS TTY IDLE SINCE 1 1000 myuser seat0 1487 user - no - 2 1000 myuser - 1495 manager - no - 2 sessions listed.
Lisäohjeet udev-sääntöjen vianmääritykseen löytyy täältä: ` <https://github.com/Nitrokey/pynitrokey/issues/167#issuecomment-1024921046>` __.