V2EX 6小时前
[分享发现] Debian 服务器通过 rclone 挂载缤纷云(或其他 s3 兼容云存储),适用宝塔备份任务
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

本文详细介绍了如何使用rclone工具将缤纷云或其他S3兼容存储挂载到Debian服务器的本地目录。文章首先指导用户安装rclone并获取云存储的Access Key和Secret Key,然后通过`rclone config`命令进行详细配置,包括选择S3存储类型、输入密钥、区域和Endpoint等信息。配置完成后,用户可以通过`rclone mount`命令测试挂载,并将挂载点设置为本地目录,如`/mnt/bitiful`。为了实现后台运行和开机自启,文章提供了systemd服务单元配置方法,并指导用户创建`.service`文件、重载systemd配置并启动服务。最后,文章还提到了在宝塔面板中使用该挂载盘符作为备份目录时需要修改的配置,以及如何在WordPress中使用`Media Cloud`插件将媒体库迁移至云存储。

📦 **安装与配置rclone**: 首先,在Debian服务器上执行`apt update`和`apt install`命令安装`curl`, `unzip`, `fuse`, `libfuse2`, 以及`rclone`。接着,运行`rclone config`,按照提示新建配置(输入`n`),选择Amazon S3兼容存储,指定提供商为“Any other S3 compatible provider”,然后输入从云存储后台获取的`access_key_id`和`secret_access_key`,以及服务器的区域(如`cn-east-1`)和Endpoint(如`s3.bitiful.net`)。配置完成后,按`q`退出。

🗄️ **本地挂载S3存储**: 在服务器的`/opt`目录下创建一个用于挂载的目录(例如`mkdir -p /mnt/bitiful`)。然后,使用`rclone mount`命令进行测试挂载,格式为`rclone mount <你的配置名称>:<你的bucket名> /mnt/bitiful --uid 0 --gid 0 --umask 0022`。挂载成功后,可以通过FTP或其他文件管理器检查`/mnt/bitiful`目录下是否显示了S3存储桶中的文件。成功挂载后,按`Ctrl+C`停止前台进程。

⚙️ **后台运行与开机自启**: 为了让挂载服务在后台持续运行并随服务器启动而自动启动,需要在`/etc/systemd/system`目录下创建一个名为`bitiful.service`(或其他自定义名称)的systemd服务单元文件。文件中需包含`[Unit]`、`[Service]`和`[Install]`部分,指定服务描述、启动命令(`ExecStart`)、停止命令(`ExecStop`)以及重启策略。配置完成后,执行`systemctl daemon-reload`重载systemd配置,然后使用`systemctl start <服务名>`启动服务,并用`systemctl enable <服务名>`设置为开机自启。

🛠️ **宝塔面板与WordPress集成**: 对于使用宝塔面板的用户,如果想将挂载目录用作备份目的地,需要在`/www/server/panel/class/panelBackup.py`文件中将`_inode_min = 10`修改为`_inode_min = 0`,以解决因inode值为0导致的备份失败问题。对于WordPress用户,可以使用`Media Cloud`插件,通过类似rclone的配置方式将媒体库迁移到S3兼容存储,并启用删除本地媒体功能,从而将博客附件存储在云端。

安装 rclone 并配置好缤纷云或其他 s3 兼容存储

在缤纷云或其他云存储后台获取 Access Key 和 Secret Key

随后 ssh 进入你的服务器,安装 rclone 并配置缤纷云存储桶

apt updateapt install -y curl unzip fuse libfuse2apt install -y rclone
rclone config

输入 n 回车新建 config ,依次按照提示输入:name (自定义,如 bitiful )storage (选 Amazon S3 Compliant Storage Providers 对应的数字)provider (选 Any other S3 compatible provider 对应的数字)access_key_id 、secret_access_key (第 1 步获得)region (如缤纷云的 cn-east-1 ,在“桶信息”可查)endpoint (如缤纷云的 s3.bitiful.net ,在“桶信息”可查)

配置过程中没提到的项目直接回车即可,最后按 q 退出 config 配置即可。如果不喜欢使用这个交互过程,也可以直接编辑~/.config/rclone/rclone.conf ,格式如:

[bitiful]type = s3provider = Otheraccess_key_id = <access_key_id>secret_access_key = <secret_access_key>region = cn-east-1endpoint = https://s3.bitiful.net

将缤纷云或其他 s3 兼容存储挂载到 Debian 本地盘符

mkdir -p /mnt/bitiful
rclone mount bitiful:<你的 bucket 名> /mnt/bitiful --uid 0 --gid 0 --umask 0022

运行后去 ftp 查看/opt/bitiful 下是否存在你 bucket 中的文件和目录,有即表示挂载成功

如果成功,按 crtl+c 结束 rclone 的前台进程

配置 rclone 后台运行+开机启动

[Unit]Description=挂载 Bitiful S4 存储桶After=network-online.targetWants=network-online.target[Service]Type=simpleExecStart=/usr/bin/rclone mount bitiful:<你的 bucket 名> /mnt/bitiful --uid 0 --gid 0 --umask 0022ExecStop=/usr/bin/fusermount -u /mnt/bitifulRestart=on-failureRestartSec=5[Install]WantedBy=multi-user.target
systemctl daemon-reload
systemctl start rclone-bitifulsystemctl enable rclone-bitiful

在宝塔内使用

在宝塔内直接把这个挂载盘符作为备份目的地址会由于 inode 为 0 导致备份失败(但实际并不会不足),需要修改宝塔的验证

在/www/server/panel/class 目录下,修改 panelBackup.py 中的:

_inode_min = 10

变为

_inode_min = 0

就可以在备份任务中把/mnt/bitiful 当成一个本地目录使用了~

如果是备份目录,在计划任务的脚本编辑处,不可以直接指定备份路径,需要修改宝塔面板设置的默认备份路径

使用缤纷云或其他 s3 兼容云存储代替 wordpress 的本地媒体库

如果是博客博主,应该有很多朋友是希望直接能将博文附件上传到缤纷云使用的(毕竟缤纷云的图片处理是我用过的所有云存储中最强的)如果是 wordpress ,可以直接使用 [ Media Cloud ] 这个插件,和 rclone 相似的方式配置并打开删除本地媒体功能即可。这一步太简单就不写说明了

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

rclone S3存储 云存储挂载 服务器配置 宝塔面板 WordPress
相关文章