ubuntu编写开机自启动shell脚本
2013-01-04 21:33
561 查看
1、首先编写一个简单的shell脚本
vimtest.sh(不习惯使用vim可以使用nano)进入vim后按i键,然后输入(#!/bin/sh符号#!用来告诉系统它后面的参数是用来执行该文件的程序。)
#!/bin/bash echo"Helloworld!" filename=`date"+%Y%m%d"` echo$filename然后先Esc再shift+z两次(保存)
在命令行输入: chmod +x test.sh (赋予执行权限)
运行:./test.sh
查看命令的路径:whichls(假设查看ls命令的路径)
#后面的内容表示注释,要养成写注释的良好习惯
更多shell编程知识 shell编程简介
2、设置脚本开机自启动
方案一:编辑 /etc/init.d/rc.local 文件,在最后加上你的脚本即可。
比如:我已经编写了一个脚本apk.sh,存放在/home/apk/下面
在Ubuntu终端输入: sudo nano /etc/init.d/rc.local
在结尾出加入: sh /home/apk/shell.sh //即可开机自动加载脚本
方案二:
1) 将你的启动脚本复制到 /etc/init.d目录下
sudo cp test.sh /etc/init.d/
2)执行如下命令将脚本放到启动脚本中去:
cd /etc/init.d
sudo chmod 755 /etc/init.d/test.sh
sudo update-rc.d test.sh defaults95
注:其中数字95是脚本启动的顺序号,按照自己的需要相应修改即可。在你有多个启动脚本,而它们之间又有先后启动的依赖关系时你就知道这个数字的具体作用了。该命令的输出信息参考如下:
update-rc.d: warning: /etc/init.d/test missing LSB information update-rc.d: see
卸载启动脚本的方法:
cd /etc/init.d
sudo update-rc.d -f test.shremove
注意事项:
开始我使用forever命令写了一个脚本,如下:
#!/usr/local/bin/forever
forever start /home/apk/apkAnalysis/app.js
可是不论我使用什么方法它都启动不起来,后来发现它少了一个sudo权限:
#!/usr/local/bin/forever
sudo forever start /home/apk/apkAnalysis/app.js
所以在配置开机启动的时候一定要注意sudo的使用。
查看系统启动的日志:cat /var/log/boot.log
开始是一直都起不来,看了下日志,发现文件不存在;登录之后查看文件是存在的,可能是执行启动脚本的时候用户目录还没有mount上来
然后把工程放到srv目录下面就可以开机自启动了。
改一下权限sudo
chmod 775 /srv/
相关文章推荐
- Linux(Ubuntu)下设置开机启动shell脚本执行Java程序jar包
- ubuntu下编写shell脚本运行 启动goagent
- Linux 开机启动的 执行rc脚本(shell编写)的顺序
- ubuntu开机启动shell脚本
- ubuntu启动流程及开机执行shell脚本
- Ubuntu用户自定义脚本开机启动
- Ubuntu 14.04设置开机启动脚本的方法
- Ubuntu下添加开机启动脚本(转载)
- 为ubuntu创建开机启动脚本
- Ubuntu 16添加开机启动脚本
- Ubuntu 16.04设置rc.local开机启动命令/脚本的方法(通过update-rc.d管理Ubuntu开机启动程序/服务)
- Ubuntu 16.04设置rc.local开机启动命令/脚本的方法
- 编写通用shell脚本启动java项目,适用于多数服务,只需修改服务名即可
- ubuntu 添加开机启动脚本
- ubuntu开机启动脚本
- Ubuntu14.04设置开机启动脚本
- Ubuntu下添加开机启动脚本
- 编写linux service并设置开机启动(Ubuntu)
- Ubuntu 创建开机启动脚本的一种方法(rc.local)
- ubuntu 下 init.d 服务启动脚本编写