Como faço para redefinir X

6

Meu computador parece ter problemas para suspender e retomar corretamente. Mais recentemente, foi retomado do modo de hibernação, estava funcionando bem até que comecei a fazer login e, em seguida, o X congelou completamente. Eu posso fazer o login via SSH (e funciona perfeitamente quando eu faço), e eu adoraria redefini-lo sem reiniciar o computador inteiro, e de preferência sem bater todos os meus aplicativos abertos.

Isso é factível? Se eu tiver que travar os aplicativos abertos, tudo bem, suponho, mas não o preferido.

    
por mlissner 09.08.2010 / 02:21

5 respostas

4

Eu sei que a hibernação ainda tem muitos problemas com uma grande variedade de hardware no Ubuntu. Você pode reiniciar o X Eu acredito que com service gdm restart (ou /etc/init.d/gdm restart ) você deve conseguir resetar o X. Se você usa o Kubuntu ou o KDE, você vai querer usar service kdm restart (ou /etc/init.d/kdm restart )

    
por Marco Ceppi 09.08.2010 / 02:37
4

Como o computador não está travado, Alt + SysRq + k deve matar / reiniciar seu servidor X. Digite-o no X VT não em um console VT.

    
por Li Lo 10.08.2010 / 00:33
0
Tecnicamente, com esses tipos de problemas de "congelamento de X", na verdade não é que o próprio X congelou, mas sim que a GPU da placa de vídeo ficou bloqueada por algum motivo e, portanto, o X não pôde mais atualizar os gráficos nela.

Então, por causa disso, resetar o X geralmente não resolve o problema. Como os dois comentadores anteriores mencionados, existem várias maneiras fáceis de reiniciar o X, como reiniciar o gdm ou o kdm, ou ativar o botão ctrl-alt-backspace e usar essa combinação de teclas. Mas da próxima vez "X congela", vá em frente e tente-os, e aposto que não tem efeito.

O problema realmente está mais profundo na pilha, no nível do kernel. Possivelmente, se você fechou o X, descarregou e recarregou todos os drivers gráficos do kernel, então reiniciou o X. Mas, ao reiniciar o X, você perde todos os seus aplicativos. Então, além de um teste interessante, é provavelmente mais rápido e seguro fazer uma reinicialização completa.

Você não mencionou qual driver de vídeo está usando, mas, por exemplo, com o driver de vídeo da Intel, a GPU é manipulada por código no próprio kernel do Linux. Alguns desenvolvedores têm experimentado adicionar um recurso de "redefinição de GPU" no kernel que irá limpar automaticamente a memória da GPU e reinicializá-la quando parecer que não está mais respondendo aos comandos gráficos. Essa funcionalidade de redefinição é nova e nem sempre funciona em todos os casos por vários motivos, e ainda não está disponível para os drivers de vídeo de código aberto nouveau ou ati. Espero que esteja chegando em breve.

Se você estiver usando um driver proprietário como nvidia ou fglrx, todas as apostas estão desativadas. Verifique os fóruns para os drivers de dicas.

    
por Bryce 09.08.2010 / 05:29
0

Btw, você disse "X congelou completamente", que se for verdade, a minha resposta anterior se aplica. No entanto, um modo de falha comum que eu vi é um problema onde quando a tampa fecha a tela fica em branco e não volta, no entanto X não está congelado neste caso - todos os aplicativos GUI ainda funcionam e produzem ruído e assim por diante . Você simplesmente não vê nada na tela.

Neste caso, é um problema muito diferente - a placa gráfica é capaz de enviar gráficos para várias "saídas" diferentes (por exemplo, LVDS, DVI, VGA, saída de TV), mas apenas dois "canais" ao mesmo tempo. Às vezes, ele escolhe a saída errada para enviar dados. Então gráficos iniciais são enviados para o painel de laptop (LVDS), você fecha a tampa, reabre-a e agora os gráficos estão sendo enviados para a saída de saída de TV, mesmo que você não tenha uma porta de saída de TV física na laptop em si!

O conserto neste caso é geralmente forçar a saída. Costumava ser que você poderia colocar algo em seu xorg.conf para fazer isso, mas agora com o modo de configuração do kernel não é tão fácil. De qualquer forma, eu documentei ambos os métodos no link se você quiser saber os detalhes corajosos de como fazê-lo.

    
por Bryce 09.08.2010 / 05:35
0

Se você precisar reiniciar X com freqüência, você pode fazê-lo com a combinação de teclas Control + Alt + Backspace . Ela costumava ser ativada por padrão no Ubuntu, mas eles a desativaram desde a versão 9.04, eu acho.

Para reativá-lo:

  • Selecione "Sistema" - > "Preferências" - > "Teclado"
  • Selecione a guia "Layouts" e clique no botão "Opções".
  • Selecione “Sequência de teclas para matar o servidor X” e ative Controle + Alt + Backspace .

Eu sugiro que você continue procurando a raiz do seu problema, já que isso é apenas um ataque, mas deve ajudá-lo por enquanto.

    
por Decio Lira 09.08.2010 / 03:01