Como reinicio uma sessão do Unity a partir do terminal?

48

O comando para reiniciar o Gnome2 é:

sudo /etc/init.d/gdm restart

Qual é o equivalente para Unity?

rjbgbo
fonte

Respostas:

34

O caminho inicial é

sudo service lightdm restartpara versões mais recentes usando lightdm

ou sudo service gdm restartpara versões mais antigas usando o gdm .

Atualização: Outra opção, que não está usando o terminal, mas sim uma combinação de teclas, pode ser encontrada em Como definir a combinação do teclado para matar o servidor X?

Egil
fonte
1
Achei muito prático e funcional, obrigado.
Rjbgbo
1
O serviço gdmnão parece estar disponível no Ubuntu 14.04.
Thomas Arildsen
nohup compiz --display :0 --replace &parece reiniciar a unidade sem perder as janelas da sua sessão atual. Veja askubuntu.com/a/38597/35666
Brenden
97

O comando unitypode ser usado para reiniciar a unidade. Ele reinicia o gerenciador de janelas, para que seus programas abertos permaneçam intactos e você não será desconectado.

Se você executar o comando em um aplicativo de terminal, adicione-o & disownpara desanexá-lo do terminal. Caso contrário, o programa unity se tornará um processo filho do aplicativo do terminal, de modo que, quando você fechar o terminal, a unidade também será fechada.

Também pode valer a pena adicionar &> /dev/null(antes do bit rejeitado) para que a saída de texto e erro não perturbe seu terminal.

Então, o comando é:

unity &> /dev/null & disown

Se você não conseguir abrir o aplicativo de terminal devido à falta de resposta da área de trabalho (ou por qualquer outro motivo), poderá abrir um terminal puramente baseado em texto clicando alt-ctrl-F1nele F6.

Lá você terá um terminal de texto, primeiro terá que fazer o login.

Em seguida, você pode executar o comando acima e pressionar alt-ctrl-F7ou alt-ctrl-F8para retornar à área de trabalho gráfica.

Isso tende a corrigir problemas "pendurados".

Como uma observação lateral: como o Unity é um plug-in compiz, você pode reiniciar o unity reiniciando o compiz usando o comando:

compiz --replace

Se você executá-lo a partir do alt-ctrl-F1terminal, precisará de um --displayparâmetro

compiz --display :0 --replace

Você ainda precisará adicionar & disown

hasen
fonte
Obrigado. Eu acho que este é melhor que o aceito, porque apenas reinicia o Unity, não o servidor de exibição inteiro. Obrigado!
precisa saber é o seguinte
1
Uau! Uso o Ubuntu há 4 anos (talvez não tanto assim, mas ainda assim ...) e não estava ciente da existência de & disown. Obrigado!
FRD
E outro ponto para o Linux no Windows. Reiniciando sua interface do usuário travada sem perder nada: verifique!
Christoph Grimmer-Dietrich
Apenas uma coisa menor. Se você estiver usando outro shell que não seja o bash (eu uso peixe), use nohup, se recusado. nohup vai no início do comando, assim:nohup compiz --display :0 --replace &
Daniel Rodriguez
Se você estiver usando o unity-2d, você pode fazerunity-2d-shell &> /dev/null & disown
mivk
12

Você não precisa abrir um tty. Na maioria dos casos, o Alt-F2 ainda funciona. Basta digitar "unidade". É isso aí. Não é necessário renegar.

Kendor
fonte
7

No Ubuntu 13.04, você pode usar o seguinte:

sudo service lightdm restart
Soulman
fonte
3

Em um terminal, execute nohup compiz --replace. O comando nohup garantirá que o compiz não esteja fechado quando você fechar o terminal.

Jo-Erlend Schinstad
fonte
2

O comando para reiniciar o GDM é sudo stop gdmseguido sudo start gdme deve ser executado a partir de um tty.

Se você estiver tentando reiniciar a própria unidade, basta executar unity(mas lembre-se de fazer isso na caixa de diálogo Executar).

RolandiXor
fonte
0

Eu gosto de mudar o atributo de tamanho da fonte do GNOME, dependendo do monitor. Eu tenho desligado os programas diretamente para que a posição da janela seja salva. Coloquei isso no script, que provavelmente faz praticamente a mesma coisa:

    nautilus -q && sleep 2 && bgcmd nautilus -n
    pkill unity-panel
    pkill unity-window
    sleep 1
    unity-window-decorator &> /dev/null & disown
Todd Partridge 'Gen2ly'
fonte