前言
前段时间使用E5SubBot来对365 E5进行续订,使用后发现E5SubBot项目确实有效。由于之前是使用nohup将程序放在后台运行,程序运行一段时间后会停止。为了解决这个问题,于是自己写了一个shell脚本,然后配合计划任务就解决了这个问题,事后发现自己又绕了弯路,用systemd服务不是更好吗?
不过自己写过的东西还是记录一下,直接删了又感觉没意义了,下面是我最开始写的脚本。
接着配合计划任务,每两个小时执行一次自己写的shell判断是否已经停止运行,如果停止了就启动,没有停止则忽略。
然而上述方法并不是一个完美的方案,后来我将使用计划任务的方案改为了systemd服务的方式运行,我使用的服务器的操作系统是Centos 7,具体的过程如下。
安装过程
以下是我在Centos 7操作系统中的具体安装过程。
访问E5SubBot项目地址
E5SubBot项目Github地址:https://github.com/iyear/E5SubBot/releases
选择合适的版本
根据自己服务器的具体情况选择对应版本进行下载。这里我选择的是E5SubBot_Linux_64bit的版本,目前大多数服务器使用的均为此版本。
解压文件
将刚下载下来的文件进行解压。
得到如下四个文件,而我们需要使用的是E5SubBot这个二进制文件。
创建文件夹并移动文件
将解压出来的文件E5SubBot移动到对应目录下。
安装MYSQL数据库
如果你已经安装了数据库,请进入下一步。这里我选择的是MYSQL5.7,如果你的服务器内存过小,可以使用MYSQL5.6或者选择使用远程MYSQL。
选择其他版本数据库:
启动mysql数据库:
获取MYSQL的默认密码:
接下来你应该会看到如下的一段文本,其中t;uY?tk&S2bT
就是你的密码:
登录数据库:
由于MYSQL57默认密码策略,密码过于简单不能设置:
创建e5sub数据库:
创建角色,分配权限:
数据表不需要自己创建,E5SubBot在启动时会自动创建数据表。
配置E5Subbot
在/opt/e5sub目录下创建一个config.yml文件,配置telegram bot和mysql的具体信息。如果不知道如何配置请阅读E5SubBot项目readme.md的Configuration。
配置文件内容如下:
当然如果你使用的是境内服务器,需要指定socks5属性来使用代理服务器。以下是具体属性的说明。
属性 | 说明 |
---|---|
bot_token | tg机器人的token,可以通过@BotFather进行获取 |
socks5 | [可选]用于指定socks5代理,例如127.0.0.1:1080 |
notice | 公告,在使用/help时显示 |
admin | 管理员tgid,可以通过@userinfobot获取,用于手动执行/task任务和获取总任务执行反馈 |
errlimit | 单个帐户错误的最大数量,当单个账户执行错误到指定次数时自动解除绑定并发送通知,若设置为-1则不限制 |
bindmax | 单个账户最大绑定帐号的数量 |
cron | 调用api的频率,使用cron表达式 |
mysql | mysql数据库的连接信息 |
编写Systemd单元文件
使用vim编辑器编辑单元文件。
将以下内容复制进去。
设置开机自启
systemd单元文件编辑完成后需要重新载入服务配置文件。
然后开启服务。
查看服务状态。
最后设置服务自启。
感谢分享 赞一个
牛牛牛
楼主大佬,找了好久的教程,你这儿全给安排了,强👍🏻