在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系统。

相关推荐
2401_8590490835 分钟前
git submodule update --init --recursive无法拉取解决
前端·chrome·git
这是个栗子1 小时前
【Vue代码分析】前端动态路由传参与可选参数标记:实现“添加/查看”模式的灵活路由配置
前端·javascript·vue.js
刘一说1 小时前
Vue 动态路由参数丢失问题详解:为什么 `:id` 拿不到值?
前端·javascript·vue.js
熊猫钓鱼>_>2 小时前
动态网站发布部署核心问题详解
前端·nginx·容器化·网页开发·云服务器·静态部署
方也_arkling2 小时前
elementPlus按需导入配置
前端·javascript·vue.js
好好研究2 小时前
Spring Boot - Thymeleaf模板引擎
java·spring boot·后端·thymeleaf
爬山算法2 小时前
Hibernate(76)如何在混合持久化环境中使用Hibernate?
java·后端·hibernate
我的xiaodoujiao2 小时前
使用 Python 语言 从 0 到 1 搭建完整 Web UI自动化测试学习系列 44--将自动化测试结果自动推送至钉钉工作群聊
前端·python·测试工具·ui·pytest
她说..2 小时前
策略模式+工厂模式实现单接口适配多审核节点
java·spring boot·后端·spring·简单工厂模式·策略模式
沛沛老爹2 小时前
Web开发者转型AI:多模态Agent视频分析技能开发实战
前端·人工智能·音视频