200字
三步后台运行Ubuntu应用程序
2025-12-12
2025-12-12

初接触linux的朋友们经常会遇到需要一些程序在后台运行却不知道怎么做的问题,今天就给大家介绍一个想要长期运行后台程序必学的技能:systemctl

简而言之,它可以把你想跑的程序变成系统服务,让其具备自动启动、后台运行的效果

以我目前在用的frpc为例,我需要后台运行 /root/frpc -c /root/frpc.toml 这个带参数的程序

  1. 创建一个服务配置文件

/etc/systemd/system 目录下创建 frpc.service 文件

文件名字除后缀外可以自定义

  1. 文件内输入以下配置

[Unit]
Description=Frp Client Program
StartLimitIntervalSec=0

[Service]
ExecStart=/root/frpc -c /root/frpc.toml
WorkingDirectory=/root/
User=root
Restart=always
RestartSec=10

[Install]
WantedBy=multi-user.target
  1. 启用服务并初次启动

systemctl enable frpc.service
systemctl start frpc.service

完成!

一些初次使用需要注意的点:

  1. 配置文件中的 ExecStart 参数指的是你要运行的指令,要自行修改

  2. 配置文件中的 WorkingDirectory 是程序运行的工作目录,我这里运行的指令已经都是绝对路径所以 WorkingDirectory 并不关键,但不能填写不存在的路径否则无法正常运行,一般而言会填写要运行的程序所在的文件夹

  3. 重启策略 Restart=always 代表如果程序退出一定会自动启动,所以哪怕是关机了或者程序崩掉了也会自动重新启动

评论