Come riavviare una sessione Unity dal terminale?


48

Il comando per riavviare Gnome2 è:

sudo /etc/init.d/gdm restart

Qual è l'equivalente per Unity?

Risposte:


34

Il modo Upstart è

sudo service lightdm restartper le versioni più recenti che utilizzano lightdm

o sudo service gdm restartper le versioni precedenti usando gdm .

Aggiornamento: Un'altra opzione, che non utilizza il terminale ma utilizza una combinazione di tasti, è disponibile in Come impostare la combinazione di tasti per uccidere il server X?


1
Ho trovato questo modo molto pratico e funzionale, grazie.
rjbgbo,

1
Il servizio gdmnon sembra essere disponibile in Ubuntu 14.04.
Thomas Arildsen,

nohup compiz --display :0 --replace &sembra riavviare l'unità senza perdere le finestre della sessione corrente. Vedi askubuntu.com/a/38597/35666
Brenden il

97

Il comando unitypuò essere usato per riavviare l'unità. Riavvia il gestore delle finestre, quindi i tuoi programmi aperti rimarranno intatti e non verrai disconnesso.

Se si esegue il comando da un'app terminale, è necessario aggiungere & disownper staccarlo dal terminale. In caso contrario, il programma unity diventerà un processo figlio dell'app del terminale in modo tale che quando chiudi il terminale, anche l'unità si chiuderà.

Potrebbe anche valere la pena aggiungere &> /dev/null(prima del bit di rinvio) in modo che l'output di testo ed errore non ingombra il terminale.

Quindi, il comando è:

unity &> /dev/null & disown

Se non è possibile aprire l'applicazione terminale dovuta al desktop essere estremamente non risponde (o qualsiasi altro motivo), è possibile aprire un terminale puramente basato su testo colpendo alt-ctrl-F1attraverso F6.

Lì otterrai un terminale di testo, devi prima effettuare il login.

Quindi è possibile eseguire il comando sopra, quindi premere alt-ctrl-F7o alt-ctrl-F8per tornare al desktop grafico.

Questo tende a risolvere i problemi di "sospensione".

Come nota a margine: poiché Unity è un plugin di compiz, puoi riavviare unità riavviando compiz usando il comando:

compiz --replace

Se lo esegui dal alt-ctrl-F1terminale, avrai bisogno di un --displayparametro

compiz --display :0 --replace

Dovrai comunque aggiungere & disown


Grazie. Penso che questo sia migliore di quello accettato perché riavvia solo Unity, non l'intero server di visualizzazione. Grazie!
kroq-gar78,

1
Wow! Uso Ubuntu da 4 anni (forse non tanto, ma comunque ...) e non ero a conoscenza dell'esistenza di & disown. Grazie!
FRD

E un altro punto per Linux su Windows. Riavvio dell'interfaccia utente bloccata senza perdere nulla: Verifica!
Christoph Grimmer-Dietrich,

Solo una cosa minore. Se stai usando una shell diversa da bash (io uso il pesce), usa invece nohup se rinnegata. nohup va all'inizio del comando, in questo modo:nohup compiz --display :0 --replace &
Daniel Rodriguez,

Se stai usando unity-2d, puoi farlounity-2d-shell &> /dev/null & disown
mivk

12

Non è necessario aprire un tty. Nella maggior parte dei casi Alt-F2 funziona ancora. Basta inserire "unità". Questo è tutto. No e rinnegamento necessari.


7

In Ubuntu 13.04 è possibile utilizzare quanto segue:

sudo service lightdm restart

3

In un terminale, eseguire nohup compiz --replace. Il comando nohup farà in modo che compiz non venga chiuso quando si chiude il terminale.


2

Il comando per riavviare GDM è sudo stop gdmseguito da sudo start gdme deve essere eseguito da un tty.

Se stai cercando di riavviare l'unità stessa, esegui semplicemente unity(ma ricorda che devi farlo dalla finestra di dialogo Esegui.


0

Mi piace cambiare l'attributo della dimensione del carattere di GNOME a seconda del monitor. Ho chiuso i programmi direttamente in modo da salvare la posizione della finestra. L'ho inserito nella sceneggiatura che probabilmente fa praticamente la stessa cosa:

    nautilus -q && sleep 2 && bgcmd nautilus -n
    pkill unity-panel
    pkill unity-window
    sleep 1
    unity-window-decorator &> /dev/null & disown
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.