Jak zrestartować sesję Unity z terminala?

48

Polecenie ponownego uruchomienia Gnome2 to:

sudo /etc/init.d/gdm restart

Jaki jest odpowiednik Jedności?

rjbgbo
źródło

Odpowiedzi:

34

Upstart jest

sudo service lightdm restartdla nowszych wersji korzystających z lightdm

lub sudo service gdm restartdla starszych wersji korzystających z gdm .

Aktualizacja: Inną opcję, która nie używa terminala, ale kombinację klawiszy, można znaleźć na stronie Jak ustawić kombinację klawiatury, aby zabić serwer X?

Egil
źródło
1
Znalazłem ten bardzo praktyczny i funkcjonalny sposób, dziękuję.
rjbgbo
1
Wydaje się, że usługa gdmnie jest dostępna w systemie Ubuntu 14.04.
Thomas Arildsen
nohup compiz --display :0 --replace &wydaje się restartować jedność bez utraty okien bieżącej sesji. Zobacz askubuntu.com/a/38597/35666
Brenden,
97

Polecenia unitymożna użyć do zrestartowania jedności. Ponownie uruchamia menedżera okien, więc otwarte programy pozostaną nienaruszone i nie zostaniesz wylogowany.

Jeśli uruchomisz polecenie z aplikacji terminalowej, powinieneś dodać, & disownaby odłączyć je od terminala. Jeśli tego nie zrobisz, program jedności stanie się procesem potomnym aplikacji terminalowej, tak że po zamknięciu terminalu jedność również się zamknie.

Warto również dodać &> /dev/null(przed bitem disown), aby tekst i błędy nie zaśmiecały terminala.

Tak więc polecenie brzmi:

unity &> /dev/null & disown

Jeśli nie można otworzyć aplikację terminala ze względu na pulpit jest bardzo reaguje (lub jakiegokolwiek innego powodu), można otworzyć zacisk czysto tekstowych trafiając alt-ctrl-F1przez F6.

Tam otrzymasz terminal tekstowy, musisz się najpierw zalogować.

Następnie możesz uruchomić powyższe polecenie, a następnie nacisnąć alt-ctrl-F7lub alt-ctrl-F8wrócić do pulpitu graficznego.

To zazwyczaj rozwiązuje problemy z zawieszaniem się.

Na marginesie: ponieważ Unity jest wtyczką compiz, możesz zrestartować jedność poprzez ponowne uruchomienie compiz za pomocą polecenia:

compiz --replace

Jeśli uruchomisz go z alt-ctrl-F1terminala, potrzebujesz --displayparametru

compiz --display :0 --replace

Nadal będziesz musiał dodać & disown

hasen
źródło
Dzięki. Myślę, że ten jest lepszy od zaakceptowanego, ponieważ uruchamia tylko Unity, a nie cały serwer wyświetlania. Dzięki!
kroq-gar78
1
łał! Używam Ubuntu od 4 lat (może nie tyle, ale nadal ...) i nie wiedziałem o istnieniu & disown. Dziękuję Ci!
FRD
I kolejny punkt dla Linuksa w systemie Windows. Ponowne uruchomienie zawieszonego interfejsu użytkownika bez utraty niczego: sprawdź!
Christoph Grimmer-Dietrich
Drobna rzecz. Jeśli używasz innej powłoki niż bash (używam ryb), zamiast tego użyj nohup, jeśli się go wyrzuci. nohup idzie na początek polecenia, w ten sposób:nohup compiz --display :0 --replace &
Daniel Rodriguez
Jeśli używasz unity-2d, możesz to zrobićunity-2d-shell &> /dev/null & disown
mivk
12

Nie musisz otwierać tty. W większości przypadków Alt-F2 nadal działa. Wystarczy wpisać „jedność”. Otóż ​​to. Nie potrzebne i odrzucane.

Kendor
źródło
7

W Ubuntu 13.04 możesz użyć:

sudo service lightdm restart
Soulman
źródło
3

W terminalu uruchom nohup compiz --replace. Polecenie nohup sprawi, że compiz nie zostanie zamknięty po zamknięciu terminalu.

Jo-Erlend Schinstad
źródło
2

Polecenie, aby ponownie uruchomić GDM jest sudo stop gdmnastępnie sudo start gdm, i powinny być wykonane z terminala.

Jeśli próbujesz ponownie uruchomić samą jedność, po prostu uruchom unity(ale pamiętaj, że musisz to zrobić w oknie dialogowym uruchamiania.

RolandiXor
źródło
0

Lubię zmieniać atrybut rozmiaru czcionki GNOME w zależności od monitora. Zamykam programy bezpośrednio, aby pozycja okna została zapisana. Umieszczam to w skrypcie, który prawdopodobnie robi prawie to samo:

    nautilus -q && sleep 2 && bgcmd nautilus -n
    pkill unity-panel
    pkill unity-window
    sleep 1
    unity-window-decorator &> /dev/null & disown
Todd Partridge „Gen2ly”
źródło