AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 650658
Accepted
Kevin Buchs
Kevin Buchs
Asked: 2014-12-11 12:19:51 +0800 CST2014-12-11 12:19:51 +0800 CST 2014-12-11 12:19:51 +0800 CST

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

  • 772

背景我们运行一系列 CentOS 6.5 服务器,每个服务器托管多个用户(约 100 名)通过 X-Window XDMP 从他们的 MS Windows 桌面进入。这些用户不需要启动的默认应用程序主机,如脉冲、音量控制、vino、polkit 等。因此我们希望自定义启动的默认应用程序集。但是,我们会在这些机器上进行例行的yum 更新,并且不希望我们的自定义被覆盖。Yum/rpm 包含一些用于保留对指定配置文件的更改的规定。

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

建议的解决方案 (1)蛮力:编写一个 yum-update 后脚本,该脚本会重新执行我们所做的更改。要么手动运行它,要么可以自定义 yum 以自动运行它。

建议的解决方案 (2)微妙但冒险:创建我们自己的自定义 RPM 包,以安装带有更改的文件。然后强制安装此 RPM。以后想要更改文件的 RPM 更新将因冲突而停止。这将中断日常的 yum 更新,我们将按照手动程序来保存/恢复定制。

非常欢迎替代解决方案、想法和批评!谢谢。

centos
  • 1 1 个回答
  • 309 Views

1 个回答

  • Voted
  1. Best Answer
    Kevin Buchs
    2014-12-18T08:13:19+08:002014-12-18T08:13:19+08:00

    这是我为蛮力方法#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
    
    • 0

相关问题

  • 如何在 Linux 机器上找到有关硬件的详细信息?

  • 使用 crontab 和 /etc/cron.hourly,daily,weekly 的区别

  • 持续监控许多服务器运行状况的简单方法?

  • Hudson 无法在 tomcat5 中启动

  • CentOS 的依赖挑战

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve