小鸡磁盘不够用?rclone挂载云存储,20G小盘秒变大空间


导读:年付低价VPS的磁盘普遍只有20-40G,系统加日志加备份文件,用着用着就见底。本站之前讲过磁盘爆满的急救清理,但清理只是治标:不删的数据迟早还会堆满。这篇给另一条路:用rclone把对象存储(S3、B2、OneDrive、各类网盘)挂载成本地目录,冷数据全部搬上去,小盘只留系统和热数据。花几块钱的存储费,20G小盘当200G用。


一、思路:热冷数据分离


先明确哪些数据适合搬上云:


适合(冷数据):历史备份包、老照片视频、软件安装包、日志归档、不常访问的资料——访问频率低,对速度不敏感;

不适合(热数据):数据库文件、网站程序、频繁读写的日志——云存储延迟高,放上去会拖垮性能。


判断标准很简单:一周都不访问一次的,就可以上云。


二、安装rclone与配置存储后端


安装(官方一键脚本):


curl https://rclone.org/install.sh | bash


配置存储:


rclone config


交互流程:选 new remote → 起个名字(比如叫 store)→ 选择存储类型(S3选Amazon S3,Backblaze选B2,微软盘选OneDrive)→ 按提示填密钥或走OAuth授权。


各家细节差异说明:


S3类(AWS、Cloudflare R2、各种兼容S3的服务):填access_key和secret_key,endpoint填服务商给的地址;

Backblaze B2:性价比突出,按量付费无流量入口费,适合纯备份场景;

OneDrive/Google Drive:有订阅就能白用容量,但走OAuth授权需要在本地浏览器完成,VPS无图形界面的按rclone文档的headless流程操作。


配完验证连通性:


rclone ls store: --max-depth 1


能列出内容就是通了。


三、挂载到本地目录


rclone挂载依赖fuse,先确认:


apt install fuse3


创建挂载点并挂载:


mkdir -p /mnt/store

rclone mount store: /mnt/store --allow-other --vfs-cache-mode writes --daemon


参数解释:


--allow-other:允许非root用户访问挂载目录;

--vfs-cache-mode writes:写入先进本地缓存再异步上传,避免直接写云端卡顿;

--daemon:放后台运行。


挂载成功后,/mnt/store 就是你的云端空间,ls、cp、mv 随便用,和本地目录手感一致。


用df确认:


df -h /mnt/store


四、开机自动挂载


手动挂载重启就失效,配成systemd服务最稳。创建 /etc/systemd/system/rclone-store.service:


[Unit]

Description=rclone mount store

After=network-online.target


[Service]

Type=notify

ExecStart=/usr/bin/rclone mount store: /mnt/store --allow-other --vfs-cache-mode writes

ExecStop=/bin/fusermount -u /mnt/store

Restart=on-failure


[Install]

WantedBy=multi-user.target


启用:


systemctl daemon-reload

systemctl enable --now rclone-store.service


五、实战:把备份目录搬上云


配合本站之前讲过的restic备份方案,可以把远程备份目的地直接换成挂载目录,或者独立使用:


mv /var/backup /mnt/store/backup

ln -s /mnt/store/backup /var/backup


用软链接无缝衔接原有路径,跑备份脚本时无感切换,历史备份从此不占本地磁盘。


六、避坑指南


坑1:挂载后整个目录变卡。说明热数据放上去了。检查--vfs-cache-mode参数是不是没加writes,并把数据库、网站目录挪回本地盘。


坑2:OneDrive/Google Drive挂载频繁掉线。网盘类后端限流严格,别在挂载目录里跑高频小文件读写(比如日志),那不是网盘的正确用法。


坑3:内存持续上涨。rclone的vfs缓存默认上限较大,小内存机器加参数限制:--vfs-cache-max-size 2G,缓存占用就有边界了。


坑4:重启后挂载点残留导致挂载失败。服务ExecStop已处理正常卸载;异常断电后如果报transport endpoint is not connected这类错误,先 fusermount -u /mnt/store 再重启服务。


坑5:以为挂载目录的数据也在本地。并没有——数据在云端,本地只有缓存。机器报废数据依然安好,这其实是优点。


结语


rclone挂载的本质是花小钱买弹性:存储费用按量计费,冷数据一个月通常就几毛到几块钱,换来的是小盘VPS继续服役不用升配。


推荐的完整姿势:本地盘放系统和热数据 + restic定期备份 + 备份目的地指向rclone挂载的云存储。磁盘压力、数据安全、成本控制三个问题一套方案全解。


动手顺序:装rclone → config配后端 → mount试挂载 → systemd固化 → 软链接迁移冷数据。半小时内可以全部完成。


手机扫码阅读

微信或手机浏览器扫一扫,随时随地随心阅读与分享

比Prometheus更轻:Uptime Kuma五分钟搭好网站监控,宕机微信推送

别等账单吓一跳:vnstat监控VPS月流量,超额计费提前预警

评 论
更换验证码