如何创建和管理自定义systemd服务

via https://www.cnblogs.com/love-DanDan/p/18401136

如何创建和管理自定义systemd服务

创建和管理自定义 systemd 服务是 Linux 系统管理中的一项重要技能。systemd 是一种初始化系统和服务管理器,广泛应用于现代 Linux 发行版。以下是创建和管理自定义 systemd 服务的详细步骤。

  1. 创建自定义服务单元文件

自定义服务的配置文件称为“单元文件”,通常位于 /etc/systemd/system/ 目录下。
步骤:

创建服务单元文件:
使用文本编辑器(如 nano 或 vim)创建一个新的服务单元文件。命名格式通常为 <service_name>.service。

sudo nano /etc/systemd/system/my_custom_service.service

编写单元文件内容:
在文件中添加以下基本内容:

[Unit]
Description=My Custom Service
After=network.target

[Service]
ExecStart=/usr/bin/my_custom_script.sh
Restart=on-failure

[Install]
WantedBy=multi-user.target

    [Unit]:服务的描述和依赖关系。
    [Service]:服务的执行命令和重启策略。
    [Install]:服务的启动目标。
  1. 重新加载 systemd 配置

在创建或修改单元文件后,需要重新加载 systemd 配置,以使更改生效。

sudo systemctl daemon-reload

  1. 启动和管理服务
    启动服务

使用 systemctl 命令启动自定义服务:

sudo systemctl start my_custom_service

查看服务状态

要查看服务的当前状态,可以使用:

sudo systemctl status my_custom_service

启用服务

如果希望服务在系统启动时自动启动,可以使用:

sudo systemctl enable my_custom_service

停止和禁用服务

停止服务可以使用:

sudo systemctl stop my_custom_service

禁用服务以防止其在启动时运行:

sudo systemctl disable my_custom_service

  1. 日志管理

systemd 提供了 journalctl 命令,可以查看服务的日志输出:

journalctl -u my_custom_service

  1. 示例

假设您有一个脚本 /usr/bin/my_custom_script.sh,内容如下:

!/bin/bash

echo "Hello, World!" >> /var/log/my_custom_service.log

确保该脚本具有可执行权限:

sudo chmod +x /usr/bin/my_custom_script.sh

然后,按照上述步骤创建服务单元文件,重新加载 systemd,启动服务,您应该能在 /var/log/my_custom_service.log 中看到输出。
总结

通过以上步骤,您可以轻松创建和管理自定义 systemd 服务。掌握这些技能后,您能够更有效地管理系统服务,并根据需要扩展和优化它们的功能。

posted @ 2025-02-17 19:28  scott_h  阅读(179)  评论(0)    收藏  举报