Você vai aprender, neste tutorial, como é fácil instalar o driver proprietário da NVIDIA no Fedora Linux!

Confira o passo a passo de instalação do driver proprietário da NVIDIA no Fedora Linux!
Devido aos princípios e políticas do Projeto Fedora, o Fedora Linux disponibiliza apenas drivers e softwares de código aberto e gratuitos nos repositórios oficiais. Para os que possuem uma placa de vídeo da NVIDIA, o Fedora já inclui o Nouveau, um driver de código aberto desenvolvido pela comunidade e que funciona muito bem na maioria dos casos, porém, oferece suporte aos recursos mais básicos da GPU e não é capaz de "extrair" todo o desempenho das placas em jogos e/ou softwares (se comparado ao driver proprietário).Apesar disso, é possível instalar o driver proprietário da NVIDIA facilmente no Fedora Linux graças ao Projeto RPM Fusion, que disponibiliza o driver oficial e demais componentes em seu repositório Non-Free.
Índice de Conteúdo
Instale as atualizações e reinicie o sistema (IMPORTANTE! );
Adicione os repositórios RPM Fusion;
Identifique o modelo da sua placa de vídeo;
Verifique se o Secure Boot está ativado;
Instale o driver proprietário da NVIDIA no Fedora;
Para placas GeForce, Quadro ou Tesla fabricadas de 2014 até hoje;
Para placas GeForce (séries 600 e 700), Quadro ou Tesla fabricadas entre 2012 e 2014 (Kepler);
Para placas GeForce (séries 400 e 500), Quadro ou Tesla fabricadas entre 2010 e 2012 (Fermi);
Para placas GeForce das séries 8 (8xxx), 9 (9xxx), 200 e 300;
Assinando o módulo do Kernel em máquinas com o Secure Boot habilitado;
Adicionando o suporte às tecnologias CUDA, NVDEC e NVENC;
Habilitando o suporte à aceleração de vídeo (VDPAU/VAAPI);
Possíveis soluções para o erro "NVIDIA Kernel module missing. Falling back to nouveau";
A chave não foi registrada no MOK Manager;
Reconstrua o módulo do Kernel e o initrd;
Reinstale o driver da NVIDIA
Conteúdo adicional do RPM Fusion;
Como desinstalar o driver da NVIDIA?
Referências.
Instale as atualizações e reinicie o sistema (IMPORTANTE! )
ANTES de iniciar a instalação do driver proprietário da NVIDIA, você DEVE INSTALAR TODAS AS ATUALIZAÇÕES DISPONÍVEIS para o seu Fedora Linux e, em seguida, reiniciar o computador. Para isso, abra um terminal (procure-o no Menu de Aplicativos da sua interface gráfica) e execute o comando abaixo:
sudo dnf upgrade --refresh

Concluído o download e instalação das atualizações, será NECESSÁRIO REINICIAR O SEU COMPUTADOR para que as alterações sejam aplicadas, caso contrário, a instalação do driver irá falhar, ok?! Você pode reiniciar através do Menu do seu ambiente de área de trabalho ou através do terminal com o comando
systemctl reboot
.Adicione os repositórios RPM Fusion
Como informado anteriormente, o driver proprietário da NVIDIA está disponível no repositório RPM Fusion, que é um dos repositórios mais conhecidos e utilizados pelos usuários do Fedora Linux.
SE você já adicionou os repositórios Free e Non-Free do RPM Fusion no seu Fedora anteriormente (verifique facilmente com
sudo dnf repolist
), basta ignorar esta etapa e avançar para o próximo passo clicando AQUI.Caso contrário, abra novamente um terminal e execute o comando a seguir para adicionar os repositórios RPM Fusion:
sudo dnf install https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm

Verifique se o Secure Boot está ativado
Para quem possui um computador ou notebook com UEFI, também é importante verificar o status Secure Boot (ou Inicialização Segura), que é uma ferramenta de segurança com o objetivo de proteger o processo de inicialização dos sistemas operacionais, permitindo que apenas os drivers e softwares devidamente assinados sejam executados durante o boot.
É possível instalar o driver proprietário da NVIDIA com o Secure Boot ativado no Setup/BIOS do seu computador, porém, será necessário assinar o módulo do Kernel para que o mesmo seja carregado na inicialização do Fedora Linux.
Para verificar o status do Secure Boot na sua máquina, basta executar o comando abaixo num terminal:
mokutil --sb-state
A saída do mesmo será "SecureBoot enabled" (indicando que o Secure Boot está habilitado) ou "SecureBoot disabled" (o Secure Boot está desabilitado). No meu caso, o Secure Boot está habilitado, como mostrado pela imagem a seguir:

