Estou usando Ubuntu 16.04 LTS e nvidia-340.
Com os drivers da Nvidia ativados, não consigo retomar a suspensão.
Posso me recuperar da suspensão quando mudo para o driver Intel ou se uso drivers nouveau.
Tentei atualizar o kernel, mas isso não resolveu o problema.
Alguma maneira de resolver isso com os drivers proprietários da nvidia?
Caso contrário, perderei muito desempenho usando os drivers nouveau em vez da nvidia proprietária?
Responder1
Suspender/Hibernar/Retomar é personalizável para adicionar manuseio especial para sua placa gráfica por meio do pacote pm-utils
( utilities and scripts for power management
). Leia as man
páginas de pm-action
, pm-powersave
, pm-is-supported
, pm-suspend-hybrid
, pm-hibernate
, pm-suspend
e leia os arquivos em /usr/share/doc/pm-utils/
.
Responder2
Usando o nvidia-driver-495 mais recente, consegui redefinir os parâmetros de inicialização. Tudo voltou ao normal...
Atualizada
Adicionar os seguintes parâmetros de inicialização (to GRUB_CMDLINE_LINUX_DEFAULT
) funcionou para mim:
acpi_osi=! acpi_osi="Windows 2009"
[aspas duplas "
precisam ser escapadas com barra invertida \
em /etc/default/grub]
Adereços parahttps://github.com/Bumblebee-Project/Bumblebee/issues/764#issuecomment-594328434(Embora eu não esteja usando o zangão ..)
O sistema consiste em:
- NVIDIA Corporation GP107M [GeForce GTX 1050 Ti Móvel] / NVIDIA GeForce GTX 1050 Ti/PCIe/SSE2
- Executando Ubuntu 20.04.3
- Usando o nvidia-driver-470
Como solução alternativa(não funciona mais...)para mim está suspendendo através da linha de comando (não usando a barra superior "Suspender" nem fechando a tampa - ou os ganchos do pm-suspend pelo que entendi):
systemctrl suspend
Solução ainda não experimentada (copiada) do fórum da nvidia:
Resposta curta, o que acontece- no processo de retomada do Linux (+systemd) esqueça de ligar o monitor. Então, para resolver o problema, basta ligar o monitor.
Solução curta (teste rápido se ajuda ou não)
Ctrl+Alt+F1
, você verá o prompt de login, faça login como usuário normal (não root) e faça (comando de uma linha):
chvt 7 ; sleep 3; xrandr --display :0.0 --auto
Solução longa
Instale o driver 360 e instale todos nvidia-*.service
e instale /usr/bin/nvidia_sleep.sh
o driver 470 (que não contém esses serviços systemd nas /usr/share/doc/nvidia-*
pastas). Edite /usr/bin/nvidia_sleep.sh
e na seção de currículo após o comando chvt adicione sob seu usuário xserver:
sleep 3; xrandr --display :0.0 --auto
Também é necessário adicionar root (pode ser outro) como usuário XServer, portanto, em sua XSession de trabalho, você precisa permitir que root execute xrandr: edite /etc/X11/xinit/xinitrc e adicione:
xhost +localhost
ou
xhost +root@localhost
verifique se funciona:
sudo su -l xrandr
Deveria trabalhar.