如何自定义在CentOS 6上使用gnome桌面启动的默认应用程序集。*

背景我们运行一系列CentOS 6.5服务器,每个服务器都有多个用户(〜100多台)通过X-Window XDMP从MS Windows桌面进入。 这些用户不需要启动的默认应用程序的主机,如脉冲,音量控制,vino,polkit等等。所以我们要定制启动的默认应用程序集。 但是,我们在这些机器上做例行的yum更新 ,不要我们的自定义覆盖。 Yum / rpm包含一些保留对指定configuration文件的更改的规定。

问题我们可以通过1)删除或者2)在/ etc / xdg / autostart /中相应的.desktop文件中插入“Hidden = true”行来自定义启动的应用程序集,但是其中一些.desktop文件不是在安装它们的RPM软件包(例如gnome-media,polkit-gnome,policycoreutils,vino)中指定为configuration文件。 这意味着如果更新包,这些文件可能会被yum更新操作覆盖。

build议的解决scheme(1)蛮力:写一个yum-update之后的脚本,用来重写我们所做的修改。 无论是手动运行这个或者可以定制yum自动运行。

build议的解决scheme(2)微妙而危险:创build我们自己的定制RPM包,安装包含更改的文件。 然后强制安装这个RPM。 由于冲突,将来要更改文件的RPM更新将停止。 这将中断例行的yum更新,我们将按照手动程序来保存/恢复自定义。

替代解决scheme,想法和批评是最受欢迎的! 谢谢。

这里是我为暴力方法#1提出的脚本:

#!/bin/bash filelist1='at-spi-registryd.desktop bluetooth-applet.desktop gdu-notification-daemon.desktop gnome-at-session.desktop gnome-keyring-daemon.desktop gnome-screensaver.desktop gnome-user-share.desktop gnome-volume-control-applet.desktop gpk-update-icon.desktop nm-applet.desktop polkit-gnome-authentication-agent-1.desktop pulseaudio.desktop restorecond.desktop seahorse-daemon.desktop spice-vdagent.desktop user-dirs-update-gtk.desktop vino-server.desktop' if [ ! -d /etc/xdg/autostart ]; then echo "The assumptions of this script are flawed. Aborting" echo "Directory /etc/xdg/autostart does not exist." exit fi cd /etc/xdg/autostart mkdir -p save for f in $filelist1;do if [ -f $f ]; then mv $f save; else echo "/etc/xdg/autostart/$f not found"; fi done if [ ! -f /usr/share/gnome/autostart/libcanberra-login-sound.desktop ]; then echo "The assumptions of this script are flawed. Aborting" echo "The file /usr/share/gnome/autostart/libcanberra-login-sound.desktop does not exist." exit fi cd /usr/share/gnome/autostart mkdir -p save mv libcanberra-login-sound.desktop save if [ ! -f /usr/share/gnome/shutdown/libcanberra-logout-sound.sh ]; then echo "The assumptions of this script are flawed. Aborting" echo "The file /usr/share/gnome/shutdown/libcanberra-logout-sound.sh does not exist." exit fi cd /usr/share/gnome/shutdown mkdir -p save mv libcanberra-logout-sound.sh save