运行startx

时间:2018-02-02 09:24:05

标签: linux xserver

我有一个脚本,允许我重新启动正在运行的Xserver。但是,每当Xserver再次运行时,xinitrc.d文件夹的所有内容都不会被应用。

rm /tmp/startx.logs
LOOPTC=0
while [ $LOOPTC -eq 0 ]
do
   pidof TerminalConfig 1>/dev/null 2>/dev/null
   LOOPTC=$?
   sleep 1
   echo Tc not closed >> /tmp/startx.logs
done
killall gdm 2>/dev/null &
pkill x
if grep ^AUTOLOGIN /etc/sysconfig/autologin | egrep "NO|no|No|nO" ; then
   echo autologin off >> /tmp/startx.logs
   LOOPX=0
   while [ $LOOPX -eq 0 ]
   do
      pidof X 1>/dev/null 2>/dev/null
      LOOPX=$?
      sleep 1
      echo X not closed >> /tmp/startx.logs
   done
fi
clear >> /dev/tty1
for (( i=0; i<4; i++ )) ; do
  sleep 1
  echo Please wait while restarting X11 Windows...  >> /dev/tty1
done
clear >> /dev/tty1
ps ax | grep startx > /tmp/startx.result
sed -e s/.*grep.*//g -e /^$/d /tmp/startx.result -i
echo $(date) :startx: >> /tmp/startx.logs
cat /tmp/startx.result >> /tmp/startx.logs
if [ -s /tmp/startx.result ] ; then
  echo Thu Feb  1 22:50:08 UTC 2018 :startx already running, no need to     execute startx >> /tmp/startx.logs
else
  killall gdm 2>/dev/null &
  startx
  echo $(date) :startx not running, executing startx >> /tmp/startx.logs
fi
if grep --quiet if [ ! /etc/X11/xinit/xinitrc; then
  cp -f /etc/X11/xinit/xinitrc.old /etc/X11/xinit/xinitrc
rm -f /tmp/startx.result
#rm -f /tmp/restart-x.sh

请注意,此脚本始终在Xserver上运行。每当我从控制台运行startx时都会应用所有xinitrc.d内容(没有运行Xserver)。

我想知道,为什么没有应用xinitrc.d文件,即使我已经确保应该使用for-loop应用xinitrc.d文件夹的内容并将其放在xinitrc文件?

0 个答案:

没有答案