Как перезапустить сеанс Unity с терминала?

Вы можете получить имя эмулятора терминала, указав имя процесса родительского процесса. Поэтому он работает с каждым эмулятором терминала.

В bash, zsh и т. Д .:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: [

1
задан 3 July 2015 в 19:20

6 ответов

Команда unity может использоваться для перезапуска единства. Он перезапускает оконный менеджер, поэтому ваши открытые программы останутся нетронутыми, и вы не выйдете из системы.

Если вы запустите команду из приложения-терминала, вы должны добавить & disown, чтобы отсоединить его от терминала , Если вы этого не сделаете, программа единства станет дочерним процессом терминального приложения, так что когда вы закроете терминал, будет также закрыто единство.

Также может быть полезно добавить &> /dev/null ( перед удаленным битом), так что вывод текста и ошибки не загромождает ваш терминал.

Итак, команда:

unity &> /dev/null & disown

Если вы не можете открыть приложение терминала, чтобы рабочий стол был крайне невосприимчив (или по любой другой причине), вы можете открыть чисто текстовый терминал, нажав alt-ctrl-F1 на F6.

Там вы получите текстовый терминал, вы должны сначала войти.

Затем вы можете выполнить команду выше, а затем нажать alt-ctrl-F7 или alt-ctrl-F8, чтобы вернуться к графический рабочий стол

Это имеет смысл исправить «зависающие» проблемы.

В качестве примечания: поскольку Unity является плагином compiz, вы можете перезапустить единицу, перезапустив компилятор с помощью команды: [ ! d8]

compiz --replace

Если вы запустите его с терминала alt-ctrl-F1, вам понадобится параметр --display

compiz --display :0 --replace

Вам все равно нужно добавить & disown

96
ответ дан 25 May 2018 в 21:45
  • 1
    Благодарю. Я думаю, что это лучше, чем принятый, потому что он перезапускает Unity, а не весь экранный сервер. Благодаря! – kroq-gar78 9 March 2013 в 05:41
  • 2
    Вау! Я использую Ubuntu в течение 4 лет (может быть, не так много, но все же ...) и не знал о существовании & disown. Спасибо! – FRD 15 April 2013 в 08:46
  • 3
    И еще один момент для Linux над Windows. Перезапуск вашего разбитого пользовательского интерфейса без потери: проверьте! – Christoph Grimmer-Dietrich 15 May 2013 в 13:16
  • 4
    Просто незначительная вещь. Если вы используете какую-либо оболочку, отличную от bash (я использую рыбу), используйте nohup вместо этого, если вы отключите ее. nohup идет в начале команды, вот так: nohup compiz --display :0 --replace & – Daniel Rodriguez 27 May 2013 в 07:12
  • 5
    Если вы используете single-2d, вы можете сделать unity-2d-shell &> /dev/null & disown – mivk 12 July 2015 в 19:23

Вам не нужно открывать tty. В большинстве случаев Alt-F2 все еще работает. Просто введите «единство». Вот и все. Нет & amp; отключение необходимо.

12
ответ дан 25 May 2018 в 21:45

В Ubuntu 13.04 вы можете использовать следующее:

sudo service lightdm restart
7
ответ дан 25 May 2018 в 21:45

Команда перезапуска GDM - sudo stop gdm, а затем sudo start gdm, и должна выполняться с помощью tty.

Если вы пытаетесь перезапустить единство, просто запустите unity (но помните, что вы необходимо сделать это из диалогового окна запуска.

3
ответ дан 25 May 2018 в 21:45

В терминале запустите nohup compiz -replace. Команда nohup гарантирует, что при закрытии терминала команда compiz не будет закрыта.

3
ответ дан 25 May 2018 в 21:45

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

    nautilus -q && sleep 2 && bgcmd nautilus -n
    pkill unity-panel
    pkill unity-window
    sleep 1
    unity-window-decorator &> /dev/null & disown
0
ответ дан 25 May 2018 в 21:45

Другие вопросы по тегам:

Похожие вопросы: