Можно ли перезапустить KDE Plasma Desktop без выхода из системы?


105

Я просто говорю о стандартном рабочем столе KDE. Через некоторое время (много дней) работы панель задач перестает работать правильно. Это связано с какой-то недиагностированной ошибкой, но на данный момент это не моя проблема. Это исправлено, как только я выхожу и снова вхожу.

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

Есть ли способ просто перезагрузить рабочий стол без бомбардировки всех запущенных приложений?

Ответы:


164

В KDE 4 вы можете сделать:

killall plasma-desktop #to stop it
kstart plasma-desktop #to restart it

В KDE 5 используйте:

killall plasmashell #to stop it
kstart plasmashell #to restart it

В KDE> 5.10 используйте:

kquitapp5 plasmashell
kstart5 plasmashell

9
Как ни странно, они оба могут быть запущены из диалога запуска Alt-F2 (я бы подумал, что убийственная плазма заблокировала бы это во второй раз), но да, работает хорошо и останавливает мерцание.
Оли

4
Это не работает с KDE 5 Plasma.
Геремия,

7
это плазма-оболочка вместо плазма-десктопа в kde5
дориен

4
на ArchLinux это kstart5 plasmashellдля KDE5
Даниэль Андрей Mincă

3
Я добавил это в Системные настройки -> Ярлыки -> Пользовательские ярлыки, так что теперь я могу нажать Ctrl-Alt-Backspace, чтобы перезапустить Plasma (я выбрал именно эту комбинацию, потому что исторически она перезапускала X.org).
Скайлар Итнер

60

В KDE5 используйте «kstart plasmashell», чтобы перезапустить plasmashell как сервис, а не plasmashell &. Если вы используете его таким образом, он будет работать как независимая служба, не подключенная к текущему сеансу терминала (то есть вы можете закрыть терминал без прерывания процесса). TLDR:

KDE5 (в терминале):

killall plasmashell
kstart plasmashell

Просто хотел сказать спасибо за это! Время от времени Plasma 5 будет помещать эту странную черную полосу в нижней части моего экрана чуть выше панели задач, которая находится над всеми окнами, покрывающими все, что находится под ней (вы все равно можете взаимодействовать с вещами, находящимися под ними, но вы ничего не видите под панелью) , killall plasmashell ; kstart plasmashell
Понятия

Простейший способ сделать это - использовать kquitapp5 для Plasma 5. askubuntu.com/a/663702/72652 (лучше всего делать в KRunner, а не в терминале)
Майкл Туннелл

42

Ну, я не ожидал, что это сработает (и это не совсем то, о чем спрашивает вопрос), но нажал Alt+ F2и запустил:

kwin --replace

Это перезагружает композитор KDE, и это, кажется, устраняет мерцание. Я думаю, что это фактор в моей конкретной проблеме.


6
Попробовал это в Kubuntu 15.04. Команда в Kde 5 будет kwin_x11 или kwin_wayland в зависимости от того, какой сервер работает позади
zurdo

1
Я действительно решил использовать комбинацию всех решений: killall plasmashell kwin --replace (ALT-F2) kstart plasmashell withoud kwin --replace, plasmashell не перезапускался (Kubuntu 16.04)
clobrano

1
Решение, которое работало для меня, было сочетанием принятого ответа и этого killall plasmashell; kwin --replace & kstart plasmashell & exit( & exitпоскольку я запускал его в терминале, в противном случае композитор оставался зависимым от того, что окно терминала было открыто, как указано здесь )
Carolus

1
Черт возьми, это на самом деле сработало честно и честно. Спасибо
Сулеман

2

Я посмотрел это, потому что у меня была проблема, когда я не мог открыть меню настроек KDE, но я не хотел перезагружаться или выходить из системы. Я обнаружил , что лучший способ сделать это (в KDE 5 , по крайней мере) является использование Krunner (Alt + F2) , чтобы killall plasmashellзатем сразу же после этого, plasmashell. Я попытался сделать это в окне Konsole, используя killall plasmashellи затем, plasmashell &и это сработало, но как только я закрою окно Konsole, плазма тоже закроется. Несмотря на то, что вы, похоже, решили свою проблему, я решил опубликовать ее для людей, которые будут приходить в будущем, чтобы перезапустить плазму.

