Respostas:
Nota: a lista negra não funcionará para os módulos que estão embutidos na imagem do kernel (ou seja, não são carregados através de um
.koarquivo separado . A única maneira de desabilitar esses módulos é através de um parâmetro do kernel (se disponível) ou recompilando o kernel.
Basta abrir seu /etc/modprobe.d/blacklistarquivo e adicionar drivername usando a seguinte sintaxe:
blacklist driver-name
EDIT: Nas versões posteriores desde 12.10 (12.04?), O arquivo é /etc/modprobe.d/blacklist.conf
Reinicie sua caixa e use o comando lsmod para mostrar o status dos módulos no Kernel do Linux
Nota : aqui driver-nameestá o nome do seu driver de lista negra desejado. Por exemplo, se você deseja desabilitar o driver da placa NIC, pode encontrar o nome do driver do kernel da sua placa LAN usando o comando lspci -vcommand em um terminal.
Por exemplo, minha saída foi:
........
........
6: 00.0 Controlador Ethernet: Broadcom Corporation NetLink BCM5906M Fast Ethernet PCI Express (rev 02)
Subsistema: Lenovo Device 3861
Sinalizadores: mestre de barramento, devsel rápido, latência 0, IRQ 46
Memória em b8000000 (64 bits, não pré-selecionável) [tamanho = 64K]
ROM de expansão em [desativado]
Recursos:
Driver de kernel em uso: tg3
Módulos do kernel: tg3
........
........
Aqui, eu vejo o motorista é tg3. então você precisa escrever tg3(ou seu driver) no lugar de driver-name.
Muitas informações podem ser encontradas aqui .
Lubuntu 12.10), não há um /etc/modprobe.d/blacklistarquivo. Há um /etc/modprobe.d/blacklist.confarquivo
blacklist.confarquivo não precisa existir. Você pode colocar um arquivo chamado my-mom-is-awesomelá e funcionaria. Crie o nome que quiser, se desejar criar um arquivo específico apenas para colocar uma coisa na lista negra, como blacklist-nouveauou o que for.
Você também pode colocá-los na lista negra temporariamente na linha de comando do grub (linha linux) ao inicializar com a sintaxe
module_to_blacklist.blacklist=yes
i915: unknown parameter 'blacklist' ignored.
modprobe.blacklist=module_to_blacklist?
modprobe.blacklist=module_to_blacklist(veja man modprobepara mais detalhes)
Outra maneira de colocar módulos na lista negra em pelo menos o Ubuntu 16.04 LTS é adicionando a seguinte linha à linha de comando do kernel:
modprobe.blacklist=MODULE_NAME
Usar o sistema / etc / modprobe é a melhor maneira, mas essa é uma alternativa que pode ser usada rapidamente editando sua linha de comando do GRUB na inicialização.
Isso também pode ser permanente, editando / etc / default / grub e adicionando à GRUB_CMDLINE_LINUX_DEFAULTvariável. Por exemplo, no meu / etc / default / grub, tenho:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash modprobe.blacklist=nouveau"
Então eu corro update-grub2, então update-initramfs -u. Após uma reinicialização, você estará livre do módulo, desde que nada o carregue após a inicialização.
Este método também funciona nas variantes EL (RHEL, CentOS, SciLinux), mas você precisará usar os métodos dessa distro para atualizar o grub e o initrd.
(Observe para aqueles que tentam colocar na lista negra o nouveau: certifique-se de não carregar o X executando systemctl set-default multi-user.target, caso contrário, quando o X iniciar, ele carregará o nouveau novamente!)
Nas versões mais recentes, você precisa usar a diretiva de instalação no seu arquivo de lista negra
install modulename /bin/false
Substitua "nome do módulo" acima pelo nome do módulo. Isso impedirá forçosamente seu carregamento.
Você pode encontrar mais informações sobre a diretiva de instalação no manual do modprobe.conf
man modprobe.conf
/etc/modprobe/blacklist.conf, o módulo ainda pode ser carregado manualmente modprobe <module_name>. O uso do install <module_name> /bin/falsemétodo faz com que isso falhe conforme desejado.
Nenhuma dessas soluções funcionou no 16.04 LTS para i915.ko.
A solução (suja) que encontrei foi renomear
/lib/modules/4.4.0-22-generic/kernel/drivers/gpu/drm/i915/i915.ko
/usr/lib/xorg/modules/drivers/modesetting_drv.so
/usr/lib/xorg/modules/drivers/intel_drv.so
Infelizmente, a tela VGA externa não é mais reconhecida: {
sudo update-initramfs -udepois de modificar os arquivos /etc/modeprobe.d/ #