Please enable Javascript to view the contents

 ·  ☕ 3 分钟  ·  ✍️ YSL
    🏷️

飞牛 OS:4TB 数据盘无损迁移并扩容到 14TB 的完整实战教程

在这篇文章中,我将分享一次真实的飞牛 OS 数据盘无损迁移与扩容案例:
将一块 4TB 的机械硬盘更换为 14TB 的新盘,并完整保留所有数据、应用、Docker 容器与配置。

这篇教程适用于以下场景:

  • 飞牛系统使用 Basic 模式 + Btrfs 文件系统
  • 数据盘中包含 飞牛应用数据、Docker 数据、个人文件
  • 希望做到 无损迁移 + 扩容
  • 能以 root 身份登录 SSH

如果你不会 SSH,这篇文章不适合你,因为操作失误可能导致数据不可恢复。


目录


一、系统结构说明

朋友的飞牛机器有两块硬盘:

1. NVMe 1TB 固态(系统盘)

  • 200GB 用于系统分区
  • 剩余空间作为 存储空间 1

2. 4TB 机械盘(存储空间 2)

  • Basic 模式
  • Btrfs 文件系统
  • 存储飞牛应用数据、Docker 数据、个人文件

现在要把这块 4TB 机械盘替换为 14TB 的新盘,并且 无损迁移所有数据


二、准备工作

将 14TB 新硬盘连接到飞牛(内置或 USB 硬盘盒均可)。
不要在飞牛网页端挂载或初始化新硬盘!

然后以 root 登录 SSH。


三、查看硬盘信息

执行:

1
fdisk -u -l

你会看到类似输出(示例):

  • /dev/nvme0n1 → 系统盘
  • /dev/sda → 4TB 旧数据盘
  • /dev/sdb → 14TB 新硬盘

重点记录以下两个路径(每个人都不同,请务必记录你自己的):

  • RAID 阵列设备: /dev/md1
  • 逻辑卷设备: /dev/mapper/xxxx-xxxx-xxxx-0

这两个路径后面会用到。

四、使用 dd 全盘克隆旧盘 → 新盘

为了避免 SSH 断开导致中断,先安装 screen:

bash

apt-get update && apt-get install -y screen

创建会话:

bash

screen -S clone

开始克隆:

bash

dd if=/dev/sda of=/dev/sdb bs=4k status=progress conv=sync,noerror

等待数小时(可随时断开 SSH)。

重新进入会话查看进度:

bash

screen -r clone

克隆完成后:

  1. 关闭飞牛
  2. 拔掉旧 4TB 硬盘
  3. 装上 14TB 新硬盘
  4. 开机

此时飞牛会识别到新硬盘,但容量仍然是 3.7TB,因为分区表被原样克隆过来了。

五、开始扩容

1. 扩容分区(非常关键)

克隆后,新盘路径从 /dev/sdb 变成了 /dev/sda

执行:

bash

fdisk /dev/sda

按以下顺序操作:

  1. 输入 d → 删除原来的 sda1
  2. 输入 n → 创建新分区(全部默认)
  3. 提示是否删除旧签名 → 输入 n
  4. 输入 t → 修改分区类型
  5. 输入 42 → Linux RAID
  6. 输入 w → 保存

确认:

bash

fdisk -u -l

你应该看到 /dev/sda1 已经变成 12.7TB。

2. 扩容 Linux RAID 阵列(/dev/md1)

执行:

bash

mdadm --grow /dev/md1 -z max

然后扩容 PV:

bash

pvresize -v /dev/md1

3. 扩容 LVM 逻辑卷

逻辑卷路径类似:

代码

/dev/mapper/trim_xxxxxxxx-0

扩容:

bash

lvextend -l +100%FREE /dev/mapper/你的LV路径

4. 扩容 Btrfs 文件系统

假设挂载点为 /vol2: 存储空间顺序

bash

btrfs filesystem resize max /vol2

至此,扩容全部完成。

六、验证扩容结果

回到飞牛网页端 → 存储空间管理 你会看到:

  • 存储空间 2 已从 3.7TB → 12.7TB
  • 所有数据完整保留

七、注意事项

  1. 所有命令中的路径必须替换成你自己的! /dev/md1/dev/sda1/dev/mapper/xxxx 每个人都不同。
  2. 大小写敏感,输入错误可能导致数据丢失。
  3. dd 是扇区级克隆,所以分区表也会被克隆,扩容必须按本文步骤进行。

八、总结

这是飞牛 OS Basic 模式 + Btrfs 文件系统下,最安全、最完整、最可控的 无损迁移 + 扩容方案

流程核心:

  1. dd 全盘克隆
  2. 扩容分区
  3. 扩容 mdadm 阵列
  4. 扩容 LVM
  5. 扩容 Btrfs

整个过程不需要重新初始化存储池,也不会丢失任何应用数据或 Docker 数据。