В KDE 4 просто замените plasmashellнаplasma-desktop


1

Я обнаружил, что у меня всегда возникают проблемы с ksycoca5, и это, кажется, является причиной того, что plasmashell попадает в стропу, а также останавливает перезапуск plasmashell. Чтобы решить это, я сделал:

$ mv ~/.cache/ksycoca5* /tmp
$ killall plasmashell buildksycoca5; kstart plasmashell

0

Я также попробовал что-то вроде:

killall plasmashell; kstart plasmashell

Или даже это:

killall plasmashell; kwin --replace && kstart plasmashell

Но по неизвестным причинам это не сработало.

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

killall plasmashell ; sleep 3 ; kwin --replace ; sleep 5 ; kstart plasmashell

Наконец, я заметил, что при вводе 'kwin|plasma'в KSysGuardполе фильтра он сообщает, что после уничтожения plasmashellтакие *.soфайлы все еще присутствуют: desktop.so, file.so. Мы должны убить их тоже. В противном случае у нас будут копии этих файлов после каждого перезапуска.

Итак, последние команды перезапуска рабочего стола плазмы:

killall plasmashell desktop.so file.so ; sleep 5 ; kwin --replace ; sleep 5 ; kstart plasmashell

0

Диспетчер окон kwinотвечает за перемещение по окнам и т. Д. Это может быть перезапущено следующим образом:

kstart kwin --replace

kstartПрефикс просто не запускать его как подпроцесс в текущем терминале, так что вы можете закрыть терминал впоследствии.

plasmashellотвечает за фон и другие вещи оболочки. Перезапуск должен работать так:

killall plasmashell
kstart plasmashell

Обратите внимание, что это не вернуло меню для меня.

Кроме того, что интересно, это снова нарушает Kwin для меня, то есть я больше не могу перемещать окна. На консоли я получаю что-то вроде QXcbConnection: XCB error: 3 (BadWindow), sequence: ..., resource id: ..., major code: 15 (QueryTree), minor code: 0.


0

В KDE4 я обнаружил, что использование памяти довольно быстро увеличивается, потому что при открытии программ постепенно увеличивается объем оперативной памяти, но закрытие их не освобождает ее. Это в Mint 17.3 с KDE, но, похоже, очень хорошо влияет на ВСЕ системы KDE plasma 4.

Мне надоело входить и выходить из системы или использовать ALT + F2, чтобы убить и перезапустить плазму. Так что теперь у меня просто есть скрипт (установленный как исполняемый), сидящий на панели ..

   
#!/bin/bash 
killall plasma-desktop 
plasma-desktop & 
   

Нажмите на иконку, и плазма закроется и перезапустится примерно через 15 секунд. Я все еще могу использовать открытые программы на любом виртуальном рабочем столе, который я сейчас использую, пока перезапускается плазма.


0

ОК .. Я использую OpenSuse Leap 15.1 под управлением KDE5 Plasma. Периодически моя X-среда повреждена (примерно через 24 часа после того, как мой компьютер не работает), и я получаю сообщение «Не удалось связаться с KLauncher через D-Bus. Ошибка при вызове start_service_by_desktop_path: Не подключен к серверу D-Bus»

Результатом этого является то, что, хотя мой рабочий стол все еще функционирует, я не могу запускать какие-либо приложения, использующие KLauncher - очень раздражает. (ПРИМЕЧАНИЕ: также мой xwindows vncserver, по-видимому, запускает 99 экземпляров окон отображения, к которым я мог подключиться - что не правильно - я еще не исправил это, но сделаю это). Однако я НАШЕЛ ответ на вышеуказанную проблему, чтобы перезапустить KDE 5 Plasma в моей среде без перезагрузки:

1) килллас плазмашелл 2) kstart5 плазмашелл квин

Это перезапускает все, как будто система недавно загружена. Надеюсь это поможет

Спасибо

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.