Linux基础-虚拟数据优化器VDO

本文介绍了Linux VDO(Virtual Data Optimizer)的原理、安装与配置,包括卷的创建、格式化、挂载、去重和压缩功能,以及如何管理和操作VDO卷,帮助读者掌握这一磁盘空间优化技术。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

‍‍🏡博客主页:  Passerby_Wang的博客_CSDN博客-系统运维,云计算,Git学习笔记领域博主

🌐所属专栏:『Linux基础』

🌌上期文章:  Linux基础-LVM逻辑卷管理

📰如觉得博主文章写的不错或对你有所帮助的话,还望大家多多支持呀! 关注、点赞、收藏、评论。

目录

一、VDO简介

二、制作VDO卷

1、安装程序

1)命令

2)实例

2、启动vdo

3、创建vdo卷

1)命令

2)命令

4、查看vdo卷

1)命令

2)实例

4、格式化vdo卷

1)命令

2)实例

5、挂载

1)命令

2)实例

6、验证

1)命令

2)实例

7、删除vdo卷

1)命令

2)实例

三、VDO卷相关功能

1、去重功能

1)命令

2)实例

2、压缩功能

1)命令

2)实例


一、VDO简介

  VDO全称Virtual Data Optimizer(虚拟数据优化器),是一个内核模块,目的是通过重删减少磁盘的空间占用,以及减少复制带宽。VDO是基于块设备层之上的,也就是在原设备基础上映射出虚拟设备,可以直接使用。

       重复数据删除功能:输入的数据会判断是不是冗余数据,判断为重复数据的部分不会被写入,然后对源数据进行更新,直接指向原始已经存储的数据块。

        压缩功能:对每个单独的数据块进行处理

二、制作VDO卷

配置好yum源,准备一个空闲分区sbd1(容量5G)

1、安装程序

1)命令

yum -y install kmod-kvdo vdo

2)实例

[root@wangwu ~]# yum -y install kmod-kvdo vdo

Loaded plugins: fastestmirror, langpacks

Loading mirror speeds from cached hostfile

... ... ...

Complete!

2、启动vdo

systemctl start vdo #启动vdo

systemctl enable vdo #设置开机自启

3、创建vdo卷

1)命令

vdo create --name=wangwuvdo --device=/dev/sdb1 --vdoLogicalSize=15G

# --name=VD0卷名称

# --device=设备路径

# --vdoLogicalSize=逻辑大小

#逻辑大小一般采用物理容量的1.5 - 3倍,这里选物理容量的3倍

2)命令

[root@wangwu ~]# vdo create --name=wangwuvdo --device=/dev/sdb1 --vdoLogicalSize=15G

Creating VDO wangwuvdo

Starting VDO wangwuvdo

Starting compression on VDO wangwuvdo

VDO instance 0 volume is ready at /dev/mapper/wangwuvdo

4、查看vdo卷

1)命令

vdo list #查看vdo卷

vdo status-n VDO卷名称 #查看vdo卷状态

vdostats --human-readable #查看vdo空间容量(物理容量)

2)实例

[root@wangwu ~]# vdo list

wangwuvdo
[root@wangwu ~]# vdo status -n wangwuvdo

VDO status:

  Date: '... ... ...'

  Node: wangwu

Kernel module:

  Loaded: true

  Name: kvdo

... ... ...
[root@wangwu ~]# vdostats --human-readable

Device                    Size      Used Available Use% Space saving%

/dev/mapper/wangwuvdo      5.0G      3.0G      2.0G  60%           N/A

4、格式化vdo卷

1)命令

VDO卷的快速格式化(跳过去重分析,这里提供两种格式化方案,按需选择):

mkfs.xfs -K /dev/mapper/wangwuvdo                #格式化为xfs文件格式

mkfs.ext4 -E nodiscard /dev/mapper/wangwuvdo     #格式化为ext4文件格式

2)实例

[root@wangwu ~]# mkfs.ext4 -E nodiscard /dev/mapper/wangwuvdo

mke2fs 1.42.9 (28-Dec-2013)

Filesystem label=

OS type: Linux

... ... ...

Writing superblocks and filesystem accounting information: done

5、挂载

1)命令

临时挂载

mkdir /mnt/wangwuvdo #创建挂载目录

mount /dev/mapper/wangwuvdo /mnt/wangwuvdo #挂载

