数据压缩与管理:掌握Linux VDO和LVM的力量

news2024/12/25 9:22:36

1.逻辑卷(LVM,Logical Volume Management)

动态的为服务器磁盘添加空间,而不会影响原磁盘的数据,也不需要对原始磁盘重新分区。

1.1 LVM介绍

以下是LVM的示意图:
在这里插入图片描述

  1. 我们拿到一块硬盘后首先对齐进行划分分区,也就得到上图所示的真实物理分区。
  2. 下来我们需要对物理分区进行处理,将其变为物理卷PV,其中包含许多基本单位物理扩展Pe
  3. 接着,我们将多个不同的pv捆绑到一个组中形成逻辑卷组
  4. 下来,直接从逻辑卷组中获得想使用的空间放到逻辑卷LV中
  5. LV可以被直接挂载使用

1.2 LVM设备建立

  1. 真实物理分区建立

在这里插入图片描述

2.建立pv

watch -n 1 "pvs;echo ====;vgs;echo =====;lvs;echo =====;df -h /fff" #实时监控相应的信息
pvcreate /dev/sdb3 # 创建PV

在这里插入图片描述

  1. 建立vg
vgcreate -s 4M sxl_vg /dev/sdb3

在这里插入图片描述

  1. 建立lv
lvcreate -L 100M -n sxl_lv sxl_vg # lv空间为100M,命名为sxl_lv,从sxl_vg取得的空间

在这里插入图片描述

  1. lv空间挂载
mkfs.xfs /dev/sxl_vg/sxl_lv # 格式化分出来的逻辑空间
mount /dev/sxl_vg/sxl_lv /fff # 挂载

在这里插入图片描述

1.3 LVM空间拉伸

以下操作动态进行,而不会影响原始数据

lvextend -L 200M /dev/sxl_vg/sxl_lv # 空间大小拉伸
xfs_growfs /fff # 格式化拉伸

在这里插入图片描述

1.4 LVM空间不足

建立新的pv,扩充vg,拉伸lv

pvcreate /dev/sdb4 # 建立新的pv
vgextend sxl_vg /dev/sdb4 #扩充vg
lvextend -L 2500M /dev/sxl_vg/sxl_lv # 拉伸lv

在这里插入图片描述

1.5 LVM缩减

xfs格式文件不支持缩减,需要使用ext4文件格式才可以缩减。
注意下面格式化,会丢失原有数据
在这里插入图片描述

umount /fff # 卸载挂载
e2fsck -f /dev/sxl_vg/sxl_lv # 扫描分区,保证下面缩减空间不能小于已经使用的空间
resize2fs /dev/sxl_vg/sxl_lv 500M # 缩减空间
lvreduce -L 500M /dev/sxl_vg/sxl_lv # 重新缩减LV
mount /dev/sxl_vg/sxl_lv /fff # 挂载

在这里插入图片描述

1.6 PV缩减

pvmove /dev/sdb3 /dev/sdb4 # 移动/dev/sdb3到/dev/sdb4
vgreduce sxl_vg /dev/sdb3 # 去掉VG中的/dev/sdb3 PV
pvremove /dev/sdb3 # 永久删除/dev/sdb3 PV

在这里插入图片描述

1.7 LVM快照

lvcreate -L 100M -n sxl_lvbackup -s /dev/sxl_vg/sxl_lv # sxl_lvbackup快照名字 /dev/sxl_vg/sxl_lv被映射的原LV
mount /dev/sxl_vg/sxl_lvbackup /fff # 挂载快照

在这里插入图片描述

1.8 LVM删除

umount /fff
lvremove /dev/sxl_vg/sxl_lv # 删除LV
vgremove sxl_vg # 删除VG
pvremove /dev/sdb4 # 删除PV

在这里插入图片描述

2.虚拟数据优化器vdo(Virtual Data Optimize)

2.1 vdo介绍

1、压缩数据
2、存相同内容的文件,对于重复的数据优化

2.1 vdo建立

  1. 首先保证是未被使用的磁盘
  2. 安装vdo服务
dnf install vdo -y

在这里插入图片描述

  1. 创建vdo
vdo create --name=sxl_vdo --device=/dev/sdc

在这里插入图片描述

  1. 查看vdo相关信息
vdostats --human-readable # 查看vdo使用情况
vdo status --name=sxl_vdo | less  # 查看vdo配置信息
Deduplication: enabled ##vdo检测并删除重复数据的功能时开启的
Compression: enabled ##vdo数据压缩功能开启

在这里插入图片描述
在这里插入图片描述

2.3 vdo使用

2.3.1 挂载

mkfs.xfs -K /dev/mapper/sxl_vdo # 格式化创建的vdo设备
mount /dev/mapper/sxl_vdo /fff # 挂载

在这里插入图片描述

2.3.2 测试功能

在这里插入图片描述

2.4 vdo开机自启动挂载

/etc/fstab
/dev/mapper/sxl_vdo	  /fff  xfs defaults,x-systemd.requires=vdo.service 0 0

在这里插入图片描述

2.5 vdo删除

umount /fff
vdo stop --name sxl_vdo # 停用
vdo remove --name sxl_vdo # 移除

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1067126.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Web:前端常用的几种Http请求GET和POST样例

1、简述 在Web开发过程中,少不了发起Http请求服务端的接口数据,在不同的框架中使用了不同的Http请求方式,常用的请求有fetch、 ajax、 axios、XMLHttpRequest、request,以下样例仅供参考。 2、Fetch Fetch API 是一种 JavaScr…

Redis的五种常用数据类型

1.字符串 String的数据结构是简单的Key-Value模型,Value可以是字符串,也可以是数字。 String是Redis最基本的类型,是二进制安全的,意味着Redis的string可以包含任何数据,比如jpg图片。 一个redis中字符串value最大是…

