Um pequeno guia para ajudá-lo a instalar e gerenciar o driver NVIDIA GPU em seu (s) sistema (s) Ubuntu
Pessoalmente, sou um usuário do Ubuntu 24.04.1 no momento, então é principalmente a isso que este guia se aplica (embora eu acredite que deva funcionar bem em versões mais recentes e também em versões mais antigas que não são muito antigas [something like Ubuntu 20.04+]
)
️ AvisoSiga e leia todas as partes deste guia com muito cuidado para evitar a ocorrência de quaisquer problemas.
Além disso, não se preocupe se o sistema parecer travado durante qualquer etapa de reinicialização. Na verdade, não está preso! Aguarde até 2 minutos para que a reinicialização seja concluída.
graphics-drivers
[RECOMENDADO]Esta abordagem de instalação é a recomendada e, na verdade, é o método que utilizo para manter a instalação do driver em meu(s) próprio(s) sistema(s).
Certifique-se de ter desinstalado todos os drivers NVIDIA instalados anteriormente:
sudo apt-get remove --purge '^nvidia-.*'
sudo apt autoremove
reboot
.run
): Desinstalação do driverInstale estas dependências para garantir o suporte DKMS e um processo de instalação sem problemas:
sudo apt install pkg-config libglvnd-dev dkms build-essential libegl-dev libegl1 libgl-dev libgl1 libgles-dev libgles1 libglvnd-core-dev libglx-dev libopengl-dev gcc make
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update
sudo apt install nvidia-driver-555
reboot
NOTA: No momento da última atualização deste guia, 555 era a versão testada mais recente do driver disponível no repositório.
Navegue até https://launchpad.net/~graphics-drivers/+archive/ubuntu/ppa para verificar qual é a versão mais recente do driver e, em seguida, substitua a parte driver-555
pela versão que você gostaria de instalar.
nvidia-smi
para confirmar se o driver foi instalado sem problemas.Este procedimento é mais avançado e muitas vezes não é recomendado. No entanto, tudo correrá bem desde que você siga cada passo com paciência e cuidado :)
Certifique-se de ter desinstalado todos os drivers NVIDIA instalados anteriormente:
sudo apt-get remove --purge '^nvidia-.*'
sudo apt autoremove
reboot
.run
): Desinstalação do driver Certifique-se de não ter uma versão instalada manualmente do libnvidia-egl-wayland1
(especialmente se for instalar a versão 555+ do driver Nvidia). O driver já o inclui conforme indicado @ https://us.download.nvidia.com/XFree86/Linux-x86_64/555.42.02/README/installedcomponents.html
sudo apt remove libnvidia-egl-wayland1
sudo apt install pkg-config libglvnd-dev dkms build-essential libegl-dev libegl1 libgl-dev libgl1 libgles-dev libgles1 libglvnd-core-dev libglx-dev libopengl-dev gcc make
Navegue até https://www.nvidia.com/Download/index.aspx?lang=en-us e baixe o driver adequado para sua GPU e arquitetura Linux. O site deve fornecer um arquivo que termina com a extensão .run
.
Mude para a visualização do terminal do seu sistema pressionando Ctrl + Alt + F3
(se isso não mudar do modo GUI para o modo terminal para você, tente Ctrl + Alt + F1
ou Ctrl + Alt + F2
para um tty diferente)
Pare o serviço GDM:
sudo systemctl stop gdm
sudo systemctl stop gdm3
Se isso falhar para você, tente sudo systemctl stop lightdm
.
Observe que é importante interromper o serviço GNOME Display Manager (GDM) durante todo o processo de instalação/desinstalação do driver, pois caso contrário, poderá causar problemas.
Mude para o caminho do diretório que inclui o arquivo .run
baixado usando cd
Execute o instalador:
chmod +x NVIDIA-Linux-x86_64-555.42.02.run
sudo sh ./NVIDIA-Linux-x86_64-555.42.02.run
(certifique-se de substituir o nome do arquivo pelo nome real que você obteve no site da Nvidia)
NOTA: Se o instalador solicitar que você desative o Nouveau, permita que o instalador o desative para você. Pode ser necessário abortar o instalador depois disso, executar sudo update-initramfs -u && reboot
e reiniciar a partir da etapa 5 assim que a reinicialização do sistema for concluída.
sudo update-initramfs -u
para atualizar o initramfs./etc/default/grub
usando sudo nano /etc/default/grub
nvidia-drm.modeset=1
e nvidia-drm.fbdev=1
dentro do seu GRUB_CMDLINE_LINUX
(ou seja, GRUB_CMDLINE_LINUX="nvidia-drm.modeset=1 nvidia-drm.fbdev=1"
)sudo update-grub
nvidia-smi
para confirmar isso). graphics-drivers
Correr:
sudo apt-get remove --purge '^nvidia-.*'
sudo apt autoremove
reboot
sudo rm -rf /lib/modprobe.d/nvidia-installer-*
sudo rm -rf /etc/modprobe.d/nvidia-installer-*
sudo rm -rf /usr/lib/modprobe.d/nvidia-installer-*
nvidia-drm.modeset
, nvidia-drm.fbdev
, etc) do seu arquivo /etc/default/grub
. ( isso é importante ).sudo update-grub
sudo nvidia-installer --uninstall
sudo update-initramfs -u
graphics-drivers
).Este parece ser um bug relatado em https://bugs.launchpad.net/ubuntu/+source/nvidia-graphics-drivers-535/+bug/2063222
Uma solução alternativa é:
[ Workaround ]
1. sudo rm /dev/dri/card0
2. Log in again.
/etc/gdm3/custom.conf
usando sudo nano /etc/gdm3/custom.conf
WaylandEnable=true
esteja definido nesse arquivo e certifique-se de que ele esteja descomentado (não comece com #
)sudo ln -s /dev/null /etc/udev/rules.d/61-gdm.rules
Isso pode acontecer por vários motivos. Já há algum tempo, sabe-se que a NVIDIA tem problemas com o sistema de janelas Wayland. No entanto, a NVIDIA tem trabalhado para melhorar isso. E isso já ficou muito melhor a partir do driver NVIDIA 555.42.02, que adicionou suporte de sincronização explícito.
Então, antes de tudo, certifique-se de ter:
continue lendo abaixo para tornar a experiência ainda mais tranquila:
Seu sistema pode estar usando o driver Mesa em vez do NVIDIA nas sessões Wayland. Você pode confirmar isso digitando glxinfo | egrep "OpenGL vendor|OpenGL renderer*"
Para resolver isso:
/etc/default/grub
usando sudo nano /etc/default/grub
nvidia-drm.modeset=1
e nvidia-drm.fbdev=1
dentro do seu GRUB_CMDLINE_LINUX
(ou seja, GRUB_CMDLINE_LINUX="nvidia-drm.modeset=1 nvidia-drm.fbdev=1"
)sudo update-grub
Você pode ter o firmware GSP da Nvidia habilitado e isso causa alguns problemas de desempenho na versão beta 555.42.02 do driver. Talvez isso seja corrigido no futuro, mas por enquanto podemos desabilitar o firmware do GSP se necessário.
Você pode verificar se o firmware GSP está habilitado ou não digitando nvidia-smi -q | grep "GSP Firmware"
— se estiver escrito N/A
, o firmware não está habilitado. Caso contrário (mostra uma versão para firmware GSP), então o firmware está habilitado.
Para desativar o firmware GSP, siga as etapas abaixo:
/etc/default/grub
usando sudo nano /etc/default/grub
nvidia.NVreg_EnableGpuFirmware=0
dentro do seu GRUB_CMDLINE_LINUX
sudo update-grub
Consulte https://forums.developer.nvidia.com/t/major-kde-plasma-desktop-frameskip-lag-issues-on-driver-555/293606 para obter mais informações sobre esse problema.
Pode estar faltando o pacote libnvidia-egl-wayland1
(que geralmente é recomendado). Tente instalar o pacote usando sudo apt install libnvidia-egl-wayland1
( Não faça isso se você instalou a versão 555+ do driver Nvidia, pois o instalador do driver já o instala para você. Os pacotes de repositório PPA também o instalam por padrão. ).
para Google Chrome (e navegadores baseados em Chromium em geral), pode ser necessário mudar o sinalizador "Plataforma Preferred Ozone" para "Wayland" ou "auto". Siga as etapas abaixo para aplicar isso:
para alguns aplicativos Electron, pode ser necessário passar o mesmo sinalizador da plataforma Ozone que fizemos acima. Por exemplo, code --enable-features=UseOzonePlatform,WaylandWindowDecorations --ozone-platform-hint=auto
para Visual Studio Code
Você pode não ter o parâmetro do módulo preservar alocações de memória de vídeo ativado e isso pode causar problemas principalmente ao suspender e reiniciar o sistema, geralmente na forma de artefatos gráficos ou um ambiente de área de trabalho quebrado.
Você pode verificar se o parâmetro do módulo está habilitado ou não digitando sudo cat /proc/driver/nvidia/params | grep "PreserveVideoMemoryAllocations"
. Se o valor for 0
ou estiver ausente, o parâmetro não está habilitado.
Para ativar o parâmetro do módulo de preservação de alocações de memória de vídeo, siga as etapas abaixo:
/etc/default/grub
usando sudo nano /etc/default/grub
nvidia.NVreg_PreserveVideoMemoryAllocations=1
dentro do seu GRUB_CMDLINE_LINUX
sudo update-grub
sudo cat /proc/driver/nvidia/params | grep "PreserveVideoMemoryAllocations"
para verificar se o parâmetro agora está definido Se você ainda estiver tendo problemas com suspensão/retomada após habilitar este parâmetro de módulo, você pode dar uma olhada na documentação de gerenciamento de energia da Nvidia para verificar se os serviços systemd
relevantes estão instalados e habilitados.