Чи можу я перезапустити робочий стіл плазми KDE, не виходячи з системи?


103

Я просто кажу про стандартний робочий стіл KDE. Через деякий час (багато днів) роботи панель завдань перестає працювати належним чином. Це пов’язано з якоюсь недіагностованою помилкою, але це наразі не є моєю помилкою. Це виправлено, як тільки я вийду та знову ввійду.

Я маю закрити все і поточні процеси, такі як віртуальні машини повинні вимикатися. Це великий біль. Зазвичай це означає, що я терпив трохи мерехтіння протягом багатьох днів.

Чи існує спосіб перезавантажити робочий стіл без бомбардування всіх запущених програм?

Відповіді:


161

У 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.
Геремія

7
це plasmashell замість плазмового робочого столу в kde5
Dorien

4
в ArchLinux це kstart5 plasmashellдля KDE5
Daniel Andrei Mincă

3
Я додав це до системних налаштувань -> Ярлики -> Спеціальні ярлики, тому тепер я можу натиснути Ctrl-Alt-Backspace, щоб перезапустити Плазму (я вибрав саме цю комбінацію, оскільки історично вона перезапускає X.org).
Скайлар Іттнер

60

У KDE5 використовуйте "kstart plasmashell" для перезавантаження плазмової оболонки як сервісу замість plamashell &. Якщо ви використовуєте його таким чином, він запускається як автономна послуга, не підключена до поточного сеансу терміналу (тобто ви можете закрити термінал, не припиняючи процес). TLDR:

KDE5 (у терміналі):

killall plasmashell
kstart plasmashell

Просто хотів сказати спасибі за це! Час від часу плазма 5 розмістить цю дивну чорну смугу внизу мого екрану, трохи вище панелі завдань, що сидить над усіма вікнами, що охоплюють все, що знаходиться під ним (ви все ще можете взаємодіяти з речами, що знаходяться під ними, ви просто нічого не можете бачити під панеллю) . killall plasmashell ; kstart plasmashell
Поняття

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

40

Ну, я не очікував, що це спрацює (і це не зовсім те, про що задається питання), але натискання Alt+ F2та запуску:

kwin --replace

Це перезавантажує композитор KDE і, здається, виправляє мерехтіння. Я думаю, що це фактор мого конкретного питання.


6
Спробував це в Kubuntu 15.04. Команда в Kde 5 буде kwin_x11 або kwin_wayland, залежно від серверу, який працює позаду
zurdo

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

1
Рішення, яке працювало для мене, було поєднанням прийнятої відповіді, і ця killall plasmashell; kwin --replace & kstart plasmashell & exit( & exitоскільки я працював у терміналі, інакше композитор залишався залежним від відкритого вікна терміналу, як тут
прописано

1
Чорт забирає, що насправді спрацювало справедливо і площе. Дякую
Сулеман,

2

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

У KDE 4 просто замініть plasmashellнаplasma-desktop


1

Я вважаю, що у мене завжди виникають проблеми з ksycoca5, і це, мабуть, є причиною потрапляння плазмової оболонки, а також припиняє перезапуск плазмової оболонки. Щоб вирішити це, я зробив:

$ 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 я знаходжу, що об'єм пам'яті збільшується досить швидко, тому що відкриття програм поступово використовує більше оперативної пам'яті, але закриття їх не звільняє. Це є в монетному дворі 17.3 з KDE, але, здається, він дуже добре впливає на ВСІ системи плазми 4 KDE.

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

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

Клацніть по значку, і плазма закриється і перезавантажується протягом приблизно 15 секунд. Я все ще можу використовувати відкриті програми на будь-якому віртуальному робочому столі, яким я зараз користуюся під час перезавантаження плазми.


0

Гаразд .. У мене запущено OpenSuse Leap 15.1 із запуском плазми KDE5. Періодично моє середовище X пошкоджується (приблизно через 24 години після моєї роботи машини), і я отримую "KLauncher не вдалося отримати через D-Bus. Помилка під час виклику start_service_by_desktop_path: Не підключено до сервера D-Bus"

Результатом цього є те, що, поки мій робочий стіл все ще функціонує, я не можу запускати жодних програм, які використовують KLauncher - дуже дратує. (ПРИМІТКА: також, як видається, мій xwindows vncserver запускає 99 екземплярів вікон дисплея, до яких я міг би приєднатись - що не так - я ще цього не виправляв, але буду). Однак я знайшов відповідь на вищезазначене питання, щоб перезапустити KDE 5 Плазму в моєму середовищі без перезавантаження:

1) killall plasmashell 2) kstart5 plazmashell kwin

Це перезавантажує все так, ніби система щойно завантажена. Сподіваюсь, це допомагає

Дякую

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.