Centos7 服务器挂载一块新的硬盘,硬盘空间为 1T,在系统内对新的硬盘进行分区和格式化操作,没有做 lvm 操作,然后直接挂载倒 /data 目录下,这个 data 目录已经占用了 900 多 G 空间了,但是想对这个目录做在线扩容,应该怎么处理,之前接触过 lvm 扩容,但是 lvm 扩容需要是之前就已经做好的,像这种没有做过 lvm 的,不能影响原来数据,该怎么扩容?
![]() | 1 likuku 2019-11-08 19:42:52 +08:00 做不到的,总会中断对这个目录的访问。 另外,你 /data 原本所在的硬盘不能在线扩容么?如今云端机器的弹性存储设备,本身就可以直接扩容, 之后只要对旧有的 FS 进行 resize 操作就可以了( ext4, xfs 都可以) 。 |
![]() | 2 likuku 2019-11-08 19:43:46 +08:00 当然,动到存储了,任何有风险的操作之前,先确保你的数据已经有了可靠的备份。 |
3 laminux29 2019-11-08 19:58:50 +08:00 服务器在装机时,就需要对未来做规划。明确不需要在线扩容的,才可以不用 LVM。 现在除了特殊应用以及低成本的 HA 节点之外,几乎不会不做 LVM。 但问题是,就算做了 LVM,在线扩容时也会小卡那么一下。 |
![]() | 4 aaa5838769 OP @likuku 不是云端,假设硬盘就 1t 了,已经全部分一个区了。 |
![]() | 5 harde 2019-11-08 22:54:02 +08:00 再挂一块硬盘,挂在 /data/xxx 目录。 调整程序,让新数据写入到 /data/xxx。 之后再调整 /data 其他目录。 以后再满了,就继续在 /data/下挂载多个硬盘。多个目录 虽然浪费点磁盘。 但可以解决问题。 |
6 wind315 2019-11-09 00:33:23 +08:00 via iPhone 新建好 lvm,将 /data 内容复制到新建的 lvm 中,挂载 lvm 到 /data,不过不中断一下下貌似不太可能 |
7 msg7086 2019-11-09 01:19:40 +08:00 扩容到哪呢?如果是云盘的话重做分区表然后扩展一下磁盘就行了,物理的话要提前规划好,否则 LVM 直接 JBOD 出来,等你丢数据的时候就准备好跑路吧。 |
![]() | 8 aaa5838769 OP @wind315 主要是没有新建好 |
![]() | 9 aaa5838769 OP @harde 的确是一种解决办法,如果是数据库存储目录,这种方式不方便解决。 |
10 ps1aniuge 2019-11-09 23:19:16 +08:00 @aaa5838769 我的回答是,没法解决。 @harde 的解决方法,是不太好的。是卖拐。 挂在 /data/xxx ,和新硬盘挂在 /data2 没区别。甚至不如挂在 /data2, /data2 后,可以 umount/data。 挂在 /data/xxx,并没有“真的” 让 /data 的那块盘扩容。 |