可能是阿里云盘最好用的webdav项目了,支持Joplin,阅读app等应用备份

alist支持的网盘很多,也支持webdav,不过也有很多问题,就算是挂载本地硬盘,挂载webdav也不能用来同步joplin,阅读app,就更不用提阿里云盘了。也试过一些命令行版支持webdav的阿里云盘,也是和alist一样的毛病。

所以找打了这个aliyundrive-webdav,可能是阿里云盘最好用的webdav服务了,可以用于Joplin等等支持webdav的应用同步数据。

https://github.com/messense/aliyundrive-webdav

1、安装比较简单,可以使用pip直接安装:

pip install aliyundrive-webdav

2、运行:

#运行
aliyundrive-webdav --port 2345 --auth-user admin --auth-password admin --refresh-token xxxxxxxx
#--port端口 ,--auth-user 设置用户 --auth-password设置密码 --refresh-token 网页或者app抓,如果不会可以省略,可以扫描自动获取。

aliyundrive-webdav --port 2345 --auth-user admin --auth-password admin

如果提示root报错,跑不动的情况,可能是env环境的问题,可以参考解决:https://bbs.zsxwz.com/thread-5241.htm

3、命令行参数:

OPTIONS:
        --cache-size <CACHE_SIZE>
            Directory entries cache size [default: 1000]

        --cache-ttl <CACHE_TTL>
            Directory entries cache expiration time in seconds [default: 600]

        --debug
            Enable debug log

        --domain-id <DOMAIN_ID>
            Aliyun PDS domain id

    -h, --help
            Print help information

        --host <HOST>
            Listen host [env: HOST=] [default: 0.0.0.0]

    -I, --auto-index
            Automatically generate index.html

        --no-redirect
            Disable 302 redirect when using app refresh token

        --no-self-upgrade
            Disable self auto upgrade

        --no-trash
            Delete file permanently instead of trashing it

    -p, --port <PORT>
            Listen port [env: PORT=] [default: 8080]

        --prefer-http-download
            Prefer downloading using HTTP protocol

    -r, --refresh-token <REFRESH_TOKEN>
            Aliyun drive refresh token [env: REFRESH_TOKEN=]

        --read-only
            Enable read only mode

        --root <ROOT>
            Root directory path [default: /]

    -S, --read-buffer-size <READ_BUFFER_SIZE>
            Read/download buffer size in bytes, defaults to 10MB [default: 10485760]

        --skip-upload-same-size
            Skip uploading same size file

        --strip-prefix <STRIP_PREFIX>
            Prefix to be stripped off when handling request [env: WEBDAV_STRIP_PREFIX=]

        --tls-cert <TLS_CERT>
            TLS certificate file path [env: TLS_CERT=]

        --tls-key <TLS_KEY>
            TLS private key file path [env: TLS_KEY=]

    -U, --auth-user <AUTH_USER>
            WebDAV authentication username [env: WEBDAV_AUTH_USER=]

        --upload-buffer-size <UPLOAD_BUFFER_SIZE>
            Upload buffer size in bytes, defaults to 16MB [default: 16777216]

    -V, --version
            Print version information

    -w, --workdir <WORKDIR>
            Working directory, refresh_token will be stored in there if specified

    -W, --auth-password <AUTH_PASSWORD>
            WebDAV authentication password [env: WEBDAV_AUTH_PASSWORD=]

SUBCOMMANDS:
    help    Print this message or the help of the given subcommand(s)
    qr      Scan QRCode

4、如果想挂载到windows,想要开机自启,个人推荐rclone。

rclone:https://rclone.org/downloads/

还需要安装winfsp :https://winfsp.dev/rel/

#配置
rclone config

rclone配置教程太多了,就不说了,为了避免重复上传文件,使用 rclone 时推荐使用 Nextcloud WebDAV 模式,可以支持 sha1 checksums. 另外需要配合 --no-update-modtime 参数,否则 rclone 为了更新文件修改时间还是会强制重新上传。

5、rclone挂载:

rclone.exe mount aliyun:/ W: --vfs-cache-mode writes --cache-dir E:\aliyun --network-mode --no-update-modtime --no-check-certificate --default-permissions --header "Referer:https://www.aliyundrive.com/" --vfs-read-chunk-size-limit 4G --vfs-read-chunk-size 64M --dir-cache-time 12h --buffer-size 32M --ignore-checksum --no-gzip-encoding --copy-links

#根据自己的情况修改,aliyun,rclone挂载名称,W: ,映射路径,--cache-dir,缓存路径

如果需要开机自启,就将上面的命令行保存成rclone.bat,然后创建,开机任务,设置条件,连接网络时启动。

bat开机自启有一个小黑框,可以在rclone.bat相同目录下创建一个vbs,rclone.vbs,设置计划任务,选择脚本,就选择这个文件即可。

Set ws = CreateObject("Wscript.Shell")
WScript.Sleep 3000
ws.run("rclone.bat"),0

留言

* - 必填