
# 迁移通用文件系统和SFS Turbo文件系统之间的数据
#### 方案概述
用户可以将通用文件系统中的数据迁移至SFS Turbo文件系统中，也可以将SFS Turbo文件系统中的数据迁移至通用文件系统中，进行云上业务拓展。
此方案通过创建一台Linux操作系统的云服务器，来连接通用文件系统和SFS Turbo文件系统的通信。
#### 约束与限制
- 仅支持使用Linux系统的云服务器进行数据迁移。
- Linux系统云服务器、通用文件系统和SFS Turbo文件系统需在同一VPC下。
- 支持实现增量迁移，即只迁移发生变化的数据。
 
#### 前提条件
- 已创建一台操作系统为Linux的云服务器。
- 已创建通用文件系统或SFS Turbo文件系统，并获取到文件系统的挂载地址。
 
#### 资源规划
本章节介绍案例中使用的资源信息。具体如[表1]所示。
 表1资源规划 
| 产品         | 配置示例                                                                                                                                                                                                                            | 说明                      |
|:---|:---|:---|
| 弹性云服务器 ECS | 规格：8vCPUs \| 16GB \| c7.2xlarge.2 操作系统：Linux 区域：华北-北京四 VPC名称：VPC1 | 已创建/mnt/src和/mnt/dst的目录 |
   
#### 操作步骤
1. [登录弹性云服务器控制台](https://console.huaweicloud.com/ecm/#/ecs/manager/vmList)。
2. 登录已创建好的Linux系统云服务器，用于同时访问通用文件系统和SFS Turbo文件系统。
3. 输入以下挂载命令，用于访问文件系统1。文件系统1可以是通用文件系统或SFS Turbo文件系统。 
   ```
   mount -t nfs -o vers=3,timeo=600,noresvport,nolock 文件系统1挂载地址 /mnt/src
   ```
   
   
4. 输入以下挂载命令，用于访问文件系统2。文件系统2可以是通用文件系统或SFS Turbo文件系统。 
   ```
   mount -t nfs -o vers=3,timeo=600,noresvport,nolock 文件系统2挂载地址 /mnt/dst
   ```
   
   
5. 下载并安装rclone工具。下载地址请参见<https://rclone.org/downloads/>。
6. 执行以下命令，进行数据同步。 
   ```
   rclone copy /mnt/src /mnt/dst -P --transfers 32 --checkers 64 --links --create-empty-src-dirs
   ```
   ![](https://support.huaweicloud.com/bestpractice-sfs/public_sys-resources/note_3.0-zh-cn.png)
   参数说明如下，transfers和checkers数目可以根据系统规格自行配置：
   - /mnt/src ：源路径
   
   - /mnt/dst：目标路径
   
   - --transfers：传输文件的并发数目。
   
   - --checkers：扫描本地文件的并发数目。
   
   - -P：数据拷贝进度。
   
   - --links：复制源端的软链接，目的端保持为软链接的形式。
   
   - --copy-links：复制源端软链接指向的文件内容，目的端变成文件的形式，不再是软链接。
   
   - --create-empty-src-dirs：复制源端的空目录到目的端。
    
   等待数据完成同步后，可前往目标文件系统查看是否已成功迁移。
   
   
 
#### 验证
1. 登录已创建好的Linux系统云服务器。
2. 在目的端服务器执行以下命令，验证文件同步情况。 
   ```
   cd /mnt/dst
   ls | wc -l
   ```
   
   
3. 数据量与源端服务器中的一致时，表示数据迁移成功。
 
