webdav-aliyundriver
本项目实现了阿里云盘的webdav协议,只需要简单的配置一下,就可以让阿里云盘变身为webdav协议的文件服务器。 基于此,你可以把阿里云盘挂载为Windows、Linux、Mac系统的磁盘,可以通过NAS系统做文件管理或文件同步,我们可以用这个项目来实现自动备份网站数据,网上很多教程都是不全或者命令都是错的。我这个教程亲测可用,完美实现宝塔自动备份网站,服务器重启自动挂载阿里云盘,宝塔内可以复制删除阿里云盘文件!
阿里云盘最开始注册的参与内测的小伙伴都可以获得1T的容量,现在永久容量好像只有100g了,不过可以通过福利中心做任务扩容。比如邀请好友有800G容量。
项目地址:https://gitcode.net/mirrors/zxbu/webdav-aliyundriver
一、首先用浏览器登录阿里云盘获取登陆的token
浏览器获取refreshToken方式
- 先通过浏览器(建议chrome)打开阿里云盘官网并登录:https://www.aliyundrive.com/drive/
- 登录成功后,按F12打开开发者工具,先点击Application,接着点击Local Storage,选择 Local Storage下的 https://www.aliyundrive.com/,最后点击右边的token,此时可以看到里面的数据,其中就有refresh_token,把其值复制出来即可。(格式为小写字母和数字,不要复制双引号。例子:ca6bf8875d73as2188efg81f66e55f11)
- 第二步有点繁琐,具体操作结合下面的截图就看懂了 ,点完token下面的框是可以上下翻动的,要往下拉才能看到。
二、拉取镜像使用docker将阿里网盘转webdav协议
1、宝塔应用商店搜索docker安装
2、拉取镜像
docker run -d \
–name=aliyundrive-webdav \
–restart=always \
-p 8080:8080 \
-v $PWD/docker/aliyundrive-webdav/:/etc/aliyundrive-webdav/ \
-e REFRESH_TOKEN=’fae99da824544c70849fbf1481ed88c4′ \
-e WEBDAV_AUTH_USER=admin \
-e WEBDAV_AUTH_PASSWORD=admin \
messense/aliyundrive-webdav
参数说明
refresh-token 阿里云盘的refreshToken,获取方式看上文说明 -p 8080:8080 开启这个后用电脑浏览器打开ip+端口可以访问阿里云盘, 服务器端口号默认为8080 WEBDAV_AUTH_USER=admin WebDav账户,默认admin WEBDAV_AUTH_PASSWORD=admin WebDav密码,默认admin PWD/docker/aliyundrive-webdav/:/etc/aliyundrive-webdav/ \ token挂载路径,不是网盘挂载路径(如果多开的话,需修改此配置) messense/aliyundrive-webdav 转webdav协议拉取的镜像
三、linux系统挂载webdav为本地路径
Ubuntu/Debian系统运行命令
apt-get install davfs2
CentOS系统运行命令
yum install davfs2
四、创建目录并挂载阿里云盘
mkdir /www/wwwroot/alidrive
mount -t davfs http://172.17.0.2:8080/ /www/wwwroot/alidrive
运行命令后会提示输入账户密码,就是前面第二段命令里面的admin,外网可以访问,建议修改。
命令说明
http://172.17.0.2:8080/ 镜像内网地址+端口号,在docker里面可以看到你拉取的镜像对应的内网ip
/www/wwwroot/alidrive 是云盘挂载路径,根据自己情况自定义,下面用到的命令都要一样。
五、开机自动挂载
1、如果不想每次挂载都需要输入用户名密码,可以在挂载之后,使用如下命令把用户名和密码写入文件:
echo "/www/wwwroot/alidrive admin admin" > /etc/davfs2/secrets
2、开启自动挂载写入文件
echo “mount -t davfs http://172.17.0.2:8080/ /www/wwwroot/alidrive” >> /etc/rc.local
echo “http://172.17.0.2:8080/ /www/wwwroot/alidrive davfs defaults 0 0” >> /etc/fstab
注意:很多命令都用到挂载路径和内网ip+端口,内网ip有可能会变,所以挂载完重启服务器再去docker里面看下,一般重启完要是不改变就稳定了。
六、宝塔设置自动备份
1、首先修改宝塔默认备份目录。改为云盘挂载路径
2、创建宝塔任务计划备份网站或者数据库,选择自己要备份的网站或者数据库,备份到本地磁盘(就是你设置的云盘挂载目录,这样就实现自动备份)
注意:挂载云盘方式来备份可能会出现其他一些错误,所以平时要检查备份是否完整,云盘的token有时效,如果失效需要重新设置下
可以重新用命令设置新的token
-e REFRESH_TOKEN=’"your refreshToken"
‘ \
遇到挂载后网盘文件不显示可以先卸载再重新挂载(有时候是内网ip改变了,可以去docker里面看下)
sudo umount -l /www/wwwroot/alidrive
mount -t davfs http://172.17.0.2:8080/ /www/wwwroot/alidrive