当前位置: 首页 > news >正文

minecraft.service 文件配置

minecraft.service 文件配置


# /etc/systemd/system/minecraft.service
[Unit]
Description=Minecraft Fabric Server
After=network.target
Wants=network-online.target

[Service]
User=mcfabricuser
Group=mcfabricuser
WorkingDirectory=/minecraft/1.21.1-fabric-server
ExecStart=/usr/bin/java -Xms1G -Xmx4G -XX:+UseG1GC -jar fabric-server-mc.1.21.1-loader.0.16.10-launcher.1.0.1.jar nogui
ExecStop=/usr/bin/mcrcon -H 127.0.0.1 -P 25575 -p your_rcon_password stop
ExecStopPost=/bin/sleep 10
Restart=on-failure
RestartSec=10
TimeoutStopSec=120
KillMode=process
MemoryLimit=6G
OOMScoreAdjust=-999
StandardOutput=append:/minecraft/1.21.1-fabric-server/minecraft.log
StandardError=append:/minecraft/1.21.1-fabric-server/error.log
WatchdogSec=60
ExecStartPre=/usr/bin/touch /tmp/minecraft-ready
ExecStartPost=/usr/bin/touch /tmp/minecraft-running

[Install]
WantedBy=multi-user.target
# /etc/systemd/system/minecraft-backup.service
[Unit]
Description=Minecraft World Backup
Requires=minecraft.service
After=minecraft.service

[Service]
Type=oneshot
User=mcfabricuser
Group=mcfabricuser
WorkingDirectory=/minecraft/1.21.1-fabric-server
ExecStartPre=/usr/bin/mcrcon -H 127.0.0.1 -P 25575 -p your_rcon_password save-all flush  # 强制保存世界
ExecStartPre=/usr/bin/mcrcon -H 127.0.0.1 -P 25575 -p your_rcon_password save-off       # 禁用自动保存
ExecStart=/bin/bash -c "tar -cvpzf backups/world_$(date +%%F-%%H%%M).tar.gz world"
ExecStartPost=/usr/bin/mcrcon -H 127.0.0.1 -P 25575 -p your_rcon_password save-on       # 恢复自动保存
ExecStartPost=/bin/echo 'Backup completed at $(date)' >> backups/backup.log

# 失败时记录日志
ExecStopPost=/bin/sh -c 'if [ $? -ne 0 ]; then echo "Backup failed at $(date)" >> backups/backup.log; fi'
# /etc/systemd/system/minecraft-backup.timer
[Unit]
Description=Daily Minecraft Backup Timer

[Timer]
# 每天凌晨4点执行
OnCalendar=*-*-* 04:00:00  
# 如果错过时间,开机后补执行
Persistent=true     
# 允许1小时时间窗口        
AccuracySec=1h             

[Install]
WantedBy=timers.target
# 设置权限
sudo chown -R mcfabricuser:mcfabricuser /minecraft
sudo chmod 644 /etc/systemd/system/minecraft*.{service,timer}
# 启动服务
sudo systemctl daemon-reload
sudo systemctl enable minecraft.service minecraft-backup.timer
sudo systemctl start minecraft.service minecraft-backup.timer
# 验证服务状态
systemctl status minecraft.service
journalctl -u minecraft-backup.service -f  # 手动触发一次备份测试
# server.properties 开启 mcrcon
enable-rcon=true
rcon.password=your_rcon_password
rcon.port=25575

注意事项:

  • RCON 配置:确保 server.properties 中的 rcon.password 和 rcon.port 与服务文件一致。
  • 防火墙:若使用非本地 RCON,需开放 25575 端口。
  • 备份验证:定期检查 /minecraft/…/backups 目录下的备份文件是否完整。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.dtcms.com/a/102444.html

相关文章:

  • 关于OpenAI在React框架下搭建的项目雏形
  • Python的概论
  • 《新能源汽车 DEEA 平台开发策略》
  • 鲁大师单文件版
  • c++进阶之------哈希(开放寻址法)
  • 房地产数据可视化管理详细设计基于Spring Boot SSM原创
  • 剑指Offer(数据结构与算法面试题精讲)C++版——整数除法
  • 【Keepalived】Keepalived-2.3.3明确结束对CentOS 7的支持
  • 【蓝桥杯】第十四届C++B组省赛
  • git 常用操作整理
  • L1-083 谁能进图书馆(10分)(超详解)
  • 优化 ant-select(下拉数据太多)导致的页面卡顿问题
  • MPLAB X IDE 环境中配置字的注意点
  • python的sys中sys.argv 和 sys.exit() 用法
  • 数据层的基本操作
  • RKNN SDK User Guide学习要点
  • .NET 调用API创建系统服务实现权限维持
  • 实现ESP32woor连接deepseek进行访问
  • 【 <二> 丹方改良:Spring 时代的 JavaWeb】之 Spring Boot 中的安全性:使用 Spring Security 实现认证与授权
  • React 中的 Props
  • 文件操作与IO—文件读写
  • 开源手机号码价值评估系统
  • AI Agent系列(八) -基于ReAct架构的前端开发助手(DeepSeek)
  • Spring笔记04-注解注入
  • Python每日一题(11)
  • oracle执行计划
  • 《异常检测——从经典算法到深度学习》30. 在线服务系统中重复故障的可操作和可解释的故障定位
  • 42. 接雨水
  • Flutter敏感词过滤实战:基于AC自动机的高效解决方案
  • 二分查找:原理、循环不变量与边界处理