没有任务栏,无法右键单击桌面


33

不知道这是怎么发生的。plasmashell在消耗了6GB内存后崩溃了,我试图将其删除~/.cache。毕竟plasmashell可以做的就是用墙纸启动我的桌面背景,但不会给我任何任务栏,并且我无法通过右键单击桌面来调出菜单。

重新启动它或重新引导整个计算机都没有帮助。

Answers:


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”命令产生了一个错误(“退出应用程序plasmashell失败。报告的错误是:org.freedesktop.DBus.Error.NoReply:未收到回复...。”),我不得不杀死等离子外壳。
Daddy32 '18

我现在正在"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

这也发生在我身上。您的解决方案有效,但是我必须首先将〜/ .cache / sycoca5设置为我的用户名。
Geremy

我可以吻你!
DrorCohen

一百万感谢您的帮助:您的修复有所帮助。我完全没有想法了。
lightonphiri '16

1

我还发现当〜/ .config目录中保留了plasma-org.kde.plasma.desktop-appletsrc.lock文件时,会发生这种情况。删除锁定文件可立即解决问题。


转换为评论
Pimp Juice IT

1

就我的KDE 5.8.8而言,删除以下两个配置文件很有帮助:

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

然后再次启动KDE。

由于某些原因,某些升级等操作未在初始设置中配置默认​​小部件(如任务栏)。


0

我知道这篇文章真的很老,但今天仍然是KDE无法解决的错误。它花费了很多时间,但是一次又一次的cofig确实很烦人和烦人,但是今天我找到了最快,最简单的解决方案。只需点击ALT+F2并键入“ ksysguard”,打开它,然后找到“ Kwin_x11”,右键单击它,然后单击发送信号,最后一步是单击Interrupt(INT)在5-10秒内显示会变成黑色,并且您将在登录后立即返回登录部分。面板,墙纸等...一切恢复正常.....我的意思是,无论使用什么配置,您都将它带回了该问题出现之前的状态。我不确定您正在使用该会话的应用程序是否会恢复。因为这是我在进行系统更新时发生的,所以请任何人使用此方法,并且如果未还原工作站,并且您以某种方式还原了它,那么您的应用程序会话还原或不更新将为我们提供更新。求救”

我关于超级用户的第一篇文章。


0

注意:先备份

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

整体错误说明

假定执行以下操作:附加新的第二个监视器->附加旧的第二个监视器。此过程完成后,旧的第二台显示器的“屏幕ID”已损坏。您看不到任何任务栏(面板),墙纸已重置,等等。


以下步骤请参考文件〜/ .config / plasma-org.kde.plasma.desktop-appletsrc(此后为SETTINGS_FILE)


怎么修

I.找出您的监视器的屏幕ID

  • 在两个屏幕上都更改桌面墙纸,例如,显示器1的foo.png和显示器2的bar.png。

下面描述如何找到监视器1的屏幕ID

  • 开启SETTINGS_FILE
  • 在SETTINGS_FILE中找到foo.png和bar.png

您将看到以下块(用于foo.png)

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

这意味着foo.png是[包含] [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的屏幕ID为0(因为监视器1引用foo.png,foo.png引用[Containments] [2],而[Containments] [2]引用lastScreen = 0)。

查找监视器2的屏幕ID的方法相同,例如1。

因此,假设监视器1和监视器2的屏幕ID分别为0和1。

二。查找和替换屏幕ID

  • 在SETTINGS_FILE上运行grep

$ 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

然后重启。


2
您的指示非常不清楚。我不确定人们是否可以根据您编写的内容来实施您的解决方案。您能说得更清楚些吗?
fixer1234 '16
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.