在Linux、CentOS7中设置shell脚本开机自启动服务

在Linux系统,特别是CentOS 7中,我们有时需要设置某个shell脚本在开机时自动运行。这样可以方便我们自动启动某些服务,或者执行一些初始化的任务。那么,如何在CentOS 7中设置shell脚本开机自启动服务呢?下面就来详细介绍一下。

首先,我们需要创建一个shell脚本。假设我们创建一个名为 my_script.sh的脚本,内容如下:

bash 复制代码
#!/bin/bash
echo "Hello, World!"
​

这个脚本非常简单,只是打印出"Hello, World!"。你可以根据自己的需要,将这个脚本替换为你需要执行的脚本。

然后,我们需要给这个脚本添加执行权限。在终端中,切换到脚本所在的目录,然后执行以下命令:

bash 复制代码
chmod +x my_script.sh
​

接下来,我们需要创建一个systemd服务单元文件。在 /etc/systemd/system/目录下,创建一个名为 my_script.service的文件,内容如下:

ini 复制代码
[Unit]
Description=My Script

[Service]
ExecStart=/path/to/my_script.sh

[Install]
WantedBy=multi-user.target
​

在这个文件中,Description字段是对服务的描述;ExecStart字段是服务启动时执行的命令,需要替换为你的脚本的实际路径;WantedBy字段表示在哪个目标下启动这个服务,multi-user.target表示在多用户模式下启动。

然后,我们需要重新加载systemd的配置,让它知道我们新创建的服务。在终端中执行以下命令:

复制代码
systemctl daemon-reload
​

接下来,我们可以启动我们的服务了。在终端中执行以下命令:

sql 复制代码
systemctl start my_script
​

如果一切正常,你的脚本应该已经被执行了。你可以通过查看系统日志来确认:

复制代码
journalctl -u my_script
​

最后,如果你希望在开机时自动启动这个服务,你需要将它设置为开机自启动。在终端中执行以下命令:

bash 复制代码
systemctl enable my_script
​

至此,你已经成功设置了一个shell脚本开机自启动服务。在下次开机时,你的脚本将会自动执行。

以上就是在CentOS 7中设置shell脚本开机自启动服务的全部步骤。希望这个指南能帮助你更好地管理你的Linux系统。

相关推荐
恋猫de小郭1 分钟前
Flutter Riverpod 3.0 发布,大规模重构下的全新状态管理框架
android·前端·flutter
wordbaby2 分钟前
用 window.matchMedia 实现高级响应式开发:API 全面解析与实战技巧
前端·javascript
晚星star13 分钟前
在 Web 前端实现流式 TTS 播放
前端·vue.js
huabuyu13 分钟前
基于 Taro 的 Markdown AST 渲染器实现
前端
薄雾晚晴14 分钟前
Rspack 性能优化实战:JS/CSS 压缩 + 代码分割,让产物体积直降 40%
前端·javascript
本末倒置18314 分钟前
前端面试高频题:18个经典技术难点深度解析与解决方案
前端·vue.js·面试
就是帅我不改22 分钟前
10万QPS压垮系统?老司机一招线程池优化,让性能飞起来!
后端·面试·github
uzong22 分钟前
系统稳定性保障:研发规约V1.0
后端
Ray6623 分钟前
log4j2.xml配置文件详解
后端
Frank_zhou26 分钟前
Easy-Es 架构设计详解
后端·elasticsearch