重置 KDE 系统监视器(KSysGuard)

重置 KDE 系统监视器(KSysGuard)

我在尝试恢复备份时出了点问题,KDE 系统防护不再正常显示。

这是正确的显示(从 root 运行的命令kdesudo ksysguard:): [KSysGuard 正确显示图像]

这是不正确显示(命令:)ksysguard[KSysGuard 显示不正确的图片]

此处显示不正确,菜单栏丢失,以及“流程表”选项卡无法点击

我已尝试删除该目录~/.kde/share/apps/ksysguard/但无济于事。

我的问题:如何将 KSysGuard 恢复为出厂默认设置/正常功能?

答案1

“启用”或“禁用”(切换)菜单栏的默认键盘快捷键是Ctrl+M。我相信这将是最简单的解决方案。

答案2

globot 的回答适用于 KDE 4,这个问题是为 KDE 4 编写的,但是现在有了 KDE Plasma 5,一些路径已经发生了改变。

如果您在 KDE Plasma 5 上遇到此问题,您应该MenuBar=从此文件中删除以以下内容开头的行:~/.config/ksysguardrc

以下是可以在 KDE Plasma 5 中恢复 KSysGuard 菜单栏的单行命令:

sed -i '/^MenuBar=/d' ~/.config/ksysguardrc

这是在 KDE 4 中恢复 KSysGuard 菜单栏所需运行的命令:

sed -i '/^MenuBar=/d' ~/.kde/share/config/ksysguardrc

解释

我事后确定globot 的回答~/.kde/share/config/ksysguardrc是正确的,因为我找到了我于 2012 年 7 月 26 日 19:14 CDT 制作的配置文件备份。

该文件的完整内容如下:

State=AAAA/wAAAAD9AAAAAAAAAyAAAAIyAAAABAAAAAQAAAAIAAAACPwAAAABAAAAAgAAAAEAAAAWAG0AYQBpAG4AVABvAG8AbABCAGEAcgAAAAAA/////wAAAAAAAAAA

[DownloadDialog Settings]
Height 1080=400
Width 1920=700

[MainWindow]
CommandList=
HostList=
MenuBar=Disabled
SelectedSheets[$e]=ProcessTable.sgrd,SystemLoad2.sgrd
SplitterSizeList=472,325
State=AAAA/wAAAAD9AAAAAAAAAyAAAAJEAAAABAAAAAQAAAAIAAAACPwAAAABAAAAAgAAAAEAAAAWAG0AYQBpAG4AVABvAG8AbABCAGEAcgAAAAAA/////wAAAAAAAAAA
ToolBarsMovable=Disabled
currentSheet=1
isMinimized=false

正如预期的那样,MenuBar设置为Disabled,这会禁用 KDE 4 中 KSysGuard 的菜单栏。

~/.kde/share/config/ksysguardrc在 KDE Plasma 5 中没有使用,因此为了找到配置文件的新位置,我使用了strace

