安装及使用
提示:安装同步系统前,请提前安装好高级版或纯净版程序。
安装同步系统
首先使用SSH
客户端,比如Xshell
软件,登录服务器,再使用命令:
#纯净版系统运行该命令
curl -sL https://download.zhuanma.org/moeapp/shell/efvasync.sh | bash -s tof
#高级版系统运行该命令
curl -sL https://download.zhuanma.org/moeapp/shell/efvasync.sh | bash
同步系统默认安装路径为/opt/efvasync
,安装成功后,还需要进行相关配置即可使用。
配置文件详解
提示:此处配置仅供参考理解,各存储具体配置看后面即可。
同步程序的配置文件路径/opt/efvasync/config.js
,参数详解如下:
module.exports = {
endPoint: '', //节点地址
port: 9000, //节点端口,minio专用
useSSL: false, //minio专用
accessKey: '',
secretKey: '',
region: '',
bucket: '',
servername: '', //服务名称,又拍云专用
operatorname: '', //操作员名,又拍云专用
operatorpassword: '', //操作员密码,又拍云专用
maoyundomain: "", //云存储当前域名,猫云专用
maoyunid: "", //云存储bucketId,猫云专用
googleBucket: "", //Google Cloud Storage桶名称
bunnyregion: "", //Storage Zones Name节点,Bunny 专用
bunnyapikey: '', //Storage Zones API Access,Bunny专用
bunnyzonename: '', //Storage Zones Name,Bunny 专用
ignored: ['**/*.mp4','**/*.jpg','**/*.gif'], // 可以添加过滤任何后缀, 格式'**/*.houzhui,英文,隔开
type: 'minio', //同步类型,共可选minio,s3,alioss,upyun,qiniu,wasabi,maoyun
rootpath: '/home/express-ffmpeg', //程序源码的绝对路径
path: '/home/express-ffmpeg/public/videos', //争对rootpath/public值进行截取,比如示例只同步videos文件夹
remove: false, //同步成功是否删除源文件,true为删除,false为不删除。
removeignored: ['.m3u8', '.jpg', '.gif'], //同步成功删除源文件时过滤某些后缀,不进行删除
}
关于rootpath
和path
参数值参考,建议直接根据安装路径,自行修改,大致如下:
#高级版程序,源码安装路径/home/express-ffmpeg
rootpath: '/home/express-ffmpeg',
path: '/home/express-ffmpeg/public/videos',
#纯净版程序,源码安装路径/home/oneacg
rootpath: '/home/oneacg',
path: '/home/oneacg/app/public/videos',
如果你不想同步某些文件,比如git
、jpg
、mp4
,则修改ignored
参数即可,如下:
ignored: ['**/*.mp4','**/*.jpg','**/*.gif'],
如果你想同步后删除服务器上的文件,且删除过滤掉git
、jpg
、ts
,则修改remove
和removeignored
参数即可,如下:
#如果你有同步mp4,不建议进行删除,不然同步过快,有小概率还没切片就把mp4给删了会导致切片没生成
remove: true,
removeignored: ['.jpg', '.ts', '.gif'],
如果你要使用到分发,则必须保留m3u8
文件。
各存储设置
首先编辑配置文件/opt/efvasync/config.js
,然后根据指定存储商,配置好相关同步参数,参考如下:
启动同步
编辑好配置文件后,再使用命令启动:
cd /opt/efvasync && pm2 start node.js --node-args="--max-old-space-size=8024" --name efvasyncall
相关命令
启动:cd /opt/efvasync && pm2 start node.js --node-args="--max-old-space-size=8024" --name efvasyncall
停止:pm2 stop efvasyncall
重启:pm2 reload efvasyncall
查看同步日志:pm2 log efvasyncall
注意事项
1、同步切片的时候,建议删除转码服务器的切片,可以节省转码服务器空间,也避免因同步量越来越大,造成同步不稳定等问题。
2、如果你不管怎么配置,都不给你同步,可能是服务器时间有问题,使用date命令查看即可,如有问题,使用下面这个命令修正:
date -s "$(curl -s --head https://www.baidu.com | grep ^Date: | sed 's/Date: //g') -000"
3、如果同步期间由于网络等因素,同步卡住了,可使用pm2 reload efvasyncall进行重启操作。