Linux系统的基本存储管理
)
1. LVM(逻辑卷管理)
1.1基本概念
这里所说的逻辑卷可以理解为上面提到的榨汁机,下面介绍几个相关的概念:
pv 物理卷 ,被处理过的物理分区
pe 物理扩展,设定存储最小单元
vg 物理卷组,捆绑pv到一个组中
lv 逻辑卷,分配最终的使用设备
1.2 LVM建立步骤
1.建立物理分区并设定分区type为lvm(具体如何设定上篇文章中已有说明,这里不再详细说)
2.pvcreate /dev/设备名 %创建pv
3.vgcreate westosvg -s 2M /dev/设备名 %创建vg,-s设定pe大小位2M
4.lvcreate -L 100M -n westoslv westosvg %创建lvm,-L指定大小 -n指定名称
5.mkfs.xfs /dev/mapper/westosvg-westoslv %格式化
6.mount /dev/westosvg/westoslv /指定挂载目录/ %挂载
1.3 LVM拉伸
1.当vg中的容量充足
lvextend -L 200M /dev/mapper/westosvg-westoslv %拉伸设备
xfs_growfs /指定挂载目录/ %拉伸文件系统
resize2fs /dev/mapper/westosvg-westoslv %当文件系统为ext时使用此命令
2.当vg中的容量不足
划分分区
pvcreate /dev/设备名
vgextend westosvg /dev/设备名
lvextend -L 2500M /dev/westosvg/westoslv %指定扩展大小
xfs_growfs /指定挂载目录/ %拉伸文件系统
1.4 快照建立步骤
类似虚拟机快照,这里建立的快照可以用于恢复设备信息,快照建立后读文件在快照上执行,写在硬盘上执行。
cd /westos (在LVM设备挂载状态下切换)
ls
touch file{1..5}
ls
[root@localhost westos]# cd
[root@localhost ~]# lvcreate -L 50M -n westoslv-bak -s /dev/westosvg/westoslv
[root@localhost ~]# mount /dev/westosvg/westoslv-bak /westos
[root@localhost ~]# cd /westos
[root@localhost westos]# ls
[root@localhost westos]# rm -rf *
[root@localhost westos]# ls
[root@localhost westos]# cd
[root@localhost ~]# umount /westos
[root@localhost ~]# lvremove /dev/westosvg/westoslv-bak
[root@localhost ~]# lvcreate -L 50M -n westoslv-bak -s /dev/westosvg/westoslv
[root@localhost ~]# mount /dev/westosvg/westoslv-bak /westos/
[root@localhost ~]# cd /westos
[root@localhost westos]# ls
file
1.5 LVM缩减
mkfs.ext4 /dev/westosvg/westoslv %xfs文件系统不支持缩减ext文件系统可以,因此需要先将其文件系统格式化为ext4格式
resize2fs /dev/mapper/westosvg-westoslv %ext4文件系统拉伸
缩减步骤:
umount /指定挂载目录 %卸载
e2fsck -f /dev/westosvg/westoslv %扫描文件
resize2fs /dev/westosvg/westoslv 1500M %文件系统拉伸
lvreduce -L 1500M /dev/westosvg/westoslv %LV缩减
mount /dev/westosvg/westoslv /指定挂载目录/ %挂载
vgreduce westosvg /dev/设备名 %vg缩减
1.6 LVM删除
umount /dev/mapper/westosvg-westoslv %卸载
lvremove /dev/westosvg/westoslv %删除lv
vgremove westosvg %删除vg
pvremove /dev/设备名 %删除pv
2. Vdo(虚拟数据优化器)
2.1 vdo设备的建立
vdo create --name=vdo设备名 --device=/dev/设备名(硬盘)
vdo status --name=vdo设备名 | less
Deduplication: enabled %vdo检测并删除重复数据的功能时开启的
Compression: enabled %vdo数据压缩功能开启
2.2vdo设备的使用
mkfs.xfs -K /dev/mapper/vdo设备名 %格式化vdo设备的文件系统为xfs
mkdir /指定目录 %创建一个目录用于挂载vdo设备
mount /dev/mapper/vdo设备名 /指定目录 %挂载vdo设备到指定目录
2.3 测试vdo设备
(1)vdostats --human-readable %查看vdo设备信息如下所示
Device Size Used Available Use% Space saving%
/dev/mapper/vdo设备名 20.0G 4.0G 16.0G 20% 98%
(2)多次复制同一文件到vdo设备中,发现从第二次往后复制时间明显缩短,并且vdo设备中的所占内存基本不增加
cp /xxxx /xxxx /xxxx /vdo设备名/
vdostats --human-readable
Device Size Used Available Use% Space saving%
/dev/mapper/vdo设备名 20.0G 4.4G 15.6G 22% 2%
cp /xxxx /xxxx /xxxx /vdo设备名/
vdostats --human-readable
Device Size Used Available Use% Space saving%
/dev/mapper/vdo设备名 20.0G 4.5G 15.5G 22% 50
2.4 vdo设备的删除
vdo remove --name=vdo设备名 %删除vdo设备