Ubuntu 开机自动执行--脚本或命令(基于rc.local)

背景

开发过程中,有时需要一些sh脚本、python脚本、命令等在开机的时候自动执行;这种方法比较适合于ubuntu16及之前的版本;毕竟像ubunutu18本来是不带rc.local脚本的。

简介

rc.local脚本是一个Ubuntu开机后会自动执行的脚本,在该脚本内添加命令行,开机时会自动执行。

  • 脚本路径:/etc/rc.local
  • 需要root权限才能修改。

实现步骤

1)打开rc.local脚本

sudo vi   /etc/rc.local

不熟悉vi编辑工具的朋友可以使用vim、gedit等工具代替vi

2)在rc.local脚本添加命令
在exit 0前添加要执行的命令,里面可以直接写命令或者执行Shell脚本文件sh
例如:让ubuntu系统实现每隔5s执行一次温度检测脚本:net-temperature.sh
Ubuntu 开机自动执行--脚本或命令(基于rc.local)
这里可以指定sh脚本的路径目录;
watch -n 5  是指每隔5s重复执行net-temperature.sh (关于对watch不了解的朋友,推荐搜索认识一下)

rc.local脚本的设置开机自动执行的sudo命令也是可以执行的;比如:

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.:
sudo sh run_name.sh
exit 0

rc.local命令不执行,程序不启动的问题

1、添加log,查看程序执行情况
2、rc.local文件头部/bin/sh修改为/bin/bash
3、如果是执行sh文件,那么要赋予执行权限sudo chmod +x xxx.sh,然后启动时加上sudo sh xxx.sh

希望对你有帮助。
如果有不对的,欢迎指正。

上一篇:Ubuntu18 开机自动执行--脚本或命令(基于update-rc.d)


下一篇:用3dmax粒子制作字符雨 打造真实黑客帝国