Caso o Secure Boot esteja desabilitado no seu computador, você poderá instalar o driver proprietário normalmente sem se preocupar em assinar o módulo do Kernel. Porém, se o Secure Boot também estiver habilitado, você tem duas opções:
- Manter o Secure Boot habilitado - Se você não quer desabilitá-lo, será necessário criar uma chave de segurança e assinar o módulo do Kernel da NVIDIA (como mostraremos na seção "Assinando o módulo do Kernel em máquinas com o Secure Boot habilitado"). Do contrário, o Fedora não vai carregar o módulo durante a inicialização e voltará a usar o Nouveau no lugar do driver proprietário da NVIDIA;
- Desativar o Secure Boot - Apesar de não ser recomendado, esta é a opção que muitos usuários escolhem. Para realizar esta mudança, será necessário que você acesse o Setup/BIOS da sua placa-mãe e desative o Secure Boot (consulte o manual da mesma).
Depois de verificar se a Inicialização Segura está habilitada no seu computador (ou após desabilitá-la no BIOS), é hora de verificar qual é o modelo da sua GPU!
Identifique o modelo da sua placa de vídeo
Outro passo importante ao qual você deve se atentar é identificar corretamente o modelo da sua placa de vídeo para instalar o driver adequado para a mesma.
É provável que você já sabe qual é, então basta clicar AQUI para ir direto para o próximo passo, mas, caso ainda não saiba, basta executar o comando abaixo no terminal:
/sbin/lspci | grep -e VGA
A saída do comando será semelhante a da imagem abaixo:

No meu caso, é uma GeForce GTX 1060 de microarquitetura Pascal (lançada em 2016), portanto, vou instalar o driver da seção "Para placas GeForce, Quadro ou Tesla fabricadas de 2014 até hoje".
A Wikipedia possui um artigo com todos os modelos de placas da NVIDIA já lançadas, clique no link abaixo para verificar mais detalhes sobre a sua GPU (abre uma nova aba):

Instale o driver proprietário da NVIDIA no Fedora
Após identificar qual é o modelo da sua GPU, basta executar um dos comandos abaixo para instalar o driver correto para a sua placa de vídeo (de acordo com o modelo e/ou ano de fabricação da mesma).
Para placas GeForce, Quadro ou Tesla fabricadas de 2014 até hoje:
Utilize o comando abaixo caso tenha uma das placas NVIDIA de microarquitetura Maxwell, Pascal, Volta, Turing, Ampere, Hopper ou Ada Lovelace listadas a seguir:
- GeForce: GTX 900 (GTX 950/960/970/980/980 Ti), GT 10 (GT 1030), GTX 10 (GTX 1050/1050 Ti/1060/1070/1070 Ti/1080/1080 Ti), GTX 16 (GTX 1630/1650/1650 SUPER/1660/1660 SUPER/1660 Ti), RTX 20 (RTX 2050/2060/2060 SUPER/2070/2070 SUPER/2080/2080 SUPER/2080 Ti), RTX 30 (RTX 3050/3060/3060 Ti/3070/3070 Ti/3080/3080 Ti/3090/3090 Ti) e RTX 40 (RTX 4050/4060/4060 Ti/4070/4070 SUPER/4070 Ti/4080/4080 SUPER/4090);
- Quadro: M (M2000/4000/5000/6000), P (P400/600/620/1000/2000/2200/4000/5000/6000), T (T400/600/1000), Quadro RTX (RTX 4000/5000/6000/8000), RTX A (RTX A400/A1000/A2000/A4000/A4500/A5000/A5500/A6000) e RTX Ada Generation (RTX 2000/4000/4500/5000/5880/6000);
- Tesla: M (M4/M6/M10/M40/M60), P (P4/P6/P40/P100), V (V100), T (T4), A (A2/A10/A16/A30/A40/A100), H (H100) e L (L4/L40).
## Instale o driver (versão 510+) e demais dependências com:
## Lembre-se de esperar de 5 a 10 minutos após a instalação dos pacotes para reiniciar o PC!
sudo dnf install akmod-nvidia --enablerepo=rpmfusion*

Concluída a instalação e (caso o Secure Boot esteja HABILITADO no seu computador) após seguir a etapa de assinatura do módulo do Kernel da NVIDIA (como mostraremos logo abaixo), basta reiniciar o sistema para que as alterações sejam aplicadas:

Logo abaixo você encontra os comandos de instalação do driver proprietário da NVIDIA para placas mais antigas.
Para placas GeForce (séries 600 e 700), Quadro ou Tesla fabricadas entre 2012 e 2014 (Kepler):
Utilize o comando abaixo caso tenha possua uma placa de microarquitetura Kepler listadas a seguir:
- GeForce: GT 600 (GT 605/610/620/630/640), GTX 600 (GTX 650/650 Ti/660/660 Ti/670/680/690), GT 700 (GT 705/710/720/730/740/745) e GTX 700 (GTX 750/750 Ti/760/760 Ti/770/780/780 Ti/Titan);
- Quadro: K (K420/K600/K620/K1200/K2000/K2200/K4000/K5000/K5200/K6000);
- Tesla: K (K10/K20/K20X/K40/K80).
## Instale o driver (versão 470.x) e demais dependências com:
## Lembre-se de esperar de 5 a 10 minutos após a instalação dos pacotes para reiniciar o PC!
sudo dnf install xorg-x11-drv-nvidia-470xx akmod-nvidia-470xx --enablerepo=rpmfusion*
Para placas GeForce (séries 400 e 500), Quadro ou Tesla fabricadas entre 2010 e 2012 (Fermi):
Utilize o comando abaixo caso tenha possua uma placa de microarquitetura Fermi listadas a seguir:
- GeForce: GeForce 405, GT 400 (GT 405/410/420/430/440), GeForce 510, GT 500 (GT 520/GT 530/545) e GTX 500 (GTX 550 Ti/555/560/560 SE/560 Ti/570/580/590);
- Quadro: Quadro Fermi (600/2000/2000D/4000/5000/5000SDI/6000/6000SDI);
- Tesla: S (SS2050), C (C2050/C2070/C2075/C2090), M (M2050/M2070-Q/M2070/M2075/M2090) e X (X2070/X2090);
## Instale o driver (versão 390.x) e demais dependências com:
## Lembre-se de esperar de 5 a 10 minutos após a instalação dos pacotes para reiniciar o PC!
sudo dnf install xorg-x11-drv-nvidia-390xx akmod-nvidia-390xx --enablerepo=rpmfusion*
Para placas GeForce das séries 8 (8xxx), 9 (9xxx), 200 e 300:
Utilize o comando abaixo caso tenha possua uma placa NVIDIA das séries 8, 9, 200 e 300 listadas a seguir:
- GeForce: GeForce 8 ( GeForce 8300 GS/8400 GS/8400 SE/8500 GT/8600 GS/8600 GT/8600 GTS/8800 GS/8800 GT/8800 GTS/8800 GTX/8800 Ultra), GeForce 9 ( GeForce 9300 GE/9300 SE/9300 GS/9400 GT/9500 GS/9500 GT/9600 GS/9600 GSO/9600 GT/9600 GSO/9600 GTX/9800 GT/9800 GTX/9800 GTX+/9800 GX2), GeForce 200 ( GeForce 205/210/G210/GT 220/GT 230/GT 240/GTS 240/GTS 250/GTX 260/GTX 275/GTX 280/GTX 285/GTX 295) e GeForce 300 (GeForce 310/315/GT 320/GT 330/GT 340).
## Instale o driver (versão 340.x) e demais dependências com:
## Lembre-se de esperar de 5 a 10 minutos após a instalação dos pacotes para reiniciar o PC!
sudo dnf install xorg-x11-drv-nvidia-340xx akmod-nvidia-340xx --enablerepo=rpmfusion*
Assinando o módulo do Kernel em máquinas com o Secure Boot habilitado
Como já informamos logo acima, se o Secure Boot estiver habilitado no seu computador, será necessário assinar o módulo do Kernel da NVIDIA para que o Fedora possa carregá-lo durante a inicialização.
O primeiro passo é instalar as dependências necessárias no seu sistema (é provável que já estejam instaladas), executando no terminal o comando:
sudo dnf install kmodtool akmods mokutil openssl
Feito isso, gere uma chave com os valores padrão:
sudo kmodgenca -a

E importe esta chave juntamente com o certificado no MOK (Machine Owner Key) executando o comando:
sudo mokutil --import /etc/pki/akmods/certs/public_key.der
Na sequência, será necessário criar uma senha para esta chave (que será usada na próxima reinicialização):

E digite novamente a senha que acabou de criar:

