Нет панели задач и не может щелкнуть правой кнопкой мыши на рабочем столе

33

Понятия не имею, как это случилось. plasmashellбыл сбой после использования 6 ГБ памяти, и я попытался удалить ~/.cache. Вскоре все, plasmashellчто нужно сделать, это запустить фон рабочего стола с обоев, но не даст мне никакой панели задач, и я не смог вызвать меню, щелкнув правой кнопкой мыши на рабочем столе.

Перезапуск или перезагрузка всей машины не помогли.

jozxyqk
источник

Ответы:

44

Ответ jozxyqk правильный, но он довольно радикальный. Это уничтожит все ваши настройки панели инструментов, избранное приложений и т. Д.

В зависимости от причины этой проблемы в вашем случае, вы можете исправить ее, отредактировав файл plasma-org.kde.plasma.desktop-appletsrc, а затем выполнив

kquitapp plasmashell && kstart plasmashell

Одна из причин, по которой я столкнулся, - глючная функциональность нескольких мониторов, иногда «теряющая» панель задач с экрана моего ноутбука после того, как я подключился к внешнему монитору, а затем отключился (думаю, это было в плазме 5.5 или 5.6). В этом сценарии я обнаружил, что проблема заключается в настройке lastScreen в конфигурации панели задач. Чтобы это исправить, найдите раздел текста в plasma-org.kde.plasma.desktop-appletsrc, который выглядит следующим образом:

[Containments][1]
activityId=
formfactor=2
immutability=1
lastScreen=1
location=4
plugin=org.kde.panel
wallpaperplugin=org.kde.image

(Некоторые из этих строк могут отличаться в вашей конфигурации. В моем, этот раздел был всего лишь дюжиной строк в файле, но я не знаю, насколько это может отличаться.)

Установка lastscreen = 0 исправила проблему для меня. Я предполагаю, что 0 представляет экран моего ноутбука, а 1 - внешний монитор.

Если вы сомневаетесь, вы всегда можете выполнить процедуру в ответе jozxyqk и сравнить вновь сгенерированный plasma-org.kde.plasma.desktop-appletsrc с вашим сохраненным plasma-org.kde.plasma.desktop-appletsrc.bak перед восстановлением отредактированного версия вашей сохраненной копии.

Эрикс
источник
1
@Pavel, если я правильно помню, я нашел это так: ответ jozxyqk приведет меня к правильному файлу. Я сохранил свой файл и использовал его решение, а затем сравнил новый файл со своим старым файлом. lastScreen казался вероятным кандидатом, поэтому я попробовал его (заменив старый файл изменением одной вещи).
EricS
В моем случае команда «kquitapp plasmashell» выдавала ошибку («Сбой при выходе из плазмы приложения». Обнаружена ошибка: org.freedesktop.DBus.Error.NoReply: не получен ответ .... »), и мне пришлось убить Плазменная оболочка.
Daddy32
Я сейчас получаю "Application plasmashell could not be found using service org.kde.plasmashell and path /MainApplication.". Есть ли обновленный сервис для перезапуска?
Парадокс
33

Обновление: сначала посмотрите ответ EricS, так как вы можете избежать потери конфигурации KDE.


Я закончил тем, что удалил случайные файлы конфигурации с именем plasmaв них. Тот, который работал, был:

cd ~/.config
mv plasma-org.kde.plasma.desktop-appletsrc \
   plasma-org.kde.plasma.desktop-appletsrc.bak

Затем перезапустите plasmashell :

kbuildsycoca5 && kquitapp plasmashell && kstart plasmashell
jozxyqk
источник
Это также случилось со мной. Ваше решение сработало, но мне пришлось сначала добавить ~ / .cache / sycoca5 к моему имени пользователя.
Джереми
Я мог бы поцеловать тебя !!!
DrorCohen
Миллион благодарностей за это: твое исправление помогло. У меня полностью закончились идеи.
lightonphiri
1

Я также обнаружил, что это условие возникает, когда файл plasma-org.kde.plasma.desktop-appletsrc.lock остается в каталоге ~ / .config. Удаление файла блокировки сразу решило проблему.

JCMX
источник
Конвертировать в комментарий
Сок Pimp IT
1

В моем случае с KDE 5.8.8 помогло удаление следующих двух конфигурационных файлов:

rm ~/.config/plasma-org.kde.plasma.desktop-appletsrc
rm ~/.config/plasmashellrc

Затем снова запустив KDE.

По некоторым причинам виджеты по умолчанию, такие как панель задач, не были настроены при первоначальной настройке во время некоторых обновлений и т. Д.

Те Ри
источник
0

