跳到主要内容

Systemd

自定义服务的启动,并设置为开机自启。以下步骤适用于大部分基于 systemd 的 Linux 发行版。

1. 创建 Service 单元文件

在 /etc/systemd/system/ 目录下创建一个以 “.service” 为后缀的文件,例如:

sudo vim /etc/systemd/system/gscore.service

在文件中写入如下基本内容:并且修改你自己的GsCore路径

[Unit]
Description=GsCore
After=network.target

[Service]
Type=simple

# 修改你自己的GsCore路径
WorkingDirectory=/home/lighthouse/bot/gsuid_core

# uv 启动命令
ExecStart=uv run core

# 如果服务异常退出,则自动重启
Restart=on-failure
RestartSec=5

# 如需要指定运行用户,可添加 User=(例如非 root 用户)
User=root

[Install]
WantedBy=multi-user.target


2. 重新加载 systemd 配置

创建或修改 service 文件后,需要告知 systemd 重新加载配置文件:

sudo systemctl daemon-reload

3. 启动并测试服务

手动启动服务进行测试:

sudo systemctl start gscore.service

查看服务状态以确认启动情况:

sudo systemctl status gscore.service

如果服务运行正常且符合预期,再设置开机自启。


4. 设置开机自启

使用以下命令启用服务,使其在系统启动时自动启动:

sudo systemctl enable gscore.service

5. 查看服务日志

查看服务日志:

sudo journalctl -u gscore.service

实时查看日志:

sudo journalctl -u gscore.service -f

6. 停止服务

停止服务:

sudo systemctl stop gscore.service