Apparently the user knut has additional rw permissions here. But how did he get them?
O usuário "knut" está logado no console? Em muitos sistemas Linux recentes, o udev concede acesso ao dispositivo com base em quem está logado atualmente.
(Aqui "console" significa a tela principal + teclado anexado diretamente ao computador - se é modo de texto ou gráfico não tem relevância.)
Versões mais antigas (incluindo Debian 6) possuem regras com TAGS+="udev-acl"
e obtêm o status da sessão do ConsoleKit, se presente, pam_console de outra forma. Verifique who
, o conteúdo de /var/run/console
e talvez ck-list-sessions
. Esses mecanismos são relativamente simples - se o usuário estiver logado no "console", eles terão acesso, caso contrário, não.
Distribuições usando systemd recebem as mesmas informações de systemd-logind e usam a tag "uaccess"
. Além do console, o logind suporta adicionalmente sistemas "multi-sede", onde vários usuários podem trabalhar em vários monitores de uma só vez, cada um tendo uma porta USB designada.
Se você quiser ignorar isso e conceder acesso a outros usuários, poderá usar as permissões tradicionais de "grupo" para isso - escreva uma regra do udev atribuindo seu dispositivo a GROUP="camera-users"
e adicione pessoas a esse grupo.
After toggling the camera on and off ones it actually gets mounted on another device:
ulf@term13:~(0)$ lsusb | grep Nikon Bus 001 Device 093: ID 04b0:0428 Nikon Corp.
No Linux (e geralmente Unixes), 'mount' refere-se a anexar um sistema de arquivos a algum diretório ("/ dev / sda2 é montado em / boot" - o sistema de arquivos que / dev / sda2 contém foi tornado acessível em / boot) . Enquanto isso, os números de dispositivos USB são apenas números, atribuídos sequencialmente; isso não constitui 'montar' o dispositivo.