有奖捉虫:办公协同&微信生态&物联网文档专题 HOT
文档中心 > 文件存储 > 最佳实践 > 文件存储数据拷贝方案

使用场景

在日常使用文件存储时,通常会存在很多需要数据拷贝的场景,本文将介绍如何在 Linux 操作系统下,快速进行数据拷贝的推荐方案。
场景一:CFS 文件系统之间、文件系统内不同目录、文件系统和云硬盘间的数据同步。 在日常使用中,频繁地需要进行数据拷贝。如上三类场景在 Linux 操作系统层面上,都是不同目录之间的数据拷贝,操作方式上是类似的。通常情况下,可执行 cp 指令进行简单快速的拷贝。但如果涉及到大量文件的场景,cp 单线程的运行模式会严重拖慢拷贝进度,此情况下,建议使用本文推荐的方式进行拷贝,可起到自并发加速的作用。
场景二:文件系统与对象存储之间数据同步。 当涉及到通过公网去访问存储或导入数据时,推荐使用对象存储进行中转,可使用对象存储提供的各类基础工具进行数据上传、下载的动作。推荐使用的工具链接如下:COSBrowserCOSCMD

操作说明

此操作步骤面向场景一的使用,场景二可参考对象存储 COSBrowserCOSCMD 的页面使用。

前置条件

在云服务器上已存在可以迁移的源端和目标端目录。
说明
CFS 支持跨 VPC 访问,可通过 云联网 的方式打通多个 VPC,然后进行挂载访问。

操作步骤

1. 下载安装 rclone 工具。
wget https://downloads.rclone.org/v1.53.4/rclone-v1.53.4-linux-amd64.zip --no-check-certificate
unzip rclone-v1.53.4-linux-amd64.zip
chmod 0755 ./rclone-*/rclone
cp ./rclone-*/rclone /usr/bin/
rm -rf ./rclone-*
2. 执行命令,进行数据同步。
rclone copy /mnt/src /mnt/dst -Pvv --transfers 32 --checkers 64 --links --create-empty-src-dirs --retries=3
若需要后台拷贝可参考如下指令:
nohup rclone copy /mnt/src /mnt/dst -vv --transfers 32 --checkers 64 --links --create-empty-src-dirs --retries 3 >> /path/to/copy.log
该工具默认不会拷贝元数据信息,如 owner、ctime、atime 等。若对元数据信息有要求,可使用 rsync 命令拷贝。
说明
1. 参数说明如下,transfers 和 checkers 数目可以根据系统规格自行配置:
transfers:传输文件的并发数目(建议不超过核心数的2倍)。
checkers:扫描本地文件的并发数目(建议不超过核心数的2倍)。
P:实时展示数据拷贝进度(500ms,若不加为1分钟刷新一次)。
links:复制软链接。
vv:打印拷贝日志。
create-empty-src-dirs:针对空目录也执行拷贝。
retries:对失败的拷贝进行自动重试的次数(可根据实际需要调整数值)。
2. 此工具重复运行可自动进行增量同步,识别增量的方式为全局扫描。
3. 等待数据完成同步后,可通过日志查看不同文件的迁移任务结果。