Se você quiser algo assim, precisará considerar todos os dispositivos como suspeitos e, a qualquer momento, qualquer dispositivo inserido solicitará algo que apenas o proprietário desse dispositivo possa saber. Você não pode ignorar isso para um dispositivo que acredita ter sido aprovado, pois o usuário que inseriu o dispositivo não precisa ser a mesma pessoa.
Existe uma maneira de detectar dispositivos desconhecidos elegantemente no udev?
udev
não entende "dispositivos desconhecidos": ele entende todos ou nenhum dispositivo USB / firewire devido a uma entrada em /dev/
. Desconhecido para udev
significaria que o dispositivo não funciona nesse sistema. E ID_VENDOR_ID e ID_MODEL_ID não permitem que você veja uma diferença entre dois dispositivos da mesma marca e modelo.
Um método possível:
Veja link para um script básico executado na inserção de um dispositivo. Isso forçará qualquer dispositivo a mostrar um menu onde o usuário precisa verificar se ele pode ter acesso.
A regra no link ...
ACTION=="add", RUN+="/usr/bin/exdongle run /media/%k-%E{dir_name}"
funcionará em qualquer dispositivo que tentar montar em /media/
e iniciará o script "exdongle" (o script pode precisar de alguns ajustes, pois possui um aviso de isenção de responsabilidade).
O que você considera "desconhecido" é um dispositivo específico conhecido pelo Linux como USB. Portanto, se houver suporte a USB, todos os dispositivos USB serão tratados igualmente. Os dispositivos têm um fornecedor e um ID de produto, mas eles são exclusivos por marca / modelo e não por dispositivo USB.
O único dispositivo USB que possui um ID exclusivo é um dongle ( link ). Esses tendem a vir com software para verificação (portanto, também não para sistemas sem cabeça), mas você pode salvar a identificação em um arquivo e criar um script como acima para testar um conjunto conhecido de IDs.