【问题标题】:Linux Red Hat 5.6 and VNC: KDE & GnomeLinux Red Hat 5.6 和 VNC:KDE 和 Gnome
【发布时间】:2011-11-02 00:18:17
【问题描述】:

我使用的是 Red Hat 5.6,并且我已经为我的 Unix 用户配置了 VNC,没有任何问题。我可以登录它,它默认为 Gnome。 KDE 已安装在机器上,我想使用它。下面是我的 ~/.vnc/xstartup 文件。

我尝试将下面的 twm 替换为“startkde &”,但没有成功。 Gnome 似乎是默认桌面,即使 twm 如下所示,即使我更改它,它也不起作用。即使没有列出桌面,Gnome 仍会启动。

有谁知道为什么会发生这种情况以及如何启动其他桌面?

#!/bin/sh

# Uncomment the following two lines for normal desktop:
unset SESSION_MANAGER
vncconfig -nowin &
exec /etc/X11/xinit/xinitrc

[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
twm &

【问题讨论】:

    标签: linux gnome vnc kde


    【解决方案1】:

    脚本永远不会到达底部,因为“exec”会导致当前进程被 exec 的目标替换,在这种情况下是脚本 /etc/X11/xinit/xinitrc,它获取 /etc /X11/Xsession 脚本,它依次运行 /etc/X11/Xsession.d 的部分,调用默认的 x-session-manager,即 gnome-session。

    【讨论】:

      【解决方案2】:

      仅记录一个如何启动KDE(适用于Centos7)的示例,见下文:

      #!/bin/sh
      
      [ -r /etc/sysconfig/i18n ] && . /etc/sysconfig/i18n
      export LANG
      export SYSFONT
      vncconfig -iconic &
      unset SESSION_MANAGER
      unset DBUS_SESSION_BUS_ADDRESS
      
      DSKTPSTARTKDE="$(type -p startkde)"
      
        # KDE.
        echo "KDE session"
      
        exec "$DSKTPSTARTKDE"
      

      下面是在 Centos7 上启动 KDE、MATE 或 Gnome 的更复杂的原件。

      #!/bin/sh
      
      [ -r /etc/sysconfig/i18n ] && . /etc/sysconfig/i18n
      export LANG
      export SYSFONT
      vncconfig -iconic &
      unset SESSION_MANAGER
      unset DBUS_SESSION_BUS_ADDRESS
      OS=`uname -s`
      if [ $OS = 'Linux' ]; then
        case "$WINDOWMANAGER" in
          *gnome*)
            if [ -e /etc/SuSE-release ]; then
              PATH=$PATH:/opt/gnome/bin
              export PATH
            fi
            ;;
        esac
      fi
      
      ## select a desktop preference MATE, KDE, DEFAULT.
      # comment out mate to get kde, etc. If not there then will try the next.
      #DSKTPMSESSION="$(type -p mate-session)"
      DSKTPSTARTKDE="$(type -p startkde)"**
      #DSKTPGSESSION="$(type -p gnome-session)"
      
      if [ -n "$DSKTPMSESSION" ]; then
        # if MATE run that.
        echo "MATE session"
        # Start up the standard mate desktop
      
        exec "$DSKTPMSESSION"
      
        [ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
        [ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
        x-window-manager &
      
      elif [ -n "$DSKTPSTARTKDE" ]; then
        # if MATE isn't installed, try KDE.
        echo "KDE session"
        unset SESSION_MANAGER
        unset DBUS_SESSION_BUS_ADDRESS
      
        exec "$DSKTPSTARTKDE"
      
      elif [ -n "$DSKTPGSESSION" ]; then
        ################################ !!!!!!!!!!!!!!!!!! doesn't work
        # echo "DESKTOP=KDE" > /etc/sysconfig/desktop
        # KDE default on montpelier tricky to get back to gnome-classic
        # if MATE and KDE isn't installed, try Gnome3 or 2.
        echo "Gnome session"
        unset SESSION_MANAGER
        unset DBUS_SESSION_BUS_ADDRESS
        export GNOME_SHELL_SESSION_MODE=classic
      
        if [ -x /etc/X11/xinit/xinitrc ]; then
          exec /etc/X11/xinit/xinitrc
        fi
        if [ -f /etc/X11/xinit/xinitrc ]; then
          exec sh /etc/X11/xinit/xinitrc
        fi
        [ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
        xset r off # switch off key repeat 
        xsetroot -solid grey
        xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
        exec "$DSKTPGSESSION"
        # below didn't work
        # exec "$DSKTPGSESSION --session=gnome-classic"
        
        ################ Still shows KDE on montpelier drat!!!!!!!!
        
      else
        ## else is go with whatever is the standard probably GNOME3 on centos7
        ## echo "DESKTOP=KDE" > /etc/sysconfig/desktop ;# can switch the default
        echo "DEFAULT session"
      
        if [ -x /etc/X11/xinit/xinitrc ]; then
          exec /etc/X11/xinit/xinitrc
        fi
        if [ -f /etc/X11/xinit/xinitrc ]; then
          exec sh /etc/X11/xinit/xinitrc
        fi
        [ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
        xset r off # switch off key repeat 
        xsetroot -solid grey
        xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
        twm &
      fi
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-03-17
        • 2013-03-03
        • 1970-01-01
        • 2018-03-27
        • 1970-01-01
        • 2016-11-30
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多