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 (sākot ar Debian 14 Forky)
NixOS: Nitrokey-udev-rules (iestatiet
hardware.nitrokey.enableuztrue)Ubuntu: Nitrokey-udev (sākot ar Ubuntu 26.10 Stonking Stingray)
Ja jūsu distribūcijā šie noteikumi nav iekļauti, tos varat instalēt manuāli:
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
Pēc noteikumu instalēšanas tie ir jāpārlādē:
sudo udevadm control --reload-rules && sudo udevadm trigger
Ja joprojām nevarat piekļūt savai ierīcei, mēģiniet vēlreiz pēc sistēmas pārstartēšanas.
Ierobežojumi¶
Ieteicamajos udev noteikumos tiek izmantots mehānisms uaccess, lai dinamiski piešķirtu pareizās atļaujas. Šim mehānismam ir nepieciešams systemd, un tas darbojas tikai ar lietotājiem, kuri ir pieteikušies lokāli (tas nozīmē, ka nav iespējama pieteikšanās caur SSH vai līdzīgiem līdzekļiem).
Problēmu novēršana¶
Ja problēma netika atrisināta, instalējot udev noteikumus, varat veikt šādus soļus, lai izpētītu problēmu:
Unplug the Nitrokey.
Pārstartējiet datoru, lai nodrošinātu, ka udev noteikumi ir aktivizēti.
Izpildiet komandu ` `` sudo dmesg –follow` un pieslēdziet Nitrokey. Sekojiet līdzi pēc tam parādītajiem žurnāla ziņojumiem. Jums vajadzētu redzēt rindu, kas izskatās aptuveni šādi:
[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
Nosakiet hidraw ierīces nosaukumu pēc žurnāla ziņojuma. Šajā gadījumā tas ir
hidraw3.Pārbaudiet hidraw ierīces atļaujas, izpildot komandu „ ` ” getfacl /dev/$name`, kur
$nameir hidraw ierīces nosaukums. Jums vajadzētu redzēt savu lietotāju ar atļaujāmrw. Piemēram, lietotājammyuser:$ 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::---
Ja jūsu lietotājam nav atbilstošas atļaujas, izpildiet komandu
loginctl list-sessions. Jums vajadzētu redzēt vienu sesiju jūsu lietotājam ar licenci, piemēram:$ 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.
Papildu soļi udev noteikumu kļūdu novēršanai ir aprakstīti šeit: ` <https://github.com/Nitrokey/pynitrokey/issues/167#issuecomment-1024921046>` __.