网上自己想办法去找账号 反正就是网上有人提供教育邮箱,申请一个学生账号,会给一个5T的网盘。
关键是5T网盘是免费的,能用多久不太清楚,网上也找不到实用的东西。
不过这种网盘是有管理员账号的,管理员可以查看网盘上的所有资料,所以公共的东西放上去就行了,私人的照片最好不要往上扔。
解决方案
方案一:Aria2 下载到本地,oneindex上传至OneDrive,在线播放也是oneindex。
方案二:或者 Aria2下载到本地,rclone把OneDrive挂载到本地,然后用mv命令移动到OneDrive,在线播放还是oneindex。
方案三:rclone把OneDrive挂载到本地,然后Aria2的下载地址就用这个挂载到本地的路径,比如/mnt/OneDrive
。
方案四:这个方案是我瞎弄的,可能流程都有问题。先用Aira2下载到本地,rclone把OneDrive挂载到本地,本地用samba共享下载盘和OneDrive,然后用Windows访问两个共享文件夹,把下载盘的东西复制到OneDrive。
四种解决方案都有问题 首先是方案一,用oneindex上传至OneDrive确实方便,但是如果是大文件的,上传时间会比较长,它是调用起一个php进程用来上传,每个进程理论上互不影响,也就是说可以同时上传多个文件,每个文件占用一定的内存和CPU来处理。
所以问题就来了,方案一是Aria2下载完成后自动执行上传脚本,(我目前只测试了单个文件上传,没有测试上传整个文件夹。)如果你晚上睡觉前一下子给Aria2挂了几十个任务,都是电影,每个电影的大小都在2G以上,然后第一个电影下载完了,会调起一个php进程,紧接着又下载完成一个,就又会调起一个php进程,由于国内的宽带上传都是小水管,4M/s恐怕已经是最高速度了,两个php进程会平分这一点点带宽,拖慢上传速度。更要命的是,紧接着又下载完成了几个任务,就又会调起一些php进程来瓜分带宽、内存和CPU。到最后一晚上恐怕服务器已经挂掉,一个也上传不成功。
方案二也是同样的问题。
方案三直接Aria2没有速度。
方案四复制的电影不能解码,可能是操作问题?不确定。
所以我想到一个改进的方案。
新的改进方案 前面已经安装了Aria2和AriaNg了,这里不再多说。
项目网址:oneindex
界面示例:Demo
用oneindex上传成功率是非常高的,上传的命令是php /path/to/your/oneindex/one.php upload:file /the/local/path/test.mp4 /upload/
第一个参数是php
,是你本地已经安装好php,并配置好了php的环境变量,如果没有配置环境变量,那么就需要用php的绝对路径了。
第二个参数是oneindex的安装目录,最好不要用项目网址上推荐的安装办法,用docker安装的可能还不好管理,我认为。
第三个参数是upload:file,这是固定的格式。
第四个参数是要上传的文件路径,只要能找到对应的文件就可以,可以相对路径,也可以绝对路径。
第五个参数是要上传到OneDrive的目标路径。
直接命令行执行会输出如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 本地文件:/the/local/path/test.mp4 远程文件:upload/test.mp4 上传方式:分块上传 创建上传会话 上传分块320KB 268.7KB/s 0% 上传分块5MB 1.8MB/s 0% 上传分块35MB 2.9MB/s 0% 上传分块57.2MB 3MB/s 2% 上传分块60MB 3MB/s 5% 上传分块60MB 3MB/s 8% 上传分块59.7MB 3MB/s 10% 上传分块59.7MB 3MB/s 13% 上传分块60MB 3MB/s 16% 上传分块60.3MB 3MB/s 19% 上传分块60.3MB 3MB/s 22% 上传分块60MB 3MB/s 25% 上传分块60MB 3MB/s 28% 上传分块60.3MB 2.9MB/s 30% 上传分块58.1MB 3MB/s 33% 上传分块59.7MB 3MB/s 36% 上传分块59.7MB 3MB/s 39% 上传分块59.7MB 3MB/s 42% 上传分块59.7MB 2.5MB/s 45% 上传分块50.6MB 3MB/s 47% 上传分块60.9MB 3MB/s 50% 上传分块59.1MB 3MB/s 53% 上传分块59.4MB 3MB/s 56% 上传分块59.1MB 3MB/s 58% 上传分块59.4MB 3MB/s 61% 上传分块59.4MB 3MB/s 64% 上传分块59.7MB 3MB/s 67% 上传分块60MB 2.9MB/s 70% 上传分块58.4MB 3MB/s 73% 上传分块59.1MB 2.9MB/s 75% 上传分块57.8MB 2.9MB/s 78% 上传分块58.1MB 2.8MB/s 81% 上传分块56.6MB 2.9MB/s 84% 上传分块58.4MB 2.9MB/s 86% 上传分块58.1MB 2.9MB/s 89% 上传分块58.8MB 3MB/s 92% 上传分块59.1MB 2.9MB/s 95% 上传分块57.5MB 上传完成!
该上传文件的大小大概是2G
于是结合前面的方案一和方案二,有了新的方案。
首先,下载完成后执行脚本把下载完成的文件,移动到另一个目录,用脚本完成。
脚本内容如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 #!/bin/bash path=$3 downloadpath='/aria2下载路径' uploadpath='/中转路径' if [ $2 -eq 0 ] then exit 0 fi while true ; do filepath=$path path=${path%/*} ; if [ "$path " = "$downloadpath " ] && [ $2 -eq 1 ] then mv -f "${filepath} " "${uploadpath} " exit 0 elif [ "$path " = "$downloadpath " ] then mv -f "${filepath} " "${uploadpath} " / rm -rf "${filepath} " exit 0 fi done
这样的速度是非常快的,一般电影2-10G,本地磁盘之间移动非常快。理论上不存在占用CPU或者内存过多的情况。
可以把这个文件保存成move.sh
,随便放到哪个目录都可以,添加执行权限chmod +x move.sh
。
然后在aria2的配置文件中,最下边加入on-download-complete=/path/to/move.sh
。
重启aria2c即可。
然后,借助宝塔面板,定时执行Shell。
把上传脚本放进去,定时执行。比如每天执行一次。
脚本内容如下:
1 2 3 4 5 6 7 8 9 10 11 12 #!/bin/bash filepath='/中转路径' max=$((1024 *1024 *200 )) for file in `ls ${filepath} `; do if [ -f ${filepath} ${file} ]; then size=`ls -l ${filepath} ${file} | awk '{print $5}' ` if [ ${size} -gt ${max} ]; then php /path/to/your/oneindex/one.php upload:file ${filepath} ${file} /upload/ rm ${filepath} ${file} fi fi done
该脚本会遍历中转目录中的所有文件,所有大于200M的文件都会上传,上传完成后删除。
如果想要上传所有文件,可以把200M的判断条件删除。
这个脚本的好处就是,只会执行一次,只有一个php进程,一次只上传一个文件,上传完成后再会上传下一个。
脚本执行的时间间隔不建议太短,比如10分钟执行一次,可能上一次的脚本还没有执行完。
为什么这个脚本不直接上传aria2下载目录的文件,为什么要一个中转目录?
你总不想让Aria2还没有下载完成,脚本就上传吧哈。
这个方案并不是百分百能成功的,不过这不是这个脚本的锅吧,我感觉。
昨天上传一部电视剧冰血暴的时候,就出现了上传不全的问题,不知道问题出在哪里。
日志如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 本地文件:/home/upload/冰血暴.Fargo.S01E03.中英字幕.WEB-HR.AC3.1024X576.x264.mkv 远程文件:upload/冰血暴.Fargo.S01E03.中英字幕.WEB-HR.AC3.1024X576.x264.mkv 上传方式:分块上传 上传分块60.9MB »�ļþŚɝʧ°ڠ本地文件:/home/upload/冰血暴.Fargo.S01E04.中英字幕.WEB-HR.AC3.1024X576.x264.mkv 远程文件:upload/冰血暴.Fargo.S01E04.中英字幕.WEB-HR.AC3.1024X576.x264.mkv 上传方式:分块上传 创建上传会话 上传分块320KB 314.3KB/s 0% 上传分块5.9MB 1.8MB/s 0% 上传分块36.3MB 2.9MB/s 1% 上传分块57.5MB 3MB/s 7% 上传分块60MB 3MB/s 18% 上传分块59.7MB 2.8MB/s 28% 上传分块55.3MB 3MB/s 39% 上传分块60MB 3MB/s 49% 上传分块60MB 3MB/s 59% 上传分块60MB 2.6MB/s 70% 上传分块52.2MB 3MB/s 80% 上传分块59.4MB 3MB/s 89% 上传分块60MB 上传完成! 本地文件:/home/upload/冰血暴.Fargo.S01E06.中英字幕.WEB-HR.AC3.1024X576.x264.mkv 远程文件:upload/冰血暴.Fargo.S01E06.中英字幕.WEB-HR.AC3.1024X576.x264.mkv 上传方式:分块上传 上传分块57.5MB »�ļþŚɝʧ°ڠ本地文件:/home/upload/冰血暴.Fargo.S01E08.中英字幕.WEB-HR.AC3.1024X576.x264.mkv 远程文件:upload/冰血暴.Fargo.S01E08.中英字幕.WEB-HR.AC3.1024X576.x264.mkv 上传方式:分块上传 上传分块31.3MB »�ļþŚɝʧ°ڠ本地文件:/home/upload/冰血暴.Fargo.S01E09.中英字幕.WEB-HR.AC3.1024X576.x264.mkv 远程文件:upload/冰血暴.Fargo.S01E09.中英字幕.WEB-HR.AC3.1024X576.x264.mkv 上传方式:分块上传 创建上传会话 上传分块320KB 268.8KB/s 0% 上传分块5MB 1.7MB/s 0% 上传分块34.7MB 2.9MB/s 1% 上传分块57.5MB 3MB/s 7% 上传分块60.3MB 3MB/s 17% 上传分块60.3MB 3MB/s 27% 上传分块60MB 2.9MB/s 37% 上传分块58.8MB 3MB/s 47% 上传分块59.7MB 3MB/s 57% 上传分块60.3MB 3MB/s 67% 上传分块60MB 3MB/s 78% 上传分块60MB 3MB/s 88% 上传分块59.7MB 上传完成! 本地文件:/home/upload/冰血暴.Fargo.S01E10.End.中英字幕.WEB-HR.AC3.1024X576.x264.mkv 远程文件:upload/冰血暴.Fargo.S01E10.End.中英字幕.WEB-HR.AC3.1024X576.x264.mkv 上传方式:分块上传 创建上传会话 上传分块320KB 273.8KB/s 0% 上传分块5.3MB 1.8MB/s 0% 上传分块35MB 2.9MB/s 1% 上传分块57.5MB 3MB/s 6% 上传分块60.3MB 3MB/s 14% 上传分块60.3MB 3MB/s 22% 上传分块60.6MB 3MB/s 30% 上传分块60MB 3MB/s 39% 上传分块59.4MB 3MB/s 47% 上传分块59.7MB 3MB/s 55% 上传分块60MB 3MB/s 64% 上传分块60.3MB 3MB/s 72% 上传分块60.3MB 3MB/s 80% 上传分块59.7MB 3MB/s 89% 上传分块59.4MB 上传完成!
乱码就是上传出问题的那几个文件
我检查了OneDrive,也没有看到有临时文件,所以不知道为啥出了问题。
播放软件有个致命的问题 当然这也不是oneindex的问题,所有的浏览器播放方案中应该都有这个问题。
oneindex播放.mkv
格式的文件没有声音。
网上查了相关的资料,说是一部分.mkv
格式的电影使用的音频编码是特殊的AC3
,所以没有声音,额外的,可能视频编码H265(HEVC),播放黑屏,可能切成DPlayer也是一样的问题。
这是html5的问题,不是oneindex的问题。
所以有大量mkv电影的人要仔细考虑要不要上传了,没有声音就只能下载到本地才能播放了。
还有,希望作者能加入搜索功能。上传的文件太多了,找文件不头疼么。
非要用这个网盘的目的 既然有这么多不便,为什么还非要用这个网盘?
大费周张的找资源,先下载到本地,然后再上传到OneDrive。
可是你有没有发现这个用来分享非常方便。
即使是mkv文件不能在线播放,它下载的速度可不像百度云那么坑,基本上浏览器下载也是满速的。
现在百度云分享有限制,敏感资源根本分享不出去;115你懂的,不花钱就算了吧;别的网盘该倒的也早就倒了,你还想用迅雷?旋风?还是360?都是一个德性。
而且这个网盘是高度个性化的。用用就知道有多方便了。
Emby也可以分享,但是仅是针对本地磁盘上的吧。
我用rclone把OneDrive加载到了本地,然后Emby添加了这个目录,里面的视频能看到,但是要打开观看速度就非常感人了,基本上都在转圈。主要我的Emby服务器是内网穿透出来的,可能速度也会大打折扣。
Emby服务器太占内存了,不用的时候都占20%左右,更不要说播放视频的时候了。
需要服务器解码视频,当然要占内存,没办法。