收起左侧

分享关于Linear模式扩容替换硬盘的操作步骤

15
回复
7168
查看
[ 复制链接 ]

2

主题

3

回帖

5

牛值

初出茅庐

2024-10-9 13:00:40 显示全部楼层 阅读模式
首先感谢飞牛团队,给大家带来了非常优秀的产品。
以个人为例,比如两块硬盘组的Linear存储池,空间写满后,增加一块更大的硬盘,替换掉原来的小硬盘,对于我来说是刚需的应用场景。
WEB端只支持扩容,不支持替换硬盘。经过查阅资料和尝试,和大家分享Linear模式扩容替换硬盘的操作步骤。

一、测试环境
虚拟机,飞牛OS v0.8.20,添加了1G、2G、3G共三块硬盘。

1G+2G创建Linear存储池


写入2.1G的文件占用存储池


二、操作步骤
1.在WEB端添加3G的硬盘扩容




2.在终端运行 sudo pvdisplay 查看硬盘卷组结构。我这里1G对应sdc1、2G对应sda1、3G对应sdd1。
根据提示输入管理员密码,下同。



运行 lsblk 记下红框中的一串数字备用



2.此时3G硬盘中应该没有数据,但是freePE(可以理解为卷组的最小存储单元)为0,被预分配了,无法转存其他硬盘数据,需要先进行缩容,释放freePE。
在终端运行 sudo lvreduce -L -2.5G /dev/mapper/trim_3db66039_852a_489c_933e_2549addc03bf-0
以上参数中,缩容的2.5G,建议略小于新硬盘的容量,trim_xxx就是红框中的数字。



3. 将1G硬盘sdc1的数据移动到3G硬盘sdd1
在终端运行 sudo pvmove /dev/sdc1 /dev/sdd1



4. 将1G硬盘sdc1从卷组中删除
sudo vgreduce trim_3db66039_852a_489c_933e_2549addc03bf /dev/sdc1
注意:这时trim_xxx最后面的-0要删除



5. 将1G硬盘sdc1从物理卷中删除
sudo pvremove /dev/sdc1




6. 恢复卷组至全部可用空间
sudo lvextend -l +100%FREE /dev/mapper/trim_3db66039_852a_489c_933e_2549addc03bf-0
注意:这时trim_xxx最后面要加-0

可以看到可用空间已经变为4.99G(2G+3G)

7. 重启机器,此时会报错,因为存储空间大小不一致导致的,WEB端无响应,不要着急



8. SSH终端输入sudo btrfs rescue fix-device-size /dev/dm-0
修复btrfs ctree


9. 再次重启机器,进入WEB端,存储空间变为3G+2G组成的Linear,1G硬盘空闲可以拔出,原文件没有影响




以上是全部流程,缩容时要妥善选择大小,不然有数据丢失风险,适合有一定基础的同学尝试。

收藏
送赞 15
分享

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

3

主题

34

回帖

70

牛值

江湖新锐

社区上线纪念勋章社区共建团荣誉勋章

2024-10-10 11:28:53 显示全部楼层
好帖,正好需要更换硬盘,学习了!

0

主题

2

回帖

0

牛值

江湖小虾

2024-10-10 13:59:54 显示全部楼层
先mark一下 之后硬盘空间不够了可能用得着
锁容时是不是对硬盘使用量有一定需求 太满了就缩不了?
太满了强行缩容肯定会丢数据。靠谱的操作是先添加新硬盘,缩容空间略小于新硬盘容量,保证缩容的部分没有碰到旧硬盘的数据  详情 回复
2024-10-12 11:31

2

主题

3

回帖

5

牛值

初出茅庐

2024-10-12 11:31:00 楼主 显示全部楼层
太满了强行缩容肯定会丢数据。靠谱的操作是先添加新硬盘,缩容空间略小于新硬盘容量,保证缩容的部分没有碰到旧硬盘的数据

0

主题

2

回帖

0

牛值

江湖小虾

2024-10-18 17:21:47 显示全部楼层
很好的贴子,刚好要换一块硬盘。缩容空间略小于的量是否也可以理解为大于磁盘空间已经使用的量即可?
比如我现在挂载的是两个1t和一个4t,已用4t多,现把一个1t换为一个4t,缩容容量应该为多少合适? 还有就是第8步重启后还会报错么  详情 回复
2024-10-18 17:25

0

主题

2

回帖

0

牛值

江湖小虾

2024-10-18 17:25:08 显示全部楼层
比如我现在挂载的是两个1t和一个4t,已用4t多,现把一个1t换为一个4t,缩容容量应该为多少合适?
还有就是第8步重启后还会报错么
大于旧硬盘的数据量,小于新硬盘的空间即可,旧1T换成新4T,可以缩个1.5T  详情 回复
2024-10-21 11:02

2

主题

3

回帖

5

牛值

初出茅庐

2024-10-21 11:02:32 楼主 显示全部楼层
HiToRi 发表于 2024-10-18 17:25
比如我现在挂载的是两个1t和一个4t,已用4t多,现把一个1t换为一个4t,缩容容量应该为多少合适?
还有就是 ...

大于旧硬盘的数据量,小于新硬盘的空间即可,旧1T换成新4T,可以缩个1.5T

3

主题

3

回帖

0

牛值

江湖小虾

2024-11-22 21:34:16 显示全部楼层
好贴,手**把测试硬盘加进去了,正没办法拆开

4

主题

10

回帖

0

牛值

江湖小虾

社区上线纪念勋章

2025-1-12 20:12:53 显示全部楼层
执行到第八步,报错
zyc@fnOS:~$ sudo btrfs rescue fix-device-size /dev/dm-0
[sudo] password for zyc:
ERROR: /dev/dm-0 is currently mounted

应该怎么办
搞定了“/dev/dm-0”是这个id变了,看了报错日志我的是dm-2  详情 回复
2025-1-12 21:06

4

主题

10

回帖

0

牛值

江湖小虾

社区上线纪念勋章

2025-1-12 21:06:41 显示全部楼层
搞定了“/dev/dm-0”是这个id变了,看了报错日志我的是dm-2

0

主题

3

回帖

0

牛值

江湖小虾

2025-1-23 00:31:54 显示全部楼层
扩容这个操作真的很有用,学习下,好教程

1

主题

5

回帖

0

牛值

江湖小虾

2025-1-24 20:28:32 显示全部楼层
可以参照这个模式  删掉某一块硬盘吗

0

主题

1

回帖

0

牛值

江湖小虾

2025-2-9 02:38:07 显示全部楼层
最近我的老硬盘开始报错了,真希望这个功能可以集成上判断,做成一个linear类型存储空间的一个更换硬盘或者删除硬盘的功能,那就太好啦!

2

主题

1

回帖

0

牛值

江湖小虾

2025-2-12 16:40:07 显示全部楼层
更换硬盘,对硬盘接在哪个SATA口上有要求吗?

1

主题

4

回帖

0

牛值

江湖小虾

2025-2-21 23:01:37 显示全部楼层
删除硬盘的时候,一直报“still in use”,需要咋处理?也没啥在读写哎

0

主题

2

回帖

0

牛值

江湖小虾

2025-3-18 09:18:00 显示全部楼层
mark一下
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则