Como desativar a webcam interna?

10

Eu quero desativar a webcam interna do meu laptop executando o Ubuntu 13.10? Como sugerido aqui , eu já desabilitei os módulos do kernel relacionados, colocando-os na lista negra. Porém, após a reinicialização, os módulos são carregados. O que posso fazer para me livrar desses módulos?

Minha lista negra de módulos está /etc/modprobe.d/blacklist-webcam.confe fica assim:

blacklist videodev
blacklist videobuf2_core
blacklist videobuf2_memops
blacklist videobuf2_vmalloc
blacklist uvcvideo

Mas lsmodme dá (após a reinicialização):

Module                  Size  Used by
uvcvideo               80885  0 
videobuf2_vmalloc      13216  1 uvcvideo
videobuf2_memops       13362  1 videobuf2_vmalloc
videobuf2_core         40499  1 uvcvideo
videodev              133509  2 uvcvideo,videobuf2_core

Edit:
Quando eu faço um sudo modprobe -r uvcvideodos módulos se foram. Então eu poderia escrever um script para fazer isso. Mas eu não consideraria isso uma solução limpa ;-)

Marc Hauptmann
fonte
O que você ganha quando digita sudo modprobe -r uvcvideo?
Jobin
1
Onde você salvou seu arquivo da lista negra?
Braiam 5/05
@Braiam: a lista negra está /etc/modprobe.d. Ele também contém entradas para os módulos bluetooth da lista negra. Isso funciona, então o arquivo é interpretado.
Marc Hauptmann 5/05
Qual é o driver por trás do seu requisito para desativar a câmera? Sério, não tentando trollar. Se você deseja liberar recursos usados ​​pelos kmodules e outros enfeites, incrível. Se você deseja que a câmera não capture imagens / vídeo e não se preocupe com alguns kb ou memória, talvez seja isso que você precisa? pbs.twimg.com/media/BTWPnR_CYAA2pfM.jpg obtenha-os aqui eff.org/deeplinks/2013/04/…
0xSheepdog
Eu acho que eles estão sendo habilitados mais tarde pelas regras do udev. Não sei como você pode desativá-los.
Braiam 5/05

Respostas:

6
  • No seu blacklist.conf, mude blacklist videodevparainstall videodev /bin/false
  • update-initramfs -u
  • reboot

Para mais detalhes, consulte Lista negra de módulos do kernel no Arch Wiki :

Lista negra

A lista negra, no contexto dos módulos do kernel, é um mecanismo para impedir o carregamento do módulo do kernel. Isso pode ser útil se, por exemplo, o hardware associado não for necessário ou se o carregamento desse módulo causar problemas: por exemplo, pode haver dois módulos do kernel que tentam controlar o mesmo pedaço de hardware e carregá-los juntos resultaria em uma conflito.

Alguns módulos são carregados como parte do initramfs. mkinitcpio -Mimprimirá todos os módulos detectados automaticamente: para impedir que o initramfs carregue alguns desses módulos, coloque-os na lista negra em /etc/modprobe.d/modprobe.conf. A execução mkinitcpio -vlistará todos os módulos puxados pelos vários ganchos (por exemplo, gancho de sistemas de arquivos, gancho de bloco, etc.). Lembre-se de adicionar esse arquivo .conf à seção FILES em /etc/mkinitcpio.conf, se você ainda não o fez, e reconstrua o initramfs depois de colocar os módulos na lista negra e reinicie-o depois.

Usando arquivos em /etc/modprobe.d/

Crie um arquivo .conf dentro de /etc/modprobe.d/ e adicione uma linha para cada módulo que você deseja colocar na lista negra, usando a palavra-chave da lista negra. Se, por exemplo, você deseja impedir que o módulo pcspkr seja carregado:

/etc/modprobe.d/nobeep.conf

# Do not load the 'pcspkr' module on boot.
blacklist pcspkr

Nota: O comando da lista negra incluirá um módulo na lista negra, para que não seja carregado automaticamente, mas o módulo poderá ser carregado se outro módulo que não estiver na lista negra depender dele ou se for carregado manualmente.

No entanto, há uma solução alternativa para esse comportamento; o comando install instrui o modprobe para executar um comando personalizado em vez de inserir o módulo no kernel normalmente, portanto, você pode forçar o módulo a sempre falhar no carregamento com:

/etc/modprobe.d/blacklist.conf

...
install module_name /bin/false
...

Isso efetivamente colocará na lista negra esse módulo e qualquer outro que dependa dele.

banho
fonte
1

Basta colocar a lista de módulos em /etc/modprobe.d/blacklist.uvcdrver.conf deve funcionar. O nome do arquivo pode ser qualquer coisa. Apenas verifique se o formato e as permissões estão corretos.

askb
fonte
1

Muito obrigado a todos pela ajuda! Encontrei a fonte do problema ao tentar a solução da bain . Sua solução funciona bem. Após a reinicialização, os módulos desapareceram. Mas há uma desvantagem: não consigo carregar o módulo modprobe uvcvideono caso de querer reativar a webcam.

Enquanto vasculhava meu sistema para descobrir por que o uvcvideomódulo foi carregado, finalmente fiz um grep -r uvcvideo /etc/e voilà, encontrei um script no /etc/pm/power.dqual fazia modprobe uvcvideoquando o cabo de alimentação estava conectado. Escrevi esse script há algum tempo para otimizar o consumo de energia. Comentei as linhas que tratam do módulo da webcam e, depois disso, a lista negra funcionou!

Marc Hauptmann
fonte
0

Eu sugiro que você corra

sudo update-initramfs -u

depois de modificar sua lista negra. Isso atualizará seu ramdisk inicial.

N8tron
fonte
Não, isso não funcionou
Marc Hauptmann
0

No caso de você estar procurando uma solução em uma instrução de linha de comando, isso pode ser útil (com base nesta resposta ):

Para desativar a câmera até a reinicialização, use este comando:

sudo modprobe -r uvcvideo

Digite sua senha e, se não houver erros no terminal, sua webcam deverá ser desativada. Se você recebeu a mensagem de erro: modprobe: FATAL: O módulo uvcvideo está em uso, tente forçar a remoção com:

sudo rmmod -f uvcvideo

Para ativar sua webcam novamente, digite shell:

sudo modprobe uvcvideo
gaboroncancio
fonte