坑边闲话:早年笔者一直以为网盘只能通过官方客户端使用,然而官方客户端并不好用。最近一两年,网盘的本地挂载越发成熟,海内外的网盘公司纷纷推出 OpenAPI,允许第三方开发者使用网盘。将 OpenAPI 和 libfuse/winfsp 结合起来就可以实现网盘的本地挂载,基本可以像操作本地文件一样操作网盘里的数据,特别是在只读场景。本文详细介绍商业软件 CloudDrive2 的使用方法。

1. 安装与配置·

CloudDrive2 是一个以网盘本地挂载为卖点的商业软件,虽然目前还处于 0.x 版本,但它已经有了很强的可用性,而且在笔者半年的使用时长中表现非常稳定。

不过要注意,并非所有网盘都支持本地挂载,也并非所有网盘都提供 Open API 允许开发者折腾。比如知名的百度网盘就没有 Open API, 现有的挂载功能基于对百度网盘的协议逆向。

1.1 Windows 与 macOS·

1.2 Linux·

笔者以 Debian 13 为例进行讲解。由于 CloudDrive 官方仅提供编译好的二进制,而且没有提供安装包,因此需要手动下载、解压,并创建系统后台驻留进程。

1.2.1 安装最新版本·

1
2
3
4
5
6
7
8
9
10
11
12
13
14
bash -c '
CD2_VERSION=0.9.10
ARCH="x86_64"
CD2_URL="https://github.com/cloud-fs/cloud-fs.github.io/releases/download/v${CD2_VERSION}/clouddrive-2-linux-${ARCH}-${CD2_VERSION}.tgz"

curl -L -o /tmp/clouddrive2.tgz "${CD2_URL}"
tar -xzf /tmp/clouddrive2.tgz -C /tmp/
sudo mv /tmp/clouddrive-2-linux-${ARCH}-${CD2_VERSION} /usr/local/bin/
sudo mv -f /usr/local/bin/clouddrive-2-linux-${ARCH}-${CD2_VERSION}/ /usr/local/bin/clouddrive
sudo chown -R root:root /usr/local/bin/clouddrive
sudo chmod +x /usr/local/bin/clouddrive/clouddrive
rm -f /tmp/clouddrive2.tgz
echo "CloudDrive2 installation done"
'

1.2.2 创建 systemd 启动项·

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
sudo tee /etc/systemd/system/clouddrive2.service > /dev/null << EOF
[Unit]
Description=CloudDrive2 Mount Service
After=network-online.target
Before=docker.service
Wants=network-online.target

[Service]
ExecStart=/usr/local/bin/clouddrive/clouddrive
Restart=always
RestartSec=5
User=root
StandardOutput=journal
StandardError=journal

ExecStartPre=/bin/mkdir -p /mnt/CloudDrive

[Install]
WantedBy=multi-user.target
EOF

1.2.3 启动服务·

随后启用 systemd 服务即可。

1
sudo systemctl enable --now clouddrive2.service

to be continued.