centos7挂载阿里云盘,扩展服务器硬盘空间
项目地址: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