Linux Ubuntu系统下通过LVM创建软raid来实现硬盘合并大小

纸扎戏偶

将两块空硬盘合并为“一块”,挂载到指定目录下,达到在一个目录使用3块硬盘所有空间的效果。

条件:

硬盘1 /dev/sda
硬盘2 /dev/sdb
硬盘3 /dev/sdc

方法:

创建pv

pvcreate /dev/sda   //硬盘1
pvcreate /dev/sdb   //硬盘2
pvcreate /dev/sdc   //硬盘3

创建vg

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

vgcreate LVM /dev/sda

扩展vg

//vgextend [自定义vg名称] [设备]
//使用硬盘2和硬盘3扩展vg

vgextend LVM /dev/sdb
vgextend LVM /dev/sdc

创建lv

// lvcreate -L[自定义分区大小] -n[自定义分区名称] [vg名称]
// 分区大小不能超过硬盘容量总和大小

lvcreate -L5.0T -nPiaoYun LVM

格式化分区

//mkfs -t [文件系统] [分区位置]

mkfs -t ext4 /dev/LVM/PiaoYun

挂载分区

//mount [分区位置] [目录地址]

mount /dev/LVM/PiaoYun /piaoyun.cc/PiaoYun

设置开机加载

在/etc/fstab文件末尾添加如下行。

/dev/LVM/PiaoYun /piaoyun.cc/PiaoYun ext4 defaults 1 2

其他相关阅读资料:
Centos LVM 创建 删除 扩大 缩小

新建LVM的过程
1.使用fdisk 新建分区 修改ID为8e
3.使用 pvcreate 创建 PV
4.使用 vgcreate 创建 VG
5.使用 lvcreate 创建 LV
6.格式化LV
7.挂载

示例过程:

1.查看磁盘情况
fdisk -l
lsblk

2.使用fdisk 新建分区 修改ID为8e 并更新
fdisk /dev/sdb
partprobe

3.使用 pvcreate 创建 PV (pvscan pvdisplay)
pvcreate /dev/sdb{5,6,7}

4.使用 vgcreate 创建 VG (vgscan vgdisplay pvscan)
vgcreate -s 16M testvg /dev/sdb{5,6,7}

5.使用 lvcreate 创建 LV (vgdisplay lsblk lvdisplay)
lvcreate -l 192 -n testlv testvg

6.格式化LV
mkfs -t ext4 /dev/testvg/testlv

7.挂载(mkdir df lsblk)
mount /dev/testvg/testlv /mnt/test

删除LVM的过程

1.先卸载系统上面的 LVM 文件系统 (包括快照与所有 LV)
2.使用 lvremove 移除 LV
3.使用 vgchange -a n VGname 让 VGname 这个 VG 不具有 Active 的标志
4.使用 vgremove 移除 VG
5.使用 pvremove 移除 PV
6.使用 fdisk 修改 ID 回来啊

示例过程:1,2,1,3,4,5,6,1,7

1.查看分区和磁盘情况
df -h
lsblk

2.卸载LVM 文件系统
umount /mnt/test
umount /mnt/test2

3.使用 lvremove 移除 LV ( lvscan lvdisplay )
lvremove /dev/testvg/testlv
lvremove /dev/testvg/test2lv

4.使用 vgchange -a n VGname 让 VGname 这个 VG 不具有 Active 的标志;
vgchange -a n testvg

5.使用 vgremove 移除 VG:(vgscan vgdisplay)
vgremove testvg

6.使用 pvremove 移除 PV (注意1 里面的lsblk 查看到的 )
pvremove /dev/sdb{5,6,7,8}

7.使用 fdisk 修改ID为82
fdisk /dev/sdb

8.更新
partprobe

放大 LV 容量的过程
1.用 fdisk 配置新的具有 8e system ID 的 partition
2.利用 pvcreate 建置 PV
3.利用 vgextend 将 PV 加入VG
4.利用 lvresize 将新加入的 PV 内的 PE 加入LV 中
5.透过 resize2fs 将文件系统的容量确实添加!

示例过程

