针对ubuntu 没有rc.local自启动文件的解决方案

1、新建一个服务 rc-local.service

sudo vi /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.targ
 Alias=rc-local.serviceet
 

配置解释

[Unit] 部分

Description=/etc/rc.local Compatibility:描述服务的用途。
ConditionPathExists=/etc/rc.local:只有在 /etc/rc.local 文件存在的情况下,才会启动这个服务。
[Service] 部分

Type=forking:指示服务类型为分叉类型。rc.local 脚本将会启动一个新的进程并立即返回。
ExecStart=/etc/rc.local start:定义启动服务时执行的命令,即执行 /etc/rc.local 脚本。
TimeoutSec=0:设置服务启动超时时间为 0,即不设置超时。
StandardOutput=tty:将服务的标准输出重定向到终端。
RemainAfterExit=yes:指示服务退出后仍然认为它是活跃的。
SysVStartPriority=99:设置服务启动的优先级。
[Install] 部分

WantedBy=multi-user.target:定义服务的目标目标。
Alias=rc-local.service:为服务设置别名。

2、创建/etc/rc.local文件

sudo vim /etc/rc.local

确保脚本内容类似如下:

#!/bin/bash
# 这里可以添加你希望在启动时运行的命令
echo "rc.local 脚本运行中"

exit 0

3、保存并退出编辑器,赋予可执行权限:

sudo chmod +x /etc/rc.local

4、重新加载 systemd 并启动服务
加载 systemd 守护进程:

sudo systemctl daemon-reload

启用并启动服务:

sudo systemctl enable rc-local
sudo systemctl start rc-local

检查服务状态:

systemctl status rc-local.service

状态如下:

root@ubuntu:/etc# systemctl status rc-local.service
● rc-local.service - /etc/rc.local Compatibility
     Loaded: loaded (/etc/systemd/system/rc-local.service; enabled; preset: enabled)
    Drop-In: /usr/lib/systemd/system/rc-local.service.d
             └─debian.conf
     Active: active (exited) since Fri 2024-05-24 21:32:07 CST; 11s ago
    Process: 4525 ExecStart=/etc/rc.local start (code=exited, status=0/SUCCESS)
        CPU: 4ms

May 24 21:32:07 ubuntu systemd[1]: Starting rc-local.service - /etc/rc.local Compatibility...
May 24 21:32:07 ubuntu rc.local[4525]: rc.local 脚本运行中
May 24 21:32:07 ubuntu systemd[1]: Started rc-local.service - /etc/rc.local Compatibility.

通过以上步骤,你应该能够正确配置并启动 rc-local.service。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值