Cloudreve私有云盘systemd服务化脚本
时间:2025-3-24 09:37 作者:Anglei 分类: Linux
该配置文件定义了 Cloudreve 作为系统服务的完整生命周期管理,包括依赖关系、启动行为、日志处理和自启设置,确保服务可靠运行并易于维护。
创建cloudreve.service,位于/usr/lib/systemd/system/cloudreve.service
[Unit]
Description=Cloudreve
Documentation=https://docs.cloudreve.org
After=network.target
Wants=network.target
[Service]
WorkingDirectory=/usr/cloudreve383
ExecStart=/usr/cloudreve383/cloudreve -c /usr/cloudreve383/conf.ini
Restart=on-abnormal
RestartSec=5s
KillMode=mixed
StandardOutput=file:/usr/cloudreve383/cloudreve.log
StandardError=syslog
[Install]
WantedBy=multi-user.target
-
After=network.target
定义服务启动顺序,确保在网络就绪(network.target)之后启动本服务,避免依赖网络的功能因网络未就绪而失败。 -
Wants=network.target
声明本服务"希望"网络目标被启动,即使网络目标未明确被其他服务依赖,也会尝试启动它(弱依赖关系)。 -
WorkingDirectory=/usr/cloudreve383
设置服务的工作目录为 /usr/cloudreve383,确保程序在该路径下执行。 -
ExecStart=/usr/cloudreve383/cloudreve -c /usr/cloudreve383/conf.ini
定义启动命令,执行 Cloudreve 主程序并指定配置文件 conf.ini 的路径。 -
Restart=on-abnormal
配置异常退出时自动重启(如进程崩溃、被信号终止等),但正常退出(如 systemctl stop)不会触发重启。 -
RestartSec=5s
重启前等待 5 秒,避免频繁重启导致系统负载过高。 -
KillMode=mixed
终止进程时先发送 SIGTERM(允许优雅退出),若超时未退出则发送 SIGKILL 强制终止。 -
StandardOutput=file:/usr/cloudreve383/cloudreve.log
将标准输出重定向到日志文件,便于追踪程序运行状态。 -
StandardError=syslog
将错误输出发送至系统日志(syslog),便于集中管理日志。 -
WantedBy=multi-user.target
定义服务启用时关联的 systemd 目标,multi-user.target 表示多用户命令行模式,通常对应系统完成基础初始化后的状态。启用后可通过 systemctl enable 命令设置开机自启。
设置开机启动,并查看启动状态。
#systemctl enable --now cloudreve.service
#systemctl status cloudreve.service

推荐阅读:
![]() 路过(0) |
![]() 雷人(0) |
![]() 握手(0) |
![]() 鲜花(0) |
![]() 鸡蛋(0) |