开机自动挂载

vim /etc/fstab

/dev/mapper/wangwuvdo /mnt/wangwuvdo ext4 defaults,_netdev  0 0

mount -a #重新加载/etc/fstab文件,测试文件是否正常运行

2)实例

临时挂载

[root@wangwu ~]# mkdir /mnt/wangwuvdo

[root@wangwu ~]# mount /dev/mapper/wangwuvdo /mnt/wangwuvdo/

mount: /dev/mapper/wangwuvdo is already mounted or /mnt/wangwuvdo busy

       /dev/mapper/wangwuvdo is already mounted on /mnt/wangwuvdo

开机自动挂载

[root@wangwu ~]# vim /etc/fstab

/dev/mapper/wangwuvdo /mnt/wangwuvdo ext4 defaults,_netdev  0 0

[root@wangwu ~]# mount -a

6、验证

1)命令

echo 'wo shi wang wu!' > /wangwu.txt #创建测试文件

cat /wangwu.txt #查看测试文件

cp /wangwu.txt /mnt/wangwuvdo/ #拷贝测试文件到vdo

vdostats --human-readable #查看vdo空间容量(物理容量)
mv /wangwu.txt /mnt/wangwuvdo/wangwu1.txt #移动测试文件到vdo并重命名

vdostats --human-readable #查看vdo空间容量(物理容量)

ll /mnt/wangwuvdo/ #查看两个文件是否存在

2)实例

[root@wangwu ~]# echo 'wo shi wang wu!' > /wangwu.txt

[root@wangwu ~]# cat /wangwu.txt

wo shi wang wu!

[root@wangwu ~]# cp /wangwu.txt /mnt/wangwuvdo/

[root@wangwu ~]# vdostats --human-readable

Device                    Size      Used Available Use% Space saving%

/dev/mapper/wangwuvdo      5.0G      3.0G      2.0G  60%           99%
[root@wangwu ~]# mv /wangwu.txt /mnt/wangwuvdo/wangwu1.txt

[root@wangwu ~]# vdostats --human-readable

Device                    Size      Used Available Use% Space saving%

/dev/mapper/wangwuvdo      5.0G      3.0G      2.0G  60%           99%

[root@wangwu ~]# ll /mnt/wangwuvdo/

total 24

drwx------. 2 root root 16384 Aug  3 17:40 lost+found

-rw-r--r--. 1 root root    16 Aug  3 17:50 wangwu1.txt

-rw-r--r--. 1 root root    16 Aug  3 17:51 wangwu.txt

#结论:各位博友会发现传一个相同的文件,但是空间并不会发生变化。

7、删除vdo

1)命令

vdo remove –n vdo卷名称 #删除vod卷

vdo remove -f –n vdo卷名称 #强制删除

2)实例

[root@wangwu ~]# vdo list #查看vdo卷

wangwuvdo

[root@wangwu ~]# umount /dev/mapper/wangwuvdo #卸载挂载目录

[root@wangwu ~]# vdo stop -n wangwuvdo #停止vdo卷

Stopping VDO wangwuvdo

[root@wangwu ~]# vdo remove -n wangwuvdo #删除vdo卷

Removing VDO wangwuvdo

Stopping VDO wangwuvdo

[root@wangwu ~]# vdo list #再次查看vdo卷,没有显示说明删除成功

三、VDO卷相关功能

1、去重功能

1)命令

vdo disableDeduplication --name= vdo卷名称 #禁用去重功能

vdo enableDeduplication --name=vdo卷名称 #开启去重功能

2)实例

[root@wangwu ~]# vdo enableDeduplication -n=wangwuvdo

Enabling deduplication on VDO wangwuvdo

[root@wangwu ~]# vdo disableDeduplication -n wangwuvdo

Disabling deduplication on VDO wangwuvdo

2、压缩功能

1)命令

vdo disableCompression -n vdo卷名称 #禁用压缩功能

vdo enableCompression -n vdo卷名称 #开启压缩功能

2)实例

[root@wangwu ~]# vdo disableCompression -n wangwuvdo

Disabling compression on VDO wangwuvdo

Stopping compression on VDO wangwuvdo

[root@wangwu ~]# vdo enableCompression -n wangwuvdo

Enabling compression on VDO wangwuvdo

Starting compression on VDO wangwuvdo
评论 96
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Passerby_Wang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值