您的位置:首页 > 移动开发

ubuntu添加开机启动脚本(服务,app)

2016-03-30 22:00 429 查看
1、方法一,编辑rc.loacl脚本

Ubuntu开机之后会执行/etc/rc.local文件中的脚本,

所以我们可以直接在/etc/rc.local中添加启动脚本。

当然要添加到语句:exit 0 前面才行。

如:

sudo vi /etc/rc.local

/home/neo/test.sh

exit 0

然后在 exit 0 前面添加好脚本代码。

2、方法二,添加一个Ubuntu的开机启动服务。

如果要添加为开机启动执行的脚本文件,

可先将脚本复制或者软连接/etc/init.d/目录下,

然后用:update-rc.d xxx defaults NN命令(NN为启动顺序),

将脚本添加到初始化执行的队列中去。

注意如果脚本需要用到网络,则NN需设置一个比较大的数字,如99。

1) 将你的启动脚本复制到 /etc/init.d目录下

以下假设你的脚本文件名为 test。

2) 设置脚本文件的权限

$ sudo chmod 755 /etc/init.d/test
3) 执行如下命令将脚本放到启动脚本中去:
$ cd /etc/init.d

$ sudo update-rc.d test defaults 95

注:其中数字95是脚本启动的顺序号,按照自己的需要相应修改即可。在你有多个启动脚本,而它们之间又有先后启动的依赖关系时你就知道这个数字的具体作用了。该命令的输出信息参考如下:
update-rc.d: warning: /etc/init.d/test missing LSB information
update-rc.d: see <http://wiki.debian.org/LSBInitScripts>
Adding system startup for /etc/init.d/test ...
/etc/rc0.d/K95test -> ../init.d/test
/etc/rc1.d/K95test -> ../init.d/test
/etc/rc6.d/K95test -> ../init.d/test
/etc/rc2.d/S95test -> ../init.d/test
/etc/rc3.d/S95test -> ../init.d/test
/etc/rc4.d/S95test -> ../init.d/test
/etc/rc5.d/S95test -> ../init.d/test


卸载启动脚本的方法:

$ cd /etc/init.d

$ sudo update-rc.d -f test remove

命令输出的信息参考如下:
Removing any system startup links for /etc/init.d/test ...
/etc/rc0.d/K95test
/etc/rc1.d/K95test
/etc/rc2.d/S95test
/etc/rc3.d/S95test
/etc/rc4.d/S95test
/etc/rc5.d/S95test
/etc/rc6.d/K95test


-----------------------------------------------------------------------------------------------------------

下面是桌面版开机子启动程序(app)。需先安装app之后

下面以firefox为例:

第一步:安装:sudo apt-get install firefox

第二步:设置,完整流程如下:

mkdir -p ~/.config/autostart

sudo cp /usr/share/applications/firefox.desktop ~/.config/autostart/

sudo chown username:group firefox.desktop

chmod 0755 firefox.desktop

sudo reboot -f

重启之后会自动运行firefox

备注: rm ~/.config/autostart/firefox.desktop 即可取消开机自启动。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: