Як перезапустити сеанс Unity з терміналу?


48

Команда для перезапуску Gnome2:

sudo /etc/init.d/gdm restart

Що таке еквівалент для Єдності?

Відповіді:


34

Шлях Upstart є

sudo service lightdm restartдля новіших версій, що використовують lightdm

або sudo service gdm restartдля старих версій, що використовують gdm .

Оновлення: Ще один варіант, який не використовує термінал, але використовує комбінацію клавіш, можна знайти в розділі Як встановити комбінацію клавіатур, щоб убити X-сервер?


1
Я знайшов цей дуже практичний та функціональний спосіб, дякую.
rjbgbo

1
gdmЗдається, сервіс не доступний в Ubuntu 14.04.
Томас Арільдсен

nohup compiz --display :0 --replace &Здається, перезавантажте єдність, не втрачаючи вікна вашого поточного сеансу. Дивіться askubuntu.com/a/38597/35666
Бренден

97

Команду unityможна використовувати для перезапуску єдності. Він перезапускає менеджер вікон, тому ваші відкриті програми залишатимуться недоторканими, і ви не виходите з системи.

Якщо ви запускаєте команду з програми терміналу, вам слід додати її, & disownщоб від'єднати її від терміналу. Якщо цього не зробити, програма єдності стане дочірнім процесом програми терміналу таким чином, що при закритті терміналу єдність також закриється.

Можливо, варто також додати &> /dev/null(до біту відхилення), щоб вихід тексту та помилок не захаращував ваш термінал.

Отже, команда така:

unity &> /dev/null & disown

Якщо ви не можете відкрити термінальну програму через те, що на робочому столі вкрай не реагує (або будь-яка інша причина), ви можете відкрити текстовий термінал на основі текстового тексту, натиснувши alt-ctrl-F1наскрізь F6.

Там ви отримаєте текстовий термінал, спочатку потрібно увійти.

Потім ви можете виконати команду вище, потім натиснути alt-ctrl-F7або alt-ctrl-F8повернутися на графічний робочий стіл.

Це, як правило, виправляє «підвісні» проблеми.

Як бічна примітка: оскільки Unity - це плагін compiz, ви можете перезапустити єдність, перезапустивши compiz, використовуючи команду:

compiz --replace

Якщо запустити його з alt-ctrl-F1терміналу, вам знадобиться --displayпараметр

compiz --display :0 --replace

Вам потрібно буде додати & disown


Дякую. Я думаю, що ця краща за прийняту, оскільки вона лише перезапускає Unity, а не весь сервер відображення. Дякую!
kroq-gar78

1
Оце Так! Я використовую Ubuntu 4 роки (можливо, не так вже й багато, але все ж ...) і не знав про існування & disown. Дякую!
FRD

І ще один момент для Linux над Windows. Перезавантажте розбитий інтерфейс користувача, не втрачаючи нічого: Перевірте!
Крістоф Гріммер-Дітріх

Просто незначна річ. Якщо ви використовуєте будь-яку оболонку, окрім bash (я використовую рибу), використовуйте nohup замість цього, якщо відхилений. nohup йде на початку команди, приблизно так:nohup compiz --display :0 --replace &
Даніель Родрігес

Якщо ви використовуєте unity-2d-shell &> /dev/null & disown
юнит

12

Вам не потрібно відкривати tty. У більшості випадків Alt-F2 все ще працює. Просто введіть "єдність". Це воно. Не потрібно & відмовитися.



3

У терміналі запустіть nohup compiz --замініть. Команда nohup переконається, що compiz не закривається, коли ви закриваєте термінал.


2

Команда перезапустити GDM sudo stop gdmдотримується sudo start gdmі повинна виконуватися з tty.

Якщо ви намагаєтеся перезапустити єдність, просто запустіть unity(але пам’ятайте, що вам потрібно зробити це з діалогового вікна запуску.


0

Мені подобається змінювати атрибут розміру шрифту GNOME залежно від монітора. Я вимикав програми безпосередньо, щоб зберегти положення вікна. Я ставлю це до сценарію, який, ймовірно, робить майже те саме:

    nautilus -q && sleep 2 && bgcmd nautilus -n
    pkill unity-panel
    pkill unity-window
    sleep 1
    unity-window-decorator &> /dev/null & disown
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.