6.4. Carregar Firmware em Falta

Conforme é descrito na Secção 2.2, “Dispositivos que Necessitam de Firmware”, alguns dispositivos necessitam que seja carregado firmware. Na maioria dos casos o dispositivo não irá funcionar se o firmware não estiver disponível; Por vezes as funcionalidades básicas não serão limitadas se o firmware estiver em falta e for apenas necessário para habilitar funcionalidades adicionais.

Se o controlador de um dispositivo necessitar de firmware que não esteja disponível, o debian-installer irá mostrar uma caixa de diálogo a oferecer-se para carregar o firmware em falta. Se esta opção for selecionada, o debian-installer irá procurar nos dispositivos disponíveis por ficheiros soltos de firmware ou pacotes contendo firmware. Se for encontrado, o firmware será copiado para a localização correta (/lib/firmware) e o controlador será novamente carregado.

[Nota] Nota

Os dispositivos que são pesquisados e quais os sistemas de ficheiros que são suportados dependem da arquitetura, do método de instalação e da etapa da instalação. Especialmente durante as etapas iniciais da instalação, o carregamento de firmware é mais provável que tenha sucesso a partir de uma pen USB formatada com FAT.

Note que é possível saltar o carregamento de firmware se souber que o dispositivo também irá funcionar sem ele, ou se o dispositivo não for necessário durante a instalação.

O debian-installer apenas pergunta pelo firmware necessário para os módulos do kernel carregados durante a instalação. Nem todos os controladores estão incluídos no debian-installer, em particular não está o radeon, isto implica que as capacidades de alguns dispositivos podem não ser diferentes no final da instalação do que eram no seu início. Consequentemente, algum do seu hardware poderá não ser utilizado com todo o seu potencial. Se suspeitar que é o caso, ou se estiver apenas curioso, não é má ideia verificar a saída do comando dmesg no novo sistema acabado de arrancar e procurar por firmware.

6.4.1. Preparar um meio

As imagens de instalação oficiais não incluem firmware não-livre. O método mais comum para carregar este firmware é a partir de um suporte amovível como por exemplo uma pen USB. Em alternativa, podem ser encontradas imagens de instalação não oficiais com firmware não-livre em https://cdimage.debian.org/cdimage/unofficial/non-free/cd-including-firmware/. Para preparar uma pen-USB (ou outro suporte, tal como uma partição de um disco rígido), os ficheiros ou pacotes de firmware têm de ser colocados no diretório raiz ou num diretório com o nome /firmware do sistema de ficheiros do suporte. O sistema de ficheiros recomendado para utilizar é o FAT, já que é o mais provável de ser suportado durante as etapas iniciais da instalação.

Estão disponíveis ficheiros 'tarball' e zip, contendo os pacotes atuais para o firmware mais comum, a partir de:

Descarregue apenas o ficheiro 'tarball' ou o zip do lançamento correto e descompacte-o para o sistema de ficheiros na media.

Se o firmware que necessitar não estiver incluído no tarball, pode também descarregar pacotes de firmware específicos a partir (da seção non-free) do arquivo. O seguinte resumo deve listar a maioria dos pacotes de firmware disponíveis mas não é garantido que esteja completa e pode também conter pacotes que não sejam de firmware:

Também é possível copiar ficheiros individuais de firmware para o suporte. Ficheiros soltos de firmware podem ser obtidos por exemplo a partir de sistemas já instalados ou a partir de um fabricante de hardware.

6.4.2. Firmware e o Sistema Instalado

Qualquer firmware carregado durante a instalação será automaticamente copiado para o sistema instalado. Na maioria dos casos isto irá assegurar que o dispositivo necessita que o firmware irá também funcionar corretamente após o sistema ser reiniciado para o sistema já instalado. No entanto, se o sistema instalado correr uma versão diferente do kernel da do instalador existe uma ligeira hipótese do firmware não puder ser carregado devido à diferença de versão.

Se o firmware foi carregado a partir de um pacote de firmware, o debian-installer irá também instalar este pacotes no sistema instalado e irá automaticamente acrescentar a seção 'non-free' do arquivo de pacotes ao sources.list do APT. Isto tem a vantagem do firmware ser atualizado automaticamente se estiver disponível uma nova versão.

Se for saltado o carregamento de firmware durante a instalação, o dispositivo relevante irá provavelmente não funcionar no sistema instalado até o (pacote de) firmware ser instalado manualmente.

[Nota] Nota

Se o firmware foi carregado a partir de ficheiros de firmware soltos, o firmware copiado para o sistema instalado não irá ser automaticamente atualizado a menos que o pacote correspondente de firmware (se estiver disponível) seja instalado após a instalação estar completada.

6.4.3. Completar o Sistema Instalado

Dependendo de como foi feita a instalação, pode ser que algum do firmware necessário não tenha sido detetado durante a instalação, ou que o firmware relevante não estivesse disponível, ou que tenha escolhido não instalar algum do firmware nessa altura. Em alguns casos, uma instalação com sucesso pode mesmo assim acabar com um ecrã em branco ou com a imagem imperceptível quando reiniciar para o sistema instalado. Quando isso acontecer, pode tentar ultrapassar assim:

  • Passar a opção nomodeset na linha de comandos do kernel. Isto pode ajudar arrancar num modo de fallback graphics.

  • Utilizar a combinação de teclas Ctrl+Alt+F2 para mudar para o VT2, o qual poderá oferecer login numa linha de comandos funcional.

Uma vez no sistema instalado, é possível automatizar a deteção do firmware em falta e tomar os passos necessários para o habilitar seguindo o seguinte procedimento:

  1. Instalar o pacote isenkram-cli.

  2. Correr o comando isenkram-autoinstall-firmware como utilizador root.

Normalmente, reiniciar é a forma mais simples de ter a certeza que todos os módulos do kernel são devidamente inicializados; é particularmente importante quando se arranca o sistema com a opção nomodeset como uma medida provisória.

[Nota] Nota

Para a instalação de pacotes de firmware, é muito provável que necessite de habilitar a seção non-free do arquivo de pacotes. Em Debian GNU/Linux 11.0, correr o comando isenkram-autoinstall-firmware irá fazer isso automaticamente ao criar um ficheiro dedicado (/etc/apt/sources.list.d/isenkram-autoinstall-firmware.list), a apontar para um mirror genérico.