分类: LINUX
2010-12-21 13:52:45
几天之前,为了安装一些KDE应用程序,我下载了KDE的库,使用命令sudo yum install '*kde*devel*'来下载的,本来想只会下载devel文件的,没想到居然安装了很多程序,导致我的应用程序菜单非常繁杂,KDE和gnome的应用程序都出现在了菜单中,让我无可奈何。于是我开始想如何清除掉KDE的菜单,但是保留gnome菜单。网上搜索了很久,也尝试了很多方法,今天终于让我解决了这个问题。以下是我的详细的尝试过程,若只想看结果,可以直接跳到最后。 先简单介绍一下菜单: 菜单: 首先说菜单,菜单包含三个部分来完成。menu 文件用来把 desktop 文件集中起来形成菜单的样式。directory 文件用来描述菜单的目录层次结构,因为只有 desktop 文件的话就没有目录的层次结构了。 menu 文件的位置 全局:/etc/xdg/menus/ 个人:~/.config/menus/ directory 文件的位置 全局:/usr/share/desktop-directories/ 个人:~/.local/share/desktop-directories/ desktop 文件的位置 全局:/usr/share/applications/ 个人:~/.local/share/applications/ 例如 xfce4 的 menu 文件 /etc/xdg/menus/xfce-applications.menu 解释: ======================================= 我开始在三个文件夹中做文章,因为我对于.menu .desktop 和.directory 文件不是很了解,所以不敢直接修改相关的文件内容。我开始用另外的方法,把这些文件备份,然后删除对应文件夹下的与kde相关的文。我开始对这三个文件夹逐一的尝试。 (1)/etc/xdg/menus/ applications.menu kde4-applications.menu server-settings.menu applications-merged kde-information.menu settings.menu documentation.menu preferences.menu settings-merged gnomecc.menu preferences-merged start-here.menu gnome-screensavers.menu preferences-post-merged system-settings.menu 带有kde的就是kde桌面的菜单文件,我首先采取的方法是把这两个文件分别重命名为kde4-applications.menu.bak kde-information.menu.bak .注销用户后发现不行,kde的菜单还有。 (2)directory 文件的位置 全局:/usr/share/desktop-directories/ 这个文件夹的内容特别多, Accessories-More.directory kde-graphics.directory Advanced.directory kde-information.directory Advanced-More.directory kde-internet.directory AllPrograms.directory kde-internet-terminal.directory AudioVideo.directory kde-main.directory Desktop.directory kde-more.directory Development.directory kde-multimedia.directory Development-More.directory kde-office.directory Documentation.directory kde-science.directory Documentation-More.directory kde-settingsmenu.directory Education.directory kde-system.directory Edutainment.directory kde-system-terminal.directory electronics-Analog.directory kde-toys.directory electronics-Automation.directory kde-unknown.directory electronics-Digital.directory kde-utilities-accessibility.directory Electronics.directory kde-utilities-desktop.directory electronics-Embedded.directory kde-utilities.directory electronics-SchematicPCB.directory kde-utilities-file.directory electronics-Spice.directory kde-utilities-peripherals.directory Game.directory kde-utilities-pim.directory Games-More.directory kde-utilities-xutils.directory gnomecc.directory LookAndFeel.directory gnome-screensaver.directory Multimedia-More.directory Graphics.directory Network.directory Graphics-More.directory Office.directory Hardware.directory Office-More.directory InternetAndNetwork.directory Personal.directory Internet-More.directory Root.directory kde-desktop-bak.tar.gz Sawfish.directory kde-development.directory ServerConfig.directory kde-development-translation.directory ServerConfig-More.directory kde-development-webdevelopment.directory Settings.directory kde-editors.directory Settings-More.directory kde-education.directory Settings-System.directory kde-edu-languages.directory SystemConfig.directory kde-edu-mathematics.directory SystemConfig-More.directory kde-edu-miscellaneous.directory System.directory kde-edu-science.directory System-More.directory kde-edu-tools.directory System-Tools.directory kde-games-arcade.directory Utilities.directory kde-games-board.directory Utilities-More.directory kde-games-card.directory Utility-Accessibility.directory kde-games.directory Utility.directory kde-games-kids.directory Wine.directory kde-games-logic.directory X-GNOME-Menu-Applications.directory kde-games-roguelikes.directory X-GNOME-Menu-System.directory kde-games-strategy.directory X-GNOME-Other.directory 我采取的是把kde有关的文件打包,然后删除原来的文件。压缩包就是上面文件中的kde-desktop-bak.tar.gz。rm -f kde*.directory ,删除原来的文件。注销用户后再次进入系统,kde的应用程序菜单还有。 (3)desktop 文件的位置 全局:/usr/share/applications/ 这个文件夹中的内容众多,其中有两个文件夹,kde和kde4 ,那么kde的desktop文件应该就在这两个文件夹中了,果然,这两个文件夹中有大量的.desktop文件,我首先是把这两个文件夹重命名。运行命令: mv -R kde/ kde-bak/ 和 mv -R kde4/ kde4-bak/分别进行重命名。注销用户有再次进入系统,问题依旧,kde菜单还是没有清除。 ~~~~~~~~~~~~~~~~~~~~~~~时间一天一天的过去了~~~~~~~~~~~~~~~~~ 问题的解决: 这个问题困扰着我,今天我继续进行搜索,baidu和google都用上了,可是依旧是那几篇介绍的文章。我用cat打开了几个.menu文件来看,漫无目的的看,突然之间想到,.menu文件调用.desktop 文件时会不会是只要看到.desktop文件就调用呢?这样的话我即使重命名文件夹也无济于事,因为文件夹下的.desktop文件依然能够被调用读取。如果我让它不能读取kde的.desktop 文件会不会就好了呢? 立即行动首先su - ,取得root权限,进入/usr/share/applications/目录使用命令chmod -R 000 kde/ 和chmod -R 000 kde4/ 把kde和kde4目录rwx的权限全部清除。然后注销用户,重新进入系统,世界干净了,kde的菜单没有了。这个时候我想,如果一开始我就一直用tar把kde和kde4两个文件夹备份,然后删除这两个文件夹,说不定早就解决问题了,可是当时我没有采取这个方法,于是这个问题就困扰了我到今天。 |