70  
linux多块磁盘进行合并(lvm2)
作者: 文艺范儿 于 2021年07月31日 发布在分类 / linux / 系统相关 下,并于 2021年07月31日 编辑
lvm

目的

将两块空硬盘合并为“一块”,挂载到指定目录下,达到在一个目录使用2块硬盘所有空间的效果(两块盘做之前不需要分区和格式化)。

条件

root@server3-UIS-R390X-G2:~# lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
loop0    7:0    0 32.3M  1 loop /snap/snapd/12398
loop1    7:1    0   51M  1 loop /snap/snap-store/547
loop2    7:2    0 65.1M  1 loop /snap/gtk-common-themes/1515
loop3    7:3    0   51M  1 loop /snap/snap-store/542
loop5    7:5    0  219M  1 loop /snap/gnome-3-34-1804/72
loop6    7:6    0 64.8M  1 loop /snap/gtk-common-themes/1514
loop7    7:7    0 55.4M  1 loop /snap/core18/2066
loop8    7:8    0 55.4M  1 loop /snap/core18/2074
loop9    7:9    0  219M  1 loop /snap/gnome-3-34-1804/66
loop10   7:10   0 32.3M  1 loop /snap/snapd/12704
sda      8:0    1  3.6T  0 disk 
├─sda1   8:1    1  512M  0 part /boot/efi
└─sda2   8:2    1  3.6T  0 part /
sdb      8:16   1  3.6T  0 disk 
sdc      8:32   1  3.6T  0 disk 
sdd      8:48   1  3.6T  0 disk 

方法

1、安装lvm2

sudo apt install lvm2

2、创建pv

pvcreate /dev/sdb
pvcreate /dev/sdc
pvcreate /dev/sdd
查看物理卷
pvdisplay
pvs #推荐

3、创建vg

##vgcreate [自定义LVM名称] [设备]
##先使用硬盘1创建vg:LVM
vgcreate LVM /dev/sdb

4、扩展vg

##vgextend [自定义vg名称] [设备]   
##使用硬盘2和3扩展vg
vgextend LVM /dev/sdc
vgextend LVM /dev/sdc
查看物理卷组
vgs
可以根据屋里卷组剩余空间大小,分配空间

5、创建lv

##lvcreate -L [自定义分区大小] -n [自定义分区名称] [vg名称]
##*分区大小不能超过硬盘容量总和*
lvcreate -L 32.74T -n DB_DATA LVM

6、格式化分区

mkfs.ext4 /dev/LVM/DB_DATA

7、挂载分区

##mount [分区位置] [目录地址]
mkdir /mnt/chia-all
mount /dev/LVM/DB_DATA /mnt/chia-all/

8、设置开机自动挂载

##查询UUID
blkid
##编辑/etc/fstab加入
UUID=474a1b1c-0937-46ff-84ff-041004afcc1f /mnt/chia-all ext4 defaults 0 0
或者
/dev/mapper/LVM-DB_DATA /mnt/chia-all ext4 defaults 0 0
##载入
mount -a

后续问题

1、缩减逻辑卷,xfs不支持,缩减前先unmount

lvresize -L 300G /dev/LVM/DB_DATA #重新设定大小
e2fsck -f /dev/LVM/DB_DATA #检查磁盘错误 (针对ext4执行)
resize2fs /dev/LVM/DB_DATA #更新逻辑卷信息(针对ext4执行)

2、扩容逻辑卷,扩容前需要先unmount后,扩容不影响扩容前磁盘里面的内容

lvextend -L +10G /dev/LVM/DB_DATA #增加大小
e2fsck -f /dev/LVM/DB_DATA #检查磁盘错误 (针对ext4执行)
resize2fs /dev/LVM/DB_DATA #更新逻辑卷信息(针对ext4执行)

3、xfs扩容,xfs可以不卸载unmount

mkfs.xfs -f /dev/LVM/DB_DATA #重新格式化成xfs
mount /dev/LVM/DB_DATA /mnt
lvs #查看大小
lvresize -L 400M /dev/LVM/DB_DATA #重新设定大小
xfs_growfs /dev/LVM/DB_DATA #xfs文件系统需要执行,需要先挂载
df -h #扩容成功

4、扩展卷组

fdisk /dev/sdb #新增/dev/sdb5(逻辑分区8e) 2G
pvcerate /dev/sdb5 #创建物理卷sdb5
vgextend LVM /dev/sdb5  #把物理卷sdb5添加到vg1卷组中
lvresize -L 100M /dev/LVM/DB_DATA #扩容逻辑卷大小

5、删除操作

pvremove /dev/sdb #删除物理卷
vgremove LVM #删除物理卷组
lvremove /dev/LVM/DB_DATA #删除逻辑卷
如果想要删除整个LVM文件系统,则进行如下操作:
umount /fsave #先umount
vim /etc/fstab #删除相关挂载信息
mount -a
blkid
lvremove /dev/LVM/DB_DATA #删除逻辑卷
vgremove LVM #删除物理卷组
pvremove /dev/sdb #删除物理卷
pvremove /dev/sdc #删除物理卷
blkid

6、磁盘故障

开机显示乱码,此处是提示输入root密码
原因是因为磁盘挂载有问题
vim /etc/fstab配置中添加的问题一行,直接删掉保存重启即可





 推荐知识

 历史版本

修改日期 修改人 备注
2021-07-31 17:17:16[当前版本] 文艺范儿 格式调整
2021-07-31 17:16:16 文艺范儿 创建版本

  目录
    文艺知识分享平台 - 4.3.0 - 文艺范儿