阿里云盘WebDAV共享,支持本地挂载

Github真的是一个神奇、富有创造力的地方。有一个项目,可以给现在很火的阿里云盘添加webdav的功能,以实现本地挂载。

1、添加webdav功能

1.1、浏览器登录获取refreshToken

1.1.1、通过浏览器(Chrome或者Microsoft Edge)登录阿里云盘网页版
1.1.2、登录成功后,在浏览器中按F12打开开发者工具,点击Aoolication,点击Local Storage,点击 Local Storage下的 https://www.aliyundrive.com/,点击右边的token,此时可以看到里面的数据,其中就有refresh_token,把其值复制出来即可。(格式为小写字母和数字,不要复制双引号。例子:ca6bf2175d73as2188efg81f87e55f11

refreshToken

1.2、运行docker webdav-aliyundriver

1.2.1、容器运行

docker run \
    -d \
    --name=webdav-aliyundriver \
    --restart=always \
    -p 8080:8080  \
    -v /etc/localtime:/etc/localtime \
    -v /etc/aliyun-driver/:/etc/aliyun-driver/ \
    -e TZ="Asia/Shanghai" \
    -e ALIYUNDRIVE_REFRESH_TOKEN="your refreshToken" \
    -e ALIYUNDRIVE_AUTH_PASSWORD="admin" \
    -e JAVA_OPTS="-Xmx1g" zx5253/webdav-aliyundriver

# /etc/aliyun-driver/ 挂载卷自动维护了最新的refreshToken,建议挂载
# ALIYUNDRIVE_AUTH_PASSWORD 是webdav账户的密码,建议修改
# JAVA_OPTS 可修改最大内存占用,比如 -e JAVA_OPTS="-Xmx512m" 表示最大内存限制为512m

1.2.2、Docker-Compose

version: "3.0"
services:
  webdav-aliyundriver:
    image: zx5253/webdav-aliyundriver
    container_name: aliyundriver
    environment:
      - TZ=Asia/Shanghai
      - ALIYUNDRIVE_REFRESH_TOKEN=refreshToken
      - ALIYUNDRIVE_AUTH_USER_NAME=admin
      - ALIYUNDRIVE_AUTH_PASSWORD=admin
      - JAVA_OPTS=-Xmx1g
    volumes:
      - /etc/aliyun-driver/:/etc/aliyun-driver/
    ports:
      - 6666:8080
    restart: always

# “refreshToken”请根据下文说明自行获取。
# “ALIYUNDRIVE_AUTH_USER-NAME”和“ALIYUNDRIVE_AUTH_PASSWORD”为连接用户名和密码,建议更改。
# “/etc/aliyun-driver/:/etc/aliyun-driver/”,可以把冒号前改为指定目录,比如“/homes/USER/docker/alidriver/:/etc/aliyun-driver/”。
# 删除了“/etc/localtime:/etc/localtime”,如有需要同步时间请自行添加在environment下。
# 端口6666可自行按需更改,此端口为WebDAV连接端口,8080为容器内配置端口,修改请量力而为。
# 建议不要保留这些中文注释,以防报错,比如QNAP。

1.2.3、参数说明

--aliyundrive.refresh-token
    阿里云盘的refreshToken,获取方式见下文
--server.port
    非必填,服务器端口号,默认为8080
--aliyundrive.auth.enable=true
    是否开启WebDav账户验证,默认开启
--aliyundrive.auth.user-name=admin
    WebDav账户,默认admin
--aliyundrive.auth.password=admin
    WebDav密码,默认admin
--aliyundrive.work-dir=/etc/aliyun-driver/
    token挂载路径(如果多开的话,需修改此配置)

1.3、重要提醒

一定要通过nginx配置证书来开https使用!

2、本地挂载webdav

2.1、Ubuntu挂载

  • 安装davfs2
    sudo apt-get install davfs2 -y
  • 创建挂载目录
    sudo mkdir /mnt/webdav
  • 挂载到本地
    sudo mount -t davfs -o noexec https://example.com/webdav/ /mnt/webdav/
    运行后回要求输入用户名和密码。
  • 解除挂载
    sudo umount /mnt/webdav
  • 使用fstab文件实现永久挂载
    编辑 /etc/davfs2/davfs2.conf ,将 use_lock 解除注释,并改值为 0 。
    编辑 /etc/davfs2/secrets ,添加
    https://example.com/webdav account password
    编辑"/etc/fstab"文件,最下面添加
    https://example.com/webdav/ /mnt/webdav davfs _netdev,noauto,user,uid=nobody,gid=nobody 0 0

2.2、Mac挂载

在 Mac 上的“访达” 中,选取“前往”>“连接服务器”,在“服务器地址”栏中输入服务器的地址,然后点按“连接”。
在“服务器地址”栏中输入服务器的地址。WebDAV 服务器地址应该与以下的格式类似:https://servername.com/path/
点按“连接”。

《阿里云盘WebDAV共享,支持本地挂载》 作者:whwtf ;固定链接:https://blog.whwtf.com/index.php/2022012355.html
上一篇
下一篇