P: Como eu concedo permissões para / dev / video * e / dev / snd / * para um segundo usuário, user2 quando logado interativamente como user1?
Eu escrevi um wrapper para o sudo que clona as configurações do XAuthority, e me permite executar comandos de desktop como um usuário diferente. A parte de trabalho é simplesmente executar o sudo com os parâmetros fornecidos:
sudo -u user2 $somecommand
No entanto, o usuário2 não pode usar os dispositivos de som ou vídeo, pois o udev só os concedeu ao usuário conectado1. É possível conceder estas permissões após o fato com um destes comandos:
sudo setfacl -m group:user2:rwx /dev/video0 /dev/snd/*
sudo setfacl -m user:user2:rwx /dev/video0 /dev/snd/*
Esse código precisa ser executado a cada sessão, mas eu gostaria que essas permissões fossem concedidas a ambos, usuário1 e usuário2, quando o usuário1 inicia uma nova sessão do gerenciador de exibição.
O aplicativo para isso é executar programas pouco confiáveis como navegador, cliente de chat, agente de email e clientes de webcam e voz como usuários separados, enquanto ainda permite que esses programas acessem a área de trabalho e os dispositivos de vídeo e som. Eu continuamente acabo executando o bate-papo do Skype sem recursos de som e vídeo: (