Ответы:
Upstart путь
sudo service lightdm restartдля более новых версий, использующих lightdm
или sudo service gdm restartдля более старых версий, использующих GDM .
Обновление: Другой вариант, который не использует терминал, но использует комбинацию клавиш, можно найти в разделе Как настроить комбинацию клавиш для отключения X-сервера?
gdmПохоже, что сервис недоступен в Ubuntu 14.04.
nohup compiz --display :0 --replace &кажется, перезапускает единство, не теряя окна текущего сеанса. См. Askubuntu.com/a/38597/35666
Команда unityможет быть использована для возобновления единства. Он перезапускает оконный менеджер, поэтому ваши открытые программы останутся без изменений, и вы не выйдете из системы.
Если вы запускаете команду из приложения терминала, вы должны добавить ее, & disownчтобы отсоединить от терминала. Если вы этого не сделаете, то программа Unity станет дочерним процессом приложения терминала, поэтому при закрытии терминала Unity также закроется.
Также может быть целесообразно добавить &> /dev/null(до бита disown), чтобы вывод текста и ошибок не загромождал ваш терминал.
Итак, команда:
unity &> /dev/null & disown
Если вы не можете открыть приложение терминала из-за того, что рабочий стол крайне не отвечает (или по какой-либо другой причине), вы можете открыть чисто текстовый терминал, нажав alt-ctrl-F1на него F6.
Там вы получите текстовый терминал, вы должны сначала войти.
Затем вы можете запустить команду выше, затем нажать alt-ctrl-F7или, alt-ctrl-F8чтобы вернуться к графическому рабочему столу.
Это имеет тенденцию устранять проблемы с зависанием.
В качестве примечания: поскольку Unity является плагином compiz, вы можете перезапустить unity, перезапустив compiz с помощью команды:
compiz --replace
Если вы запустите его из alt-ctrl-F1терминала, вам понадобится --displayпараметр
compiz --display :0 --replace
Вам все равно нужно будет добавить & disown
& disown. Спасибо!
nohup compiz --display :0 --replace &
unity-2d-shell &> /dev/null & disown
В Ubuntu 13.04 вы можете использовать следующее:
sudo service lightdm restart
В терминале запустите nohup compiz --replace. Команда nohup гарантирует, что compiz не будет закрыт, когда вы закроете терминал.
За командой перезапуска GDM sudo stop gdmследует команда sudo start gdmtty.
Если вы пытаетесь перезапустить Unity, просто запустите unity(но помните, что вам нужно сделать это из диалогового окна Run.
Мне нравится менять атрибут размера шрифта GNOME в зависимости от монитора. Я закрывал программы напрямую, чтобы сохранить положение окна. Я поместил это в скрипт, который, вероятно, делает то же самое:
nautilus -q && sleep 2 && bgcmd nautilus -n
pkill unity-panel
pkill unity-window
sleep 1
unity-window-decorator &> /dev/null & disown