2024-11-28 14:55:14

问题背景

玩客云设备在刷入 Armbian 系统后具备了强大的扩展性,但其板载 8GB eMMC 存储成为了一个明显的瓶颈。我目前再用的玩客云系统安装后仅剩余约 5GB 可用空间,即使外接硬盘也只能作为简单的文件存储,无法有效解决系统和应用数据的存储需求。于是我尝试进行存储扩展方案。

文章
玩客云刷入Armbian系统+CasaOS完全指南
期望氢气球
2024-11-15

方案一:BTRFS 文件系统扩展

适用场景

这种方案适用于全新安装 Armbian 系统的情况。在安装系统时,可以选择使用 BTRFS 文件系统而不是默认的 ext4。BTRFS 文件系统的一大优势在于其支持动态存储池管理,可以轻松实现存储设备的扩展。

操作步骤

  1. 确认硬盘连接状态

  • 移动硬盘正确连接到玩客云的 USB 接口

  • 确保供电充足,建议使用带独立供电的硬盘盒

  1. 添加存储设备

btrfs device add

/dev/sdX /

说明:此命令将新的存储设备添加到 BTRFS 存储池中。将 ‘sdX’ 替换为实际的设备名称(可通过 lsblk 命令查看)。

  1. 平衡文件系统

btrfs filesystem balance /

说明:此命令会重新分配数据,使其在所有存储设备上均匀分布,以实现更好的性能和空间利用。

方案二:系统目录迁移

适用场景

如果系统已经运行一段时间无法重装,或者使用的是 ext4 文件系统,可以采用这种方案。选择性地将特定系统目录迁移到外部存储设备。

建议可迁移的目录

  • /home – 用户个人数据目录

  • /var – 系统变量数据目录

  • /opt – 第三方应用程序目录

  • 其他应用数据目录

详细操作步骤(以 /home 目录为例)

1. 检查硬盘设备

lsblk

说明:此命令会显示所有存储设备的列表。在我得设备上显示以下输出:

NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS

sda 8:0 0 447.1G 0 disk

mmcblk2 179:0 0 7.2G 0 disk

其中 sda 表示外接硬盘,有447.1G空间,mmcblk2 表示板载 eMMC。

2. 硬盘分区

sudo fdisk /dev/sda

按顺序输入以下命令:

  • n – 创建新分区

  • p – 选择主分区

    8G存储太痛苦!这份玩客云Armbian扩容指南让你告别纠结
  • 1 – 设置分区号

  • [Enter] – 使用默认起始扇区

  • [Enter] – 使用默认结束扇区(使用全部空间)

  • w – 写入分区表并退出

说明:这些步骤将在外接硬盘上创建一个使用全部空间的主分区。

3. 格式化分区

sudo mkfs.ext4 /dev/sda1

说明:此命令将新建分区格式化为 ext4 文件系统,这是 Linux 系统中最常用的文件系统格式。

4. 创建挂载点

sudo mkdir -p /mnt/external

说明:创建一个临时挂载点,用于后续数据迁移操作。

5. 临时挂载分区

sudo mount /dev/sda1 /mnt/external

说明:将新分区临时挂载到创建的挂载点,以便进行数据迁移。

6. 创建目录结构

sudo mkdir -p /mnt/external/home

说明:在外接硬盘上创建必要的目录结构,为数据迁移做准备。

7. 复制数据

sudo rsync -avxP /home/ /mnt/external/

说明:使用 rsync 命令复制数据,参数说明:

  • -a:保持文件属性

  • -v:显示详细信息

  • -x:不跨越文件系统边界

  • -P:显示进度并允许断点续传

8. 备份原目录

sudo mv /home /home.bak sudo mkdir /home

说明:将原始目录改名作为备份,并创建新的空目录作为挂载点。

9. 获取分区 UUID

sudo blkid /dev/sda1

说明:获取新分区的唯一标识符,用于配置自动挂载。

10. 配置自动挂载

编辑 /etc/fstab 文件:

sudo nano /etc/fstab

添加以下行(替换为实际的 UUID):

UUID= /home ext4 defaults 0 2

说明:这一步配置系统启动时自动挂载外接硬盘。参数说明:

  • defaults:使用默认挂载选项

  • 0:不进行备份

  • 2:检查文件系统的优先级

11. 测试新配置

sudo mount -a

说明:测试新的挂载配置是否正确。如果没有错误提示,说明配置成功。

12. 重载系统服务

sudo systemctl daemon-reload

说明:通知系统服务重新加载配置文件。

注意事项

  • 进行任何操作前,务必备份重要数据

  • 一定要谨慎操作,出现任何错误都可能导致系统崩溃

  • 提前确认外接硬盘的健康状态

  • 如果有USB 3.0接口,优先选择 USB 3.0

总结

这两种存储扩展方案各有特点:

  • BTRFS 方案操作简单,但要求全新安装系统

  • 目录迁移方案更灵活,可用于现有系统

选择哪种方案主要取决于具体需求和系统现状。无论选择哪种方案,请务必仔细按照步骤操作,确保数据安全。

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~