这段时间微软的Office 365 E5开发者计划在疯狂开车,相信不少人手里都有一个E5账号,那白送的5T云空间不能浪费啊。可以用来搭建一个Oneindex在线分享大型网盘啊,并配合Aria2和自动上传脚本实现自动下载 上传和在线预览。教程有点长,如果使用宝塔面板要简单很多,但主要是为了给自己做个备份,这里就不用宝塔了。
大概步骤
安装
nginx,这个就不写了,不知道怎么装的看往期文章或者点这里。安装
php并和nginx绑定。搭建
Oneindex。安装
Aria2配置自动上传。安装php并启动
我用的是编译安装
php7.4.3,通过yum或者dnf安装也可以。安装依赖包
1
yum install -y gcc gcc-c++ make zlib zlib-devel pcre pcre-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel gdbm-devel db4-devel libXpm-devel libX11-devel gd-devel gmp gmp-devel expat-devel libxml2 libxml2-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel libcurl libcurl-devel curl curl-devel libmcrypt libmcrypt-devel libxslt libxslt-devel xmlrpc-c xmlrpc-c-devel libicu-devel libmemcached-devel libzip readline readline-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers sqlite-devel
下载源码
1
2
3wget https://www.php.net/distributions/php-7.4.3.tar.gz
# 如果提示 wget 找不到命令 就先执行 yun install wget解压
1
tar -zxvf php-7.4.3.tar.gz
编译并安装
1
2
3./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --enable-inline-optimization --disable-debug --enable-fpm --with-fpm-user=www --with-fpm-group=www --disable-rpath --enable-soap --with-libxml-dir --with-xmlrpc --with-openssl --with-mhash --with-pcre-regex --with-zlib --enable-bcmath --with-bz2 --enable-calendar --with-curl --enable-exif --with-pcre-dir --enable-ftp --with-gd --with-openssl-dir --with-jpeg-dir --with-png-dir --with-zlib-dir --with-freetype-dir --enable-gd-jis-conv --with-gettext --with-gmp --with-mhash --with-onig --enable-shared --enable-opcache --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-readline --with-iconv --enable-pcntl --enable-shmop --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-sockets --enable-zip --enable-wddx --with-pear
make && make install启动php
- 切换到php的安装目录
1
cd /usr/local/php
- 重命名两个配置文件,并编辑用户组,不然无法启动
1
2
3
4
5cd etc
mv php-fpm.conf.default php-fpm.conf # 重命名
cd php.fpm.d
mv www.conf.default www.conf # 重命名
- 编辑
www.conf配置文件,将user后面的www改为root。1
vi www.conf
- 启动php
1
2cd /usr/local/php/sbin
./php-fpm -R # 加上 -R 才能以 root 用户启动
- 切换到php的安装目录
配置Nginx并搭建Oneindex
下载
Oneindex源码到你存放网站的目录,我的目录是/home/www/oneindex。1
git clone https://github.com/donwa/oneindex.git /home/www/oneindex # 修改后面的目录就可以更改保存的位置
修改
cache、config这两个目录为可读写。为了避免麻烦我直接改为全部可读可写可执行。1
2
3
4chmod -R 777 /home/www/oneindex/cache
chmod -R 777 /home/www/oneindex/config
# 如果目录不一样 那么一定要换成你自己的目录修改Nginx的配置文件,如果你的Nginx安装目录和我的不一样,那么请自己更改一下命令的目录。
1
2
3
4vi /usr/local/nginx/conf/nginx.conf
user root; # 这里一定要改为root用户 不然nginx读取不到目录
worker_processes 1;接下来我们添加一个server段,把下面的配置粘贴进去。不知道该怎么弄的点这里。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20server {
listen 80;
server_name one.wnnce.tk; # 改成你要用的域名
location / {
root /home/www/oneindex; # 写Oneindex所在的目录
index index.php index.html;
}
location ~ ^(.+\.php)(.*)$ {
root /home/www/oneindex; # 一样的写oneindex所在的目录
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_split_path_info ^(.+\.php)(.*)$;
fastcgi_param PATH_INFO $fastcgi_path_info;
if (!-e $document_root$fastcgi_script_name) {
return 404;
}
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
修改完之后呢,输入
nginx -t测试配置文件是否可用,出现successful表示可用。
然后重启
Nginx。1
2nginx -s stop
nginx为Oneindex绑定账号
进入刚才绑定的域名,不出意外的话,你会看到和我一样的页面。点击下一步。
点击上面的
获取应用ID和机密,登录你想绑定的账号。
把红框里面的复制到
应用机密那一栏,然后点击返回快速启动。
在这个界面往下拉,找到你的
APP ID把它复制到应用 ID那一栏。然后点击下一步。
点击绑定账号,登录你要绑定的账号,会有一个提示,选同意。不出意外的话,会提示你程序安装成功。
Oneindex就已经搭建好了,第一次使用呢需要进后台,点一下重建所有缓存。然后就可以用这个域名来访问你网盘里面的文件了。视频和音乐都可以在线预览,不走你服务器的流量。图片也可以在线预览 只需要更改一个配置文件 百度上面有教程 这里就不写了。
安装Aria2和配置AriaNg
运行下面的一键安装脚本,选择1即可开始安装。
1 | wget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubiBackup/doubi/master/aria2.sh && chmod +x aria2.sh && bash aria2.sh |
等他提示安装完成,为了方便使用,我们可以修改一下配置文件。强烈建议修改一下密码。
在刚才下载脚本的目录运行如下命令
1 | ./aria2.sh |
选择7修改配置文件,我修改了密码,并把下载目录更改成了/root/Download。
1 | # 其他命令 |
为了让Aria2更方便使用,我们安装一个AriaNg 这个一个可视化的Aria2 web前端。
还是一样的,先下载源码。我指定的目录为/home/www/ariang
1 | wget -P /home/www/ariang https://github.com/mayswind/AriaNg/releases/download/1.1.4/AriaNg-1.1.4.zip |
切换到下载文件的目录,解压文件。
1 | cd /home/www/ariang |
修改Nginx配置文件,添加站点。修改完成后记得重启Nginx。
1 | vi /usr/local/nginx/conf/nginx.conf |
进入你绑定的域名,会提示认证失败(都还没填密码 肯定会失败啊( •̀ ω •́ )✧),点击AriaNg设置再点击PRC输入你设置的密码,点击重新加载。
配置自动上传
获得授权
打开授权地址,登录你想要绑定的账号,然后在浏览器地址栏会有一个打不开的链接,复制整个链接保存。安装OneDriveUploader
1
2
3
4
5wget https://raw.githubusercontent.com/MoeClub/OneList/master/OneDriveUploader/amd64/linux/OneDriveUploader -P /home/www/onedriveup/
# 给与权限
chmod +x /home/www/onedriveup/OneDriveUploader
cd /home/www/onedriveup初始化配置,绑定账号
1
2OneDriveUploader -a "url"
# url 换成刚才复制的那个链接提示生成了一个.json文件就说明成功了。
配置Aria2自动上传
- 新建一个名为
rcloneupload.sh的可执行文件,并复制如下代码。接着赋予权限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
42vim rcloneupload.sh
#####代码如下#####
#!/bin/bash
GID="$1";
FileNum="$2";
File="$3";
MaxSize="15728640";
Thread="3"; #默认3线程,自行修改,服务器配置不好的话,不建议太多
Block="20"; #默认分块20m,自行修改
RemoteDIR=""; #上传到Onedrive的路径,默认为根目录,如果要上传到MOERATS目录,""里面请填成MOERATS
LocalDIR="/root/Download/"; #Aria2下载目录,记得最后面加上/
Uploader="/home/www/onedriveup/OneDriveUploader"; #上传的程序完整路径,默认为本文安装的目录
Config="/home/www/onedriveup/auth.json"; #初始化生成的配置auth.json绝对路径,参考第3步骤生成的路径
if [[ -z $(echo "$FileNum" |grep -o '[0-9]*' |head -n1) ]]; then FileNum='0'; fi
if [[ "$FileNum" -le '0' ]]; then exit 0; fi
if [[ "$#" != '3' ]]; then exit 0; fi
function LoadFile(){
if [[ ! -e "${Uploader}" ]]; then return; fi
IFS_BAK=$IFS
IFS=$'\n'
tmpFile="$(echo "${File/#$LocalDIR}" |cut -f1 -d'/')"
FileLoad="${LocalDIR}${tmpFile}"
if [[ ! -e "${FileLoad}" ]]; then return; fi
ItemSize=$(du -s "${FileLoad}" |cut -f1 |grep -o '[0-9]*' |head -n1)
if [[ -z "$ItemSize" ]]; then return; fi
if [[ "$ItemSize" -ge "$MaxSize" ]]; then
echo -ne "\033[33m${FileLoad} \033[0mtoo large to spik.\n";
return;
fi
${Uploader} -c "${Config}" -t "${Thread}" -b "${Block}" -s "${FileLoad}" -r "${RemoteDIR}" -skip
if [[ $? == '0' ]]; then
rm -rf "${FileLoad}";
fi
IFS=$IFS_BAK
}
LoadFile;chmod +x rcloneupload.sh
- 编辑Aria2配置文件
1
2
3
4vi /root/.aria2/aria2.conf
# 在最下面添加一行
on-download-complete=/home/www/onedriveup/rcloneupload.sh
接着重启Aria2服务service aria2 restart
- 新建一个名为
配置自动上传可以看一下这个链接,写得很详细,因为我是国际版,其他那些也用不上所以就没写。
最后
现在我们只需要在ariang里面添加下载链接,下载完之后会自动上传到我们的ondrive网盘并删除下载文件,很方便有木有。
不知道写啥了,就这样吧
完结撒花