Я знаю, что этот пост действительно очень старый, но сегодня также эта ошибка не устранена KDE. Это происходит много времени, но кофиг снова и снова действительно раздражает и раздражает, но сегодня я нашел самое быстрое и простое решение для этого. Просто нажмите ALT+F2и введите «ksysguard», откройте его, найдите «Kwin_x11», щелкните правой кнопкой мыши на нем, затем нажмите на сигнал отправки, и последний шаг - нажмитеInterrupt(INT)в течение 5-10 секунд дисплей станет черным, и вы вернетесь в раздел входа, как только войдете в систему. Панель (и), обои и т. Д. ... все вернулось на круги своя ..... Я имею в виду, какую бы конфигурацию вы ни использовали, вы вернули ее, как это было до появления этой проблемы. Я не уверен, что приложение, которое вы используете, восстановит сеанс или нет. Потому что это происходит со мной при выполнении обновления системы, поэтому, пожалуйста, кто-нибудь использует этот метод, и восстановление вашего сеанса приложения или не будет обновлять его, если мы восстановим станцию ​​и каким-то образом вы ее восстановили, дайте нам знать, как вы это сделали заранее, спасибо » помощь за помощь

Мой первый пост на суперпользователя.

Джаеш Мадури
источник
0

NB: сначала сделайте резервную копию

cp ~/.config/plasma-org.kde.plasma.desktop-appletsrc ~/.config/plasma-org.kde.plasma.desktop-appletsrc.bak

Общее описание ошибки

Предположим, что один выполняет следующие действия: присоединяет новый второй монитор -> присоединяет старый второй монитор. После этой процедуры «идентификатор экрана» старого второго монитора будет поврежден. Вы не видите панель задач (панель), обои были сброшены и т. Д.


Ниже приведены шаги к файлу ~ / .config / plasma-org.kde.plasma.desktop-appletsrc (после этого SETTINGS_FILE).


КАК ИСПРАВИТЬ

I. УЗНАЙТЕ ИДЫ ЭКРАНА ВАШИХ МОНИТОРОВ

  • Смените обои на обоих экранах, например, foo.png для монитора 1 и bar.png монитор 2.

Ниже описано, как найти идентификатор экрана для монитора 1

  • Открыть SETTINGS_FILE
  • Найдите foo.png и bar.png в SETTINGS_FILE

Вы увидите следующий блок (для foo.png)

[Containments][2][Wallpaper][org.kde.image][General] 
FillMode=6 
Image=~/Pictures/foo.png 

Это означает, что foo.png является частью [Containers] [2].

  • После этого найдите следующий блок, который ссылается на [Контейнеры] [2]

,

[Containments][2]
activityId=9c23ff19-bffa-4182-bdb6-d9b36dd27cdb
formfactor=0
immutability=1
lastScreen=0
location=0
plugin=org.kde.plasma.folder
wallpaperplugin=org.kde.image

вуаля, мы видим строку 'lastScreen = 0'. Это означает, что идентификатор экрана монитора 1 равен 0 (поскольку монитор 1 ссылается на foo.png, foo.png ссылается на [Containers] [2], а [Containers] [2] ссылается на lastScreen = 0).

Так же, как вы находите идентификатор экрана монитора 2, скажем, 1.

Итак, предположим, что идентификаторы экрана монитора 1 и монитора 2 равны 0 и 1 соответственно.

II. НАЙДИТЕ И ЗАМЕНИТЕ идентификаторы экрана

  • Запустите grep для SETTINGS_FILE

,

$ grep lastScreen=  plasma-org.kde.plasma.desktop-appletsrc
lastScreen=0
lastScreen=1
lastScreen=0
lastScreen=0
lastScreen=1
lastScreen=2
lastScreen=1
lastScreen=0
lastScreen=2
lastScreen=1
lastScreen=0
lastScreen=0
lastScreen=1
lastScreen=2

Как вы можете видеть, есть строки с 'lastScreen = 2'. Это поврежденные линии.

  • В SETTINGS_FILE сделайте замену lastScreen = 2 -> lastScreen = 1.

  • Перезагрузка KDE

,

kquitapp5 plasmashell && kstart5 plasmashell

Теперь ваши рабочие столы должны быть отремонтированы!

Сергей Горбиков
источник
-2

Отредактируйте plasma-appletsrcи удалите этот раздел.

[PlasmaViews][Panel 46][Horizontal1600]
alignment=132
maxLength=1600
minLength=1600
offset=0
panelVisibility=0
thickness=36

Затем перезагрузите компьютер.

rucko
источник
2
Ваши инструкции очень неясны. Я не уверен, что люди могли бы реализовать ваше решение на основе того, что вы написали. Можете ли вы быть более явным?
fixer1234