光伏系统MPPT、恒功率控制切换Simulink仿真

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

从0开始学go第五天

gin框架返回JSON package mainimport ("net/http""github.com/gin-gonic/gin" )func main() {r : gin.Default()r.GET("/json", func(c *gin.Context) {//用map序列化//方法一:用map,后面用接口类型// data : map[string…

电视盒子什么品牌好?内行分享权威电视盒子品牌排行榜

因工作关系每天都会接触到各种类型的电视盒子,对整个行业可以说了如指掌,身边朋友们在挑选电视盒子时也会问我电视盒子什么品牌好,哪些电视盒子值得入手,今天我来分享业内公认最权威的电视盒子品牌排行榜: TOP 1.泰捷超…

使用 labelImg 制作YOLO系列目标检测数据集(.xml文件)

文章转载自K同学,谨防原文失效 第一步: WIN键R 输入cmd 打开命令行窗口 第二步: 在命令行窗口中输入pip3 install labelImg,安装 labelImg 第三步: 输入labelImg 打开labelImg窗口 第四步: ✨ 标注小技巧…

Edge浏览器无法下载RP插件问题解决方案

1、进入本地C:\Windows\System32\drivers\etc 2、编辑hosts文件,在最后结尾加入以下内容 131.253.33.219 edge.microsoft.com 131.253.33.219 msedgeextensions.sf.tlu.dl.delivery.mp.microsoft.com3、进入 https://microsoftedge.microsoft.com/addons/search/RP…

背靠背 HVDC-MMC模块化多电平转换器输电系统-用于无源网络系统的电能质量调节(Simulink仿真实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

网络安全——黑客自学(笔记)

想自学网络安全(黑客技术)首先你得了解什么是网络安全!什么是黑客!!! 网络安全可以基于攻击和防御视角来分类,我们经常听到的 “红队”、“渗透测试” 等就是研究攻击技术,而“蓝队…

【技术干货】如何通过 DP 实现支持经典蓝牙的联网单品设备与 App 配对

经典蓝牙模块(Classic Bluetooth)主要用于呼叫和音频传输,所以经典蓝牙最主要的特点就是功耗大,传输数据量大。蓝牙耳机、蓝牙音箱等场景大多采用经典蓝牙,因为蓝牙是为传输声音而设计的,是短距离音频传输的…

【ORM】浅聊C#和Java的ORM底层框架

给自己一个目标,然后坚持一段时间,总会有收获和感悟! 国庆假期马上结束,闲暇时间,突然对Ado.Net这个词的由来感兴趣,然后就一顿复习了一遍,顺便也了解了下java关于ORM框架的底层是什么&#xff…

隐式转换导致慢sql引起的性能问题

背景: 环境上有个接口压测吞读量一直上不去,该接口的逻辑大概是查询我方数据库2个表,然后调用外围2个接口 分析过程: 1.问题1(gap时间) a. 查看调用链发现调用链存在大量gap时间,这种gap时间一般就是资源没了,比如等待获取连接池,或者gc回收等待,归根接底都是…

数据结构----结构--非线性结构--图

数据结构----结构–非线性结构–图 一.图(Graph) 1.图的结构 图是多对多的结构 2.图的基本概念 图的基本概念为G(V,E) V是顶点的集合 E是边的集合 G是图 一个图其实是顶点和边的二元组合 观察下图,思考V和E集合中的元素分别都是什么 V{V1,V2,V…

一篇理解http协议

一、http协议。 HTTP(Hypertext Transfer Protocol,超文本传输协议)是一种在Web中广泛使用的应用层协议,它定义了客户端和服务器之间的通信规则,简化了Web应用程序的开发和交互过程。其实传输是由TCP协议完成的。 HT…

【window10】Dart+Android Studio+Flutter安装及运行

安装Dart SDK安装Android Studio安装Flutter在Android Studio中创建并运行Flutter项目 安装前,请配置好你的jdk环境,准备好你的梯子~ 安装Dart SDK 浅浅了解一下Dart: Dart 诞生于2011年,是由谷歌开发的一种强类型、跨平台的客户…

苹果爆出台积电及三星3纳米制程良率远低于60% | 百能云芯

韩媒消息指出,台积电和三星的3纳米制程良率都未超过60%,远低于吸引硬件供应商所需的水准。韩媒近期不断炒作iPhone 15系列过热与台积电3纳米芯片技术有关,但苹果已澄清该问题主要是iOS 17操作系统漏洞及第三方应用程序所造成。 三星是第一家开…

强化学习------Sarsa算法

简介 SARSA(State-Action-Reward-State-Action)是一个学习马尔可夫决策过程策略的算法,通常应用于机器学习和强化学习学习领域中。它由Rummery 和 Niranjan在技术论文“Modified Connectionist Q-Learning(MCQL)” 中…

ueditor

下载文件在文件夹下npm install 安装依赖(如果没有安装 grunt , 请先在全局安装 grunt) 在文件下载目录下 npm install3. 在终端执行 grunt default grunt default

P1014 [NOIP1999 普及组] Cantor 表

#include <bits/stdc.h> using namespace std; int main() {int n,k1;cin>>n;while (n>k) {nn-k;k;}if(k%20) cout<<n<<"/"<<(k1-n);else cout<<k1-n<<"/"<<n;return 0; }

Angular学习笔记:路由

本文是自己的学习笔记&#xff0c;主要参考资料如下。 - B站《Angular全套实战教程》&#xff0c;达内官方账号制作&#xff0c;https://www.bilibili.com/video/BV1i741157Fj?https://www.bilibili.com/video/BV1R54y1J75g/?p32&vd_sourceab2511a81f5c634b6416d4cc1067…