在不加载桌面环境的前提下,启动图形化软件,总体分以下几步:
禁止桌面环境启动->tty1自动登录->软件自动启动->远程维护时保持进程唯一
1、禁止桌面环境启动
路径:/etc/init/lightdm.conf
修改:
start on ((filesystem
and runlevel [!06]
and started dbus
and plymouth-ready)
or runlevel PREVLEVEL=S)
修改runlevel [!06]为runlevel [!026]
阻止桌面环境启动
2、tty1自动登录
路径:/etc/init/tty1.conf
修改:(本例为root用户自动登陆)
respawn
exec /sbin/getty -8 38400 tty1
修改为
respawn
exec /sbin/getty --autologin root --noclear -8 38400 tty1
3、软件自动启动
路径:~/.bashrc(若是root用户,则为/root/.bashrc)
修改:在最后添加
APPNAME="appname"
APPSTART="appstart.sh"
str1=`ps -ef | grep -v "grep" | grep -c $APPNAME`
if [ $str1 -eq 0 ];then
/usr/bin/nohup $APPSTART > /dev/null &
fi
加入进程判断,远程登陆时防止进程重复启动。
经测试,图形化软件无法从rc.local启动,故放在.bashrc。