774 字
4 分钟
VPS使用Rclone挂载Onedrive教程
Rclone 配置与 Microsoft OneDrive 挂载教程
本教程详细介绍如何使用 Rclone 配置 Microsoft OneDrive,挂载到 VPS 或本地,并设置开机自动挂载和目录同步。以下是完整步骤:
1. 安装 Rclone
首先使用官方脚本一把梭rclone:
sudo -v ; curl https://rclone.org/install.sh | sudo bash安装完成后,检查 Rclone 是否安装成功:
rclone version2. 配置 Rclone
运行以下命令进入 Rclone 配置界面:
rclone config- 输入
n创建新的remote。 - 为
remote命名,例如odbiz。 - 在网盘列表中选择 Microsoft OneDrive(注意:序号可能变化,例如 38,确认不要选成 OpenDrive)。
- 对于
client_id和client_secret,由于子账户无 API 管理权限,直接按回车跳过。 - 选择
region,通常选1(全球版)。 - 对于
tenant,直接按回车跳过。 - 是否编辑高级配置(
Edit advanced config?),输入y。 - 在高级选项中,设置
chunk_size为250M(必须为 320K 的整数倍,最大 250M,否则无法上传)。其他选项按回车跳过。 - 回到是否编辑高级选项界面,直接按回车跳过。
3. 获取 Token
在获取 token 阶段,根据运行环境选择以下方案:
本地电脑
- 输入
y,Rclone 会自动打开浏览器。 - 登录 SharePoint 账户完成验证。
VPS 配置
方案一:使用 Termius 端口转发
- 输入
y,进入等待获取 token 状态。 - 使用 Termius 将端口
53682转发到本地(设置后需双击启用转发)。 - 打开提示的链接(红框链接)完成验证。
- 返回 Termius,选择连接方式为
1(OneDrive),按回车完成绑定。
方案二:本地获取授权码
- 在本地电脑打开命令行,运行:
rclone authorize "onedrive"- 浏览器会弹出授权页面,登录 OneDrive。
- 命令行返回一串
access_token,复制{}内的内容。 - 回到 VPS 的 Termius,输入
n,粘贴授权码,继续按回车完成绑定。
4. 挂载 OneDrive 到本地
- 创建本地挂载目录:
mkdir -p /rclone/onedrive- 确保 OneDrive 上存在目标目录(例如
ACG)。 - 运行以下命令将 OneDrive 挂载到本地:
rclone mount odbiz:ACG /rclone/onedrive --copy-links --no-gzip-encoding --no-check-certificate --allow-other --allow-non-empty --umask 000odbiz:配置的 remote 名称。ACG:OneDrive 上的目标文件夹路径。/rclone/onedrive:VPS 本地挂载目录。
挂载只需几秒,终端不会返回成功提示。关闭终端后重新连接,检查挂载状态:
df -h若输出中包含 rclone,则挂载成功。
5. 设置开机自动挂载
- 创建 systemd 服务文件:
cat > /etc/systemd/system/rclone.service <<EOF[Unit]Description=Rclone mount for odbizAfter=network-online.target
[Service]User=rootExecStart=/usr/bin/rclone mount odbiz:ACG /rclone/onedrive --copy-links --no-gzip-encoding --no-check-certificate --allow-other --allow-non-empty --umask 000 --vfs-cache-mode writesRestart=on-failure
[Install]WantedBy=multi-user.targetEOF- 启用开机自启:
systemctl enable rclone- 重新加载配置并重启服务:
systemctl daemon-reloadsystemctl stop rclonesystemctl start rclone- 检查服务状态和挂载情况:
systemctl status rclonedf -h6. 同步本地目录到 OneDrive
将本地目录 /rclone/onedrive 同步到 OneDrive 的 ACG_sync 目录,忽略已存在文件并显示进度:
rclone sync /rclone/onedrive odbiz:ACG_sync --progress --ignore-existingsync:同步操作。/rclone/onedrive:本地源目录。odbiz:ACG_sync:OneDrive 目标目录(根据实际替换)。--progress:显示同步进度。--ignore-existing:跳过目标目录中已存在的文件。
参考资料
VPS使用Rclone挂载Onedrive教程
https://fuwari.vercel.app/posts/vps使用rclone挂载onedrive教程/