systemctl reboot
Ao reiniciar, será exibido a tela inicial do utilitário "MOK Manager", onde você deve pressionar qualquer tecla para continuar:

Com as teclas direcionais, selecione a opção "Enroll MOK" (como destacado pela imagem abaixo) e pressione Enter para continuar:

Na sequência, selecione a opção "Continue" e pressione Enter:

Selecione a opção "Yes" para registrar a chave e, logo após, pressione a tecla Enter:

Informe a mesma senha que criou anteriormente para a chave, pressionando Enter em seguida:

Por último, selecione a opção "Reboot" e pressione Enter para reiniciar o seu computador:

Seguindo estes passos à risca (e se não houver algum "problema"), o seu Fedora Linux conseguirá carregar o módulo do Kernel da NVIDIA durante a inicialização!
Adicionando o suporte às tecnologias CUDA, NVDEC e NVENC
Além do driver proprietário, também é possível instalar no seu Fedora Linux o suporte às seguintes tecnologias da NVIDIA:
- CUDA - Plataforma de computação paralela e um modelo de programação criado pela NVIDIA que permite o uso da GPU para processamento de alto desempenho como I.A. e computação científica;
- NVDEC - Decodificador de vídeo por hardware que acelera a reprodução de vídeos de alta resolução e formatos avançados (HEVC, AV1), reduzindo o uso da CPU;
- NVENC - Codificador de vídeo por hardware presente nas GPUs NVIDIA, responsável por compressão e conversão de vídeos sem sobrecarregar a CPU.
Para isso, basta executar um dos comandos abaixo (de acordo com o modelo e/ou ano de fabricação da sua placa de vídeo):
Para placas GeForce, Quadro ou Tesla fabricadas de 2014 até hoje:
sudo dnf install xorg-x11-drv-nvidia-cuda xorg-x11-drv-nvidia-cuda-libs
Para placas GeForce (séries 600 e 700), Quadro ou Tesla fabricadas entre 2012 e 2014 (Kepler):
sudo dnf install xorg-x11-drv-nvidia-470xx-cuda xorg-x11-drv-nvidia-470xx-cuda-libs
Para placas GeForce (séries 400 e 500), Quadro ou Tesla fabricadas entre 2010 e 2012 (Fermi):
sudo dnf install xorg-x11-drv-nvidia-390xx-cuda xorg-x11-drv-nvidia-390xx-cuda-libs
Para placas GeForce das séries 8 (8xxx), 9 (9xxx), 200 e 300:
sudo dnf install xorg-x11-drv-nvidia-340xx-cuda
Você pode encontar mais detalhes sobre a instalação do CUDA no Fedora Linux acessando o link abaixo:

Habilitando o suporte à aceleração de vídeo (VDPAU/VAAPI)
Se você possui uma placa da série GeForce 8 ou superior, também é possível habilitar a aceleração de vídeo por hardware no seu Fedora Linux. Para isso, basta instalar os pacotes necessários executando o comando abaixo:
sudo dnf install nvidia-vaapi-driver libva-utils vdpauinfo
Para mais detalhes, acesse a documentação oficial do RPM Fusion:

