Ubuntu-18 开机自动启动自定义程序

Ubuntu-18 开机自动启动自定义程序

ubuntu18.04不再使用 inited 管理系统,改用 systemd。但是个人认为开机启动的rc.local更加好用,所以可以自己配置rc.local

1.实现原理

systemd 默认会读取 /etc/systemd/system 下的配置文件,该目录下的文件会链接 /lib/systemd/system/ 下的文件。一般系统安装完 /lib/systemd/system/ 下会有 rc-local.service 文件,即我们需要的配置文件。

2.将 /lib/systemd/system/rc-local.service 链接到 /etc/systemd/system/ 目录下面来

ln -fs /lib/systemd/system/rc-local.service /etc/systemd/system/rc-local.service

修改文件内容

vim /etc/systemd/system/rc-local.service
#在文件末尾增加
[Install]
WantedBy=multi-user.target
Alias=rc-local.service

3.创建/etc/rc.local文件

#!/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.
/bin/sh /vbaas_agent/start.sh > /vbaas_agent/agent_start.log 2>&1
/bin/sh /vbaas_agent/configtxlator-start.sh >> /vbaas_agent/agent_start.log 2>&1
exit 0

4.给 rc.local 加上权限,启用服务

chmod 755 /etc/rc.local
systemctl enable rc-local

5.启动服务并检查状态

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

6.自定义脚本,并给足够权限:

7. 重启服务器验证

8.查看服务启动和日志:

posted @   邹姣姣  阅读(3650)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· AI 智能体引爆开源社区「GitHub 热点速览」
点击右上角即可分享
微信分享提示