Ubuntu22.04 添加开机执行脚本

298 阅读1分钟

在 CentOS 7 中,我们可以很方便在 /etc/rc.local 中添加命令,使其在开机执行。但 Ubuntu 22.04 中默认没有这个文件。

为解决这个问题,我们可以自己创建一个简易的 rc-local 服务。

以下命令均在 root 权限执行

sudo -i # 切换到root执行

1. 添加 systemd 服务文件

vim /etc/systemd/system/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

2. 创建脚本

vim /etc/rc.local

#!/bin/bash
# 开机后主动重启各服务
sleep 30
docker restart tr-mysql
docker restart tr-redis
docker restart tr-nginx

3. 配置权限和开机启动

# 添加权限
chmod 755 /etc/rc.local

# 将rc-local.service使能开机启动并启动
systemctl enable rc-local.service
systemctl start rc-local.service