Linux系统合并多块大于2T的磁盘到一个分区,并挂载到同一个目录下(等同于对原磁盘进行扩容)(CentOS7)

3 篇文章 0 订阅
1 篇文章 0 订阅

一. 前言

        在试运行期间,实际拿到的数据远大于预估值,文件存储服务器无法满足工程导入。而磁盘扩容方案,是得到两个更大的不同的磁盘,而系统原本设计上并未针对此情况有过专门的应对(会拆分文件夹单独存储),现需要将两个磁盘合并挂载到同一个目录下。

        至于其中的技术,在之前并不是特别了解,在网上查阅了一些资料,尝试了各种方案,都不是很理想,特别是新的磁盘都大于2T。

        直到我看到这篇文章,解决了当下问题,转载留存,对内容进行了视觉上加工处理,便于日后查看。

        原文链接:https://blog.csdn.net/likemebee/article/details/85630808

二. 使用parted方式格式化磁盘并且创建LVM

 0)准备

查看磁盘情况:fdisk -l

 先格式化磁盘 /dev/vdb

使用parted开始分区:

 运行命令 parted /dev/vdb

GNU Parted 3.1
使用 /dev/vdb
Welcome to GNU Parted! Type ‘help’ to view a list of commands.
(parted)

 运行命令 mklabel gpt

将MBR分区形式转为GPT分区形式

运行命令 mkpart primary ext4

划分一个采用ext4文件系统的主分区,并设置分区的开始位置和结束位置。如果一个数据盘只分一个分区,则

 运行命令 mkpart primary ext4 0 -1

警告: The resulting partition is not properly aligned for best performance.
忽略/Ignore/放弃/Cancel? i
(parted)

print

Model: Virtio Block Device (virtblk)
Disk /dev/vdb: 5906GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:

 

Number Start End Size File system Name 标志
1 17.4kB 5906GB 5906GB primary

(parted)

使用toggle 更改硬盘类型
toggle 1 lvm
运行命令 quit,退出 parted 操作。
运行命令 partprobe,使系统重读分区表

安装LVM,及创建
yum -y install lvm2

 1)创建PV

运行命令

pvcreate /dev/vdb1
pvscan

 在这里插入图片描述

 
显示PV信息,因为只创建一个PV,所以只有一个

运行命令 pvdisplay

“/dev/vdb1” is a new physical volume of “5.37 TiB”
— NEW Physical volume —
PV Name /dev/vdb1
VG Name
PV Size 5.37 TiB
Allocatable NO
PE Size 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID fFQn0B-u43M-0cHI-NW7C-v04j-GgIc-jANPzh

好了,现在将一块普通磁盘改变成LVM里最基本物理磁盘。下面我们来创建VG(磁盘管理组)。

2)创建VG(卷组),来管理PV

运行命令 vgscan

因为之前没有创建过VG,所以扫描没有显示。

运行命令 vgcreate vgdata /dev/vdb1

创建vgdata并将/dev/vdb1加入

运行命令 vgcreate vgdata /dev/vdb1 -s 8M

-s 是指定PE大小,默认是4M (这里成功的来报道,我的未成功!)

运行命令 vgdisplay

显示VG信息

— Volume group —
VG Name vgdata
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 1
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 0
Open LV 0
Max PV 0
Cur PV 1
Act PV 1
VG Size 5.37 TiB
PE Size 4.00 MiB
Total PE 1407999
Alloc PE / Size 0 / 0
Free PE / Size 1407999 / 5.37 TiB
VG UUID ZvCXQI-CgCN-9cal-SHLm-zGsy-2Jpk-LvTI89

再次扫描,发现上面创建的“vgdata”卷组VG了。

3)创建LV

有了卷组我们就可以创建LV,LV是我们真正用来写数据的,比如新建一个文本等。

运行命令 lvscan

扫描LV,之前没有建立过LV,什么也没显示

运行命令 lvcreate -L 5500G -n lvData vgdata

创建LV,-L 指定LV大小为5500G,-n LV名字方便区分,vgdata 加入到vgdata组,上面创建的。

PS:这里需要注意,在实际执行中,磁盘大小可能会有出入,这里根据实际情况稍作调整即可。

运行命令 lvdisplay

— Logical volume —
LV Path /dev/vgdata/lvData
LV Name lvData
VG Name vgdata
LV UUID sxF9Tc-4RHe-wRXl-AtI5-qYYK-wGMj-QX5KTo
LV Write Access read/write
LV Creation host, time iZj6c6y9bsrhe25j0wi24mZ, 2019-01-02 20:36:28 +0800
LV Status available
# open 0
LV Size 5.37 TiB
Current LE 1407744
Segments 1
Allocation inherit
Read ahead sectors auto
currently set to 8192
Block device 252:0

4)格式化LV及挂载

 格式化lvData为ext4格式

运行命令 mkfs.ext4 /dev/vgdata/lvData

创建挂载点

运行命令 mkdir /LVM 

挂载到LVM下

运行命令 mount /dev/vgdata/lvData /LVM 

运行命令 df -h

显示挂载成功

开机自动挂载
echo "/dev/vgdata/lvData /LVM ext4 defaults 0 0" >> /etc/fstab

三、两块磁盘挂载指向一个文件夹LVM


1)扩展VG卷组


刚才我们已经把磁盘/dev/vdb格式化了,现在我们需要格式化磁盘/dev/vdc

前面的操作和上面一样,先使用parted方式格式化磁盘并且创建LVM,这里就不跟上面一样那么详细了。

执行命令:


parted /dev/vdc
mklabel gpt
mkpart primary ext4 0 -1
toggle 1 lvm
quit
partprobe

pvcreate /dev/vdc1                         //普通磁盘转换成PV


pvs                                                 //查看VG组信息


vgextend vgdata /dev/vdc1           //加入VG组,vgdata要加入VG组名,/dev/sdc1新PV


vgdisplay                                      //查看VG卷组详细信息

— Volume group —
VG Name vgdata
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 3
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 1
Open LV 1
Max PV 0
Cur PV 2
Act PV 2
VG Size 10.74 TiB
PE Size 4.00 MiB
Total PE 2815998
Alloc PE / Size 1407744 / 5.37 TiB
Free PE / Size 1408254 / 5.37 TiB
VG UUID ZvCXQI-CgCN-9cal-SHLm-zGsy-2Jpk-LvTI89

2)扩展LV、缩小LV逻辑卷

扩展LV

lvextend -L +5500G /dev/vgdata/lvData

缩小LV

lvextend --size +1781G /dev/vgdata/lvData


LV扩容完系统还没有识别,需要用resize2fs来更新,系统才能识别到。

执行命令
resize2fs /dev/vgdata/lvData
df -h


至此合并多块大于2T的磁盘到一个分区的操作已经完成。

最后再次感谢原博主的分享,解决了我的问题。

  • 1
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值