Possíveis soluções para o erro "NVIDIA Kernel module missing. Falling back to nouveau"
Os pacotes de drivers fornecidos pelo RPM Fusion realizam todo o processo de instalação e configuração do driver (bem como a criação do módulo do Kernel da NVIDIA), onde os usuários não precisam fazer mais nenhum outro procedimento (com exceção à etapa de assinatura do módulo do Kernel). Porém, se após a instalação dos pacotes o driver não estiver funcionando no seu Fedora, confira abaixo algumas dicas que podem solucionar o seu problema.
A chave não foi registrada no MOK Manager
Como mostramos na seção "Assinando o módulo do Kernel em máquinas com o Secure Boot habilitado", os usuários que possuem o Secure Boot habilitado no BIOS devem assinar o módulo do Kernel da NVIDIA para que o Fedora consiga carregar o mesmo durante a inicialização.
Caso você até tenha gerado e importado a chave, mas não conseguiu registrá-la no MOK Manager após o reboot (selecionou alguma opção errada OU não apertou uma tecla para acessar o utilitário), depois de fazer login no Fedora, abra um terminal e execute o comando abaixo para importar novamente a chave:
sudo mokutil --import /etc/pki/akmods/certs/public_key.der
Feito isto, basta reiniciar o seu computador e, quando surgir uma tela azul (Shim UEFI Key management), você deve repetir os mesmos procedimentos indicados AQUI, que são:
Reconstrua o módulo do Kernel e o initrd
Se o erro "Kernel module missing" continuar" persistir após registrar a chave conforme indicamos acima, é provável que o módulo não tenha sido compilado/construído corretamente pelo akmods durante a instalação do driver ou mesmo durante uma atualização de Kernel.
Caso seja este o problema, você pode forçar a reconstrução e reinstalação do módulo do Kernel da NVIDIA (para o Kernel atualmente em execução), basta apenas executar o comando a seguir:
sudo akmods --force
Após a concclusão do processo, execute o comando abaixo para reconstruir a imagem de boot initramfs (ou initrd):sudo dracut --force
Feito isso, reinicie o seu computador e verifique se o módulo do Kernel vai ser carregado pelo Fedora Linux.
Reinstale o driver da NVIDIA
Você seguiu os passos acima e mesmo assim o Fedora não consegue carregar o módulo do Kernel, o último recurso que eu sugiro é a reinstalação do driver da NVIDIA.
Primeiramente, remova o pacote de driver instalado anteriormente no seu sistema com o comando:
sudo dnf remove xorg-x11-drv-nvidia\*
E, na sequência, reinstale o driver da NVIDIA de acordo com o modelo da sua placa (clique AQUI para acessar as instruções) OU executando um dos comandos abaixo (de acordo com o modelo da sua placa):### Para placas GeForce, Quadro ou Tesla fabricadas de 2014 até hoje:
sudo dnf install akmod-nvidia --enablerepo=rpmfusion*
### Para placas GeForce (séries 600 e 700), Quadro ou Tesla fabricadas entre 2012 e 2014 (Kepler):
sudo dnf install xorg-x11-drv-nvidia-470xx akmod-nvidia-470xx --enablerepo=rpmfusion*
### Para placas GeForce (séries 400 e 500), Quadro ou Tesla fabricadas entre 2010 e 2012 (Fermi):
sudo dnf install xorg-x11-drv-nvidia-390xx akmod-nvidia-390xx --enablerepo=rpmfusion*
### Para placas GeForce das séries 8 (8xxx), 9 (9xxx), 200 e 300:
sudo dnf install xorg-x11-drv-nvidia-340xx akmod-nvidia-340xx --enablerepo=rpmfusion*
Aguarde de 5 a 10 minutos antes de reiniciar para que o módulo do Kernel seja devidamente compilado e instalado.
Conteúdo adicional do RPM Fusion
Além dos procedimentos indicados nesta postagem, no site do RPM Fusion você também encontra várias outras dicas, como a instalação da versão beta do driver da NVIDIA, de como bloquear a atualização do driver, a habilitar a suspensão para o disco (hibernação) dentre outras. Acesse:

Para os usuários que possuem um notebook com uma GPU dedicada, o RPM Fusion possui um artigo dedicado com instruções para definir a placa da NVIDIA como a principal dentre várias outras dicas. Clique no link abaixo para acessar:

Como desinstalar o driver da NVIDIA no Fedora?
Caso queira desinstalar o driver proprietário da NVIDIA do seu Fedora Linux, basta apenas executar o comando abaixo:
sudo dnf remove xorg-x11-drv-nvidia\*

Concluído o processo, basta reiniciar o seu computador para que as alterações sejam devidamente aplicadas. Com isso o seu Fedora Linux voltará a usar o driver de código aberto Nouveau automaticamente.
Espero que este tutorial tenha sido útil para você! Caso tenha alguma dúvida, sugestão ou crítica, basta utilizar o campo de comentários logo abaixo para nos informar, seja pelo Disqus ou utilizando sua conta do Google/Blogger, ok?!
Aproveite e cadastre-se para receber todas as novidades do Blog Opção Linux assinando nosso Feed RSS, ou siga-nos no X / Twitter, Facebook e também no nosso canal no Telegram! :)
Obrigado pela visita e até a próxima dica!
Referências:
- Configuration - RPM Fusion
- Howto/NVIDIA - RPM Fusion
- Howto/Secure Boot - RPM Fusion
- Secureboot - Fedora Project Wiki
- Compare a Série Atual às Anteriores de Placas de Vídeo GeForce - NVIDIA
- GPU Database - TechPowerUp
- List of Nvidia graphics processing units - Wikipedia
- Troubles with RPMfusion nvidia drivers + SecureBoot setup - Fedora Discussion
- 'NVIDIA kernel module not found. Falling back to nouveau.' on boot - Fedora Discussion
COMENTÁRIOS