deltik@workstation [~]# sudo strace -vvvffts1000 ksysguard 2>&1 | grep ksysguardrc
[pid  5534] 23:32:27 stat("/home/deltik/.config/ksysguardrc",  <unfinished ...>
[pid  5534] 23:32:27 lstat("/home/deltik/.config/ksysguardrc",  <unfinished ...>
[pid  5534] 23:32:27 stat("/home/deltik/.config/ksysguardrc", {st_dev=makedev(252, 1), st_ino=1368016, st_mode=S_IFREG|0600, st_nlink=1, st_uid=1000, st_gid=1000, st_blksize=4096, st_blocks=8, st_size=302, st_atime=2015/07/05-23:26:42, st_mtime=2015/07/05-23:26:22, st_ctime=2015/07/05-23:26:22}) = 0
[pid  5534] 23:32:27 access("/home/deltik/.config/ksysguardrc", W_OK) = 0
[pid  5534] 23:32:27 stat("/home/deltik/.config/ksysguardrc", {st_dev=makedev(252, 1), st_ino=1368016, st_mode=S_IFREG|0600, st_nlink=1, st_uid=1000, st_gid=1000, st_blksize=4096, st_blocks=8, st_size=302, st_atime=2015/07/05-23:26:42, st_mtime=2015/07/05-23:26:22, st_ctime=2015/07/05-23:26:22}) = 0
[pid  5534] 23:32:27 stat("/etc/xdg/ksysguardrc", 0x7fffe011c4a0) = -1 ENOENT (No such file or directory)
[pid  5534] 23:32:27 stat("/home/deltik/.config/ksysguardrc", {st_dev=makedev(252, 1), st_ino=1368016, st_mode=S_IFREG|0600, st_nlink=1, st_uid=1000, st_gid=1000, st_blksize=4096, st_blocks=8, st_size=302, st_atime=2015/07/05-23:26:42, st_mtime=2015/07/05-23:26:22, st_ctime=2015/07/05-23:26:22}) = 0
[pid  5534] 23:32:27 open("/home/deltik/.config/ksysguardrc", O_RDONLY|O_CLOEXEC) = 9
[pid  5534] 23:32:27 stat("/home/deltik/.config/ksysguardrc", {st_dev=makedev(252, 1), st_ino=1368016, st_mode=S_IFREG|0600, st_nlink=1, st_uid=1000, st_gid=1000, st_blksize=4096, st_blocks=8, st_size=302, st_atime=2015/07/05-23:26:42, st_mtime=2015/07/05-23:26:22, st_ctime=2015/07/05-23:26:22}) = 0
[pid  5534] 23:32:27 access("/home/deltik/.config/ksysguardrc", W_OK) = 0
[pid  5534] 23:32:30 open("/home/deltik/.config/ksysguardrc.lock", O_WRONLY|O_CREAT|O_EXCL|O_CLOEXEC, 0644) = 14
[pid  5534] 23:32:30 stat("/home/deltik/.config/ksysguardrc", {st_dev=makedev(252, 1), st_ino=1368016, st_mode=S_IFREG|0600, st_nlink=1, st_uid=1000, st_gid=1000, st_blksize=4096, st_blocks=8, st_size=302, st_atime=2015/07/05-23:26:42, st_mtime=2015/07/05-23:26:22, st_ctime=2015/07/05-23:26:22}) = 0
[pid  5534] 23:32:30 open("/home/deltik/.config/ksysguardrc", O_RDONLY|O_CLOEXEC) = 17
[pid  5534] 23:32:30 stat("/home/deltik/.config/ksysguardrc", {st_dev=makedev(252, 1), st_ino=1368016, st_mode=S_IFREG|0600, st_nlink=1, st_uid=1000, st_gid=1000, st_blksize=4096, st_blocks=8, st_size=302, st_atime=2015/07/05-23:26:42, st_mtime=2015/07/05-23:26:22, st_ctime=2015/07/05-23:26:22}) = 0
[pid  5534] 23:32:30 open("/home/deltik/.config/ksysguardrc", O_WRONLY|O_TRUNC) = 17
[pid  5534] 23:32:30 unlink("/home/deltik/.config/ksysguardrc.lock") = 0
^C

上述输出表明ksysguard正在尝试从文件中读取配置~/.config/ksysguardrc

答案3

您可以打开 ~/.kde/share/config/ksysguardrc 并将 MenuBar 设置为“Enabled”:MenuBar=Enabled

如果不存在此变量,则菜单应该默认可见。

答案4

sudo apt-get remove --purge ksysguard删除所有安装文件;然后使用 重新安装sudo apt-get install ksysguard。例如,dpkg -L ksysguard显示 /usr/share/kde4/config/ksysguard.knsrc 中也有配置设置(对于我在 Kubuntu 上的情况)。

然而,这个错误对我来说看起来有点奇怪 - 可能是您以某种方式设法在窗口管理器中进行设置,从而影响了 ksysguard 窗口的显示 - 也许改变了窗口类型设置?

相关内容