1.查看磁盘情况
fdisk -l
lsblk

2.使用fdisk 新建分区 修改ID为8e 并更新
fdisk /dev/sdb
partprobe

3.使用 pvcreate 创建 PV (pvscan pvdisplay)
pvcreate /dev/sdb8

4.利用 vgextend 将 PV 加入VG (vgdisplay)
vgextend testvg /dev/sdb8

5.利用 lvresize 将新加入的 PV 内的 PE 加入LV 中(vgdisplay vgdisplay lvdisplay lsblk df )
lvresize -l +64 /dev/testvg/testlv

6.透过 resize2fs 将文件系统的容量确实添加( df )
resize2fs /dev/testvg/testlv

缩小LV容量的过程(抽取整块分区)

1.卸载
2.使用resize2f 直接降低LV的容量

示例过程

1.查看PV情况 (df lsblk)
pvdisplay
pvscan

2.卸载
umount /mnt/test

3.磁盘检测LV
e2fsck -f /dev/testvg/testlv

4.使用resize2fs 直接指定降低后的容量
resize2fs /dev/testvg/testlv 3G

5.重新挂载
mount /dev/testvg/testlv /mnt/test

6.使用lvresize 降低LV的容量 (pvscan pvdisplay )
pvdisplay
lvreszie -l -64 /dev/testvg/testlv

7.将要抽离的PV 的PE转移到 空闲PV中 (pvscan pvdisplay)
pvmove /dev/sdb5 /dev/sdb8

8.使用vgreduce 将PV移除VG
vgreduce testvg /dev/sdb5

9.使用pvremove 去除PV
pvremove /dev/sdb5

10.使用fdisk 修改ID
fdisk /dev/sdb

先缩小LV1容量,后增大LV2容量的过程(生产环境下的减小/home 增大/root)

1.卸载LV1
2.使用 e2fsck 检测一下LV1
3.使用resize2fs 重新定义LV1的大小
4.重新挂载,检验一下结果
5.使用lvreduce 或lvresize 减小LV1至指定大小
6.使用lvextend 增加LV2的大小
7.重新定义下LV2大小

示例过程

  1. 查看磁盘情况
  2. -l

df -h
lsblk

2.备份LV1的数据(mkdir tar mv )
mkdir /mnt/backup
tar -jcv -f /mnt/backup/test.tar.bz2 *

mv /mnt/test/* /mnt/backup/

3.卸载LV1 ()
umount /mnt/test

4.使用 e2fsck 检测一下LV1
e2fsck -f /dev/testvg/testlv

5.使用resize2fs 重新定义LV1的大小
resize2fs -p /dev/testvg/testlv 2G

6.重新挂载,检验一下结果
mount /dev/testvg/testlv /mnt/test
df -h

7.使用lvreduce 或lvresize 减小LV1至指定大小
lvresize -L 2G /dev/testvg/testlv

lvreduce -L 2G /dev/testvg/testlv

8.使用lvextend 增加LV2的大小
lvextend -l +100%FREE /dev/testvg/test2lv

lvextend -L +1G /dev/testvg/test2lv

9.重新定义下LV2大小
resize2fs -p /dev/testvg/test2lv

10.检查结果
df -h
lsblk

查看下其他的实例过程

mkdir /backup
mv /home/* /backup/
umount /home
lvremove /dev/centos/home
lvcreate -L 50G -n home cents
mkfs -t xfs /dev/centos/home
mv /backup/* /home/
lvextend -L +xxxG /dev/centos/root
xfs_growfs root
rm -rf /backup

缩小LV是先声明 resize2fs -p 后定义 lvresize -L 的过程
扩大LV是先定义 lvresize -L 后声明 resize2fs -p 的过程

缩下VG是移除空闲的PV的过程

相关资料:
Linux硬盘合并:
https://blog.csdn.net/walk_persuit/article/details/45037613
Centos LVM 创建 删除 扩大 缩小:
https://www.cnblogs.com/yunweis/p/8010554.html

文章版权声明:除非注明,否则均为我爱教程术原创文章,转载或复制请以超链接形式并注明出处。