想服务器每天定时自动重启, 又或者有时候想手动重启一下服务器怕服里有人破坏了玩家体验, 手动去看哪些服有人一个一个重启又太麻烦, 所以写个脚本
代码一坨shit, 应该能用shell脚本或者其他实现, 但是我只会一点python, 就这么用了(大佬轻喷QAQ) 不怕出问题的就拿去用吧
大部分代码来自copilot和chatGPT
效果图:
必须要是LinuxGSM开的服才有用, 或者你拿去自己改一改
有两个版本 a2s 查询的和 rcon 查询的
a2s 查询不需要rcon密码, rcon则可以查询开了-nomaster的服务器, 根据情况选择
安装:
首先你要确认你的服务器上安装了python, 测试环境为python 3.10
下载地址: https://github.com/cinyan10/lgsm-smart-restart
用哪个版本就下哪个, 当然你可以两个都试试
a2s版本:
首先要安装python-a2s
pip3 install python-a2s
把下载好的a2s_restart.py 拖入到用户家目录, 并编辑IP_ADDRESS
a2s查询IP地址不能用127.0.0.1, 不知道为什么, 所只能填公网IP
LGSM_PATH如果你的用户名是csgoserver的话一般不用更改, 这个是用来读取服务器数量和端口号
完成后执行 python3 a2s_restart.py 应该就有效果了
rcon版本
安装rcon
pip3 install rcon
直接拖入家目录, 然后
python3 rcon_restart.py
即可, 会自动读取服务器端口以及rcon密码
你还可以设置cronjob每天自动重启
crontab -e
# 每天 7 点执行重启
0 7 * * * python3 /home/csgoserver/a2s_restart.py > /dev/null 2>&l
# 或
0 7 * * * python3 /home/csgoserver/rcon_restart.py > /dev/null 2>&l
随便乱写的, 有不对的地方请指出