项目地址:
由于作者的项目存在部分缺陷,在后台命令行只能输入256字节内容,我对其进行了,修改,并加入了启动、保活及保号脚本,免去了各位佬友自行添加。
在面板后台你也可以自行设置SSH相关的命令。
先看看效果吧,和cf保活输出内容差不多,其优势在于:
- 可以在后台创建无数个任务
- 灵活性较高
- 可以自定义其他任务脚本
- 不受Cloudflare每次只能执行15s限制
- 相当于小青龙,只是文件不能在后台改,必须去serv00目录改
电报:
1.开放2个端口并开启应用权限
一个端口用于面板登录,一个端口用于交互
2.将域名托管到serv00并创建Website
域名托管不在这里叙述,可以回源加优选解决serv00的IP被墙的问题
参考:
3.创建MySQL数据库
记住信息后面会用
4.下载gocron
无法连接SSH可以用我的webssh进行连接
https://webssh.linux-do.rr.nu/
webssh搭建教程
由于作者项目存在部分小缺陷,我优化了一下并加入了serv00的保活保号脚本
进入 public_html
文件下
cd /usr/home/你的serv名字/domains/域名/public_html
启用 Go Modules 功能
export GO111MODULE=on
下载并进入gocron
git clone https://github.com/zjmkkk/gocron.git && cd gocron
编译项目
make
构建路径
export PATH=$PATH:$(go env GOPATH)/bin
5.修改脚本中的start.sh文件并执行
去文件管理器后台找到start.sh
(在你的域名的/public_html/gocron目录下的,修改文件的面板端口
及交互端口
为你前面创建的并保存
#!/bin/bash
# 启动 gocron web
start_gocron_web() {
echo "Starting gocron web on port 面板端口..."
./bin/gocron web --port 面板端口 &
}
# 启动 gocron-node
start_gocron_node() {
echo "Starting gocron-node on port 交互端口..."
./bin/gocron-node -s 0.0.0.0:交互端口 &
}
# 启动服务
start_gocron_web
start_gocron_node
echo "Services started."
赋权start.sh
chmod +x /usr/home/你的serv名字/domains/域名/public_html/gocron/start.sh
启动脚本
./start.sh
6.安装gocron
访问你的域名
测试一下
7.修改MySQL数据库最大字节限制
8.保活serv00进程
cron填数字,其余不要填,这玩意和一般cron不太一样,第一位随便填个数字,不然消息会爆炸
如:
15 * 1 * * 1
命令放入代码,修改你的账号密码,及需要执行的命令,可以有多个,支持pm2及特殊命令
变量不知道怎么获取看:
bash /usr/home/你的serv00账号/domains/你的域名/public_html/gocron/baohuo.sh \
'[{"ip":"s12.serv00.com","user":"账号","pwd":"密码","commands":["ls", "pwd"]},
{"ip":"s12.serv00.com","user":"账号","pwd":"密码","commands":["df","pm2 /usr/home/serv00name"]}]' \
"你的电报token" \
"你的电报ID"
其余默认保存就行
测试一下消息就开始推送了
9.保号
命令放入代码,修改你的账号密码
bash /usr/home/你的serv00账号/domains/你的域名/public_html/gocron/baohao.sh \
'[{"ip":"s12.serv00.com","账号":"your_user1","pwd":"密码"},
{"ip":"s12.serv00.com","账号":"your_user2","pwd":"密码"}]' \
"你的电报token" \
"你的电报ID"
上面脚本都是我修改后支持消息推送的
如果你单纯想保活,其实很简单,一行命令就解决
sshpass -p "你的密码" ssh -o StrictHostKeyChecking=no 你的serv00名字@s12.serv00.com "你的命令"
10.可以放CF进行外部保活该项目
自己在gocron目录下创建restart.sh文本并修改你的对应路径就行,最后放入CF中
#!/bin/bash
# 设置脚本路径
SCRIPT_PATH="/usr/home/serv00账号/domains/你的域名/public_html/gocron/start.sh"
WORK_DIR="/usr/home/serv00账号/domains/你的域名/public_html/gocron"
PORT=你的面板端口
# 检查端口是否被占用
if ! sockstat -4 -l | grep -q ":$PORT"
then
# 如果端口没有被占用,则重新启动脚本
cd "$WORK_DIR"
nohup ./start.sh > /dev/null 2>&1 &
echo "Restarted start.sh at $(date)" >> "$WORK_DIR/restart_log.txt"
fi
只要该项目不挂掉,你的serv00其他所有号及进程都能一直运行
其作用不止限于serv00保活,linux.do脚本大佬可以以挖掘并分享啊