jk's notes
  • Ubuntu18+配置rc-local启用自动运行脚本

Ubuntu18+配置rc-local启用自动运行脚本

基本思路是启用一个服务, 然后在服务中执行某个具体的脚本. 需要自动启动的脚本写到这个服务中即可.

基本步骤:

  1. 创建 service 文件, 配置其执行 /etc/rc.local 文件.
  2. 编辑 /etc/rc.local 基本结构, 并将需要执行的脚本写入.
  3. 设置 /etc/rc.local 执行权限.
  4. 启用服务.
  5. 启动服务, 并检查服务状态.

如此提供一个脚本位置, 将每一个需要开机启动的命令写入即可. 不用为每一个应用都创建一个服务.

但是也无法用服务单独管理每一个应用.

详细操作步骤

rc-local.service 文件

[Unit]
Description=/etc/rc.local Compatibility
ConditionPathExists=/etc/rc.local

[Service]
Type=forking
ExecStart=/etc/rc.local start
TimeoutSec=0
StandardOutput=tty
RemainAfterExit=yes
SysVStartPriority=99

[Install]
WantedBy=multi-user.target

rc.local 文件

#!/bin/sh -e
# 需要运行的脚本...

exit 0

为 rc.local 添加权限

sudo chmod +x /etc/rc.local

启用服务 (会生成符号链接)

sudo systemctl enable rc-local.service

禁用服务 (会删除符号链接) sudo systemctl disable rc-local.service

启动服务, 并查看服务状态

sudo systemctl start rc-local.service
sudo systemctl status rc-local.service

可以考虑在 rc.local 编写默认脚本:

echo "开启启动: $(date +"%F %T")" >> /home/jk/log.log
Last Updated:
Contributors: jk