ubuntu开机启动特定程序

法1.在/etc/rc.local里添加程序的执行命令,要是全路径的,rc.local是不能起qt界面程序的

法2.在用户的HOME目录下有.config/autostart目录,这里添加xxx.desktop文件,并加执行权限,调用的程序也要有执行权限

文件内容例如下:

#!/usr/bin/env xdg-open                                             #这是调用xdg-open命令

[Desktop Entry]
Version=1.0
Name=PIS                                   #名字
Comment=pis monitor             #鼠标经过时的描述
Exec=/home/mission/start.sh            #启动后调用的程序
StartupNotify=false
Terminal=false                          #是否使用终端
Type=Application                       #类型
OnlyShowIn=GNOME;Unity;
X-Desktop-File-Install-Versioin=0.20
Name[zh_CN]=pis                    #中文名

法3.设置启动应用程序
打开 “Startup Applications Preferences”(启动应用程序首选项)。你可以按下 Ctrl + Alt + T 组合键打开终端,然后输入以下命令打开它:
gnome-session-properties
1
在 “Startup Applications”(启动应用程序)对话框中,点击 “Add”(添加)按钮

法4.利用定时任务crontab开机自启

crontab -e

写入

@reboot /home/mission/start.sh &

就可以在开机时启动脚本,但是刚开始是不能起动界面程序的,可能环境变量没有准备好,所以脚本要是循环拉才行,每次都设置一下环境变量 

#!/bin/sh

APP_RUN_PATH=/home/mission/PisPlayer
APP_NAME=StationPisPlayer
SLEEP_TIME=10
cd $APP_RUN_PATH

while true; do

#### export VLC_PLUGIN_PATH#########
export VLC_PLUGIN_PATH=/usr/lib/vlc/plugins/
export DISPLAY=:0.0
   #check the process
   pidof $APP_NAME
   if [  $? != 0 ]; then
      if [ -f $APP_RUN_PATH/$APP_NAME ] ; then  
logger "call 2222222222222222222"
         $APP_RUN_PATH/$APP_NAME &
         sleep $SLEEP_TIME
      else
         exit 0
      fi    
   fi  
   sleep $SLEEP_TIME 
done

法5.还是定时任务,设置1分钟执行一次

*/1 * * * * /home/mission/PisPlayer/start.sh &

脚本就是

#!/bin/bash
export DISPLAY=:0.0
logger "call ------------------------------"
APP_RUN_PATH=/home/mission/PisPlayer
APP_NAME=StationPisPlayer

SLEEP_TIME=10
echo $$
pidof $APP_NAME
if [ $? -eq 1 ]; then
logger "call test1 ------------------------------"
  export VLC_PLUGIN_PATH=/usr/lib/vlc/plugins/
  cd $APP_RUN_PATH
  $APP_RUN_PATH/$APP_NAME &
fi

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值