在之前的基于OLAINDEX搭建的网盘中,用shell脚本调用OLAINDEX自带的上传功能来实现离线下载,但常常会出现文件下完没有上传的问题。
刚开始没在意,后来丢的文件一多,就去查看了log:
很明显,连接问题,作者也说明了离线下载功能是实验性的,不稳。
在一番寻找之后,终于发现了萌咖大佬的写得一个onedrive文件上传程序:
OneDriveUploader
马上试了下手动上传文件,稳稳地传好了大小文件。
离线下载有救了!
教程
授权
国际版, 个人版(家庭版):
点这里
中国版(世纪互联):
点这里
登录授权后会获得一个localhost
开头并且无法打开
的链接,保存好链接,后面要用。
安装OneDriveUploader
直接运行命令下载,这里装到/usr/local/bin/64位系统下载
wget https://raw.githubusercontent.com/MoeClub/OneList/master/OneDriveUploader/amd64/linux/OneDriveUploader -P /usr/local/bin/
32位系统下载
wget https://raw.githubusercontent.com/MoeClub/OneList/master/OneDriveUploader/i386/linux/OneDriveUploader -P /usr/local/bin/
arm架构下载
wget https://raw.githubusercontent.com/MoeClub/OneList/master/OneDriveUploader/arm/linux/OneDriveUploader -P /usr/local/bin/
给予权限
chmod +x /usr/local/bin/OneDriveUploader
初始化配置文件
国际版: |
在浏览器地址栏中获取以
http://loaclhost
开头的整个url
内容
将获取的完整url内容替换命令中的url
三个字母
每次产生的url
只能用一次, 重试请重新获取url
此操作将会自动初始化的配置文件
提示Init config file: '/path/to/auth.json'
则成功
配置自动上传
这里的使用萌咖大佬的脚本。
新建一个one-up.sh
文件,在文件中键入以下内容:
|
保存后,修改权限:
chmod +x /root/one-up.sh
/root/one-up.sh
修改成你的文件路径
编辑aria2配置文件:
vi /root/.aria2/aria2.conf
按i
进入插入模式,在文件中添加一句:
on-download-complete=/root/one-up.sh
按Esc
,输入:wq
保存退出。
重启aria2:
service aria2 restart
到这里离线下载就配置完成了,之后在aria2下载完成后会自动上传Onedrive中。
在我配置的过程中,发现文件正常下载并且可以手动上传,但不能自动上传。
排查后发现是编码的问题。
安装dos2unix:
Centos:yum install dos2unix -y
Debian/Ubuntu:apt install dos2unix -y
转换编码:
dos2unix /root/one-up.sh
这样就可以正常自动上传了。