LVM的诞生:

  由于传统的磁盘管理不能对磁盘进行磁盘管理,比如我把/dev/sdb1挂载到了/liu目录下,但是因为数据量过大的原因,此文件系统磁盘利用率已经高达98%,那么我可以直接对这个磁盘进行扩容吗?扩容的话又会丢数据吗?答案当然是不能直接扩充,会丢数据会影响业务的正常运转。因此才诞生了LVM技术,LVM技术最大的特点就是对磁盘进行动态管理。由于LVM的逻辑卷的大小更改可以进行动态调整,且不会出现丢失数据的情况。

LVM介绍:

  LVM(Logic Volume Manager)是逻辑卷管理的简称。它是Linux环境下对磁盘分区管理的一种机制。对于其他的的UNIX(AIX/HP/SUM)操作系统,以及Windows系统也有类似的磁盘管理软件。LVM管理的方式非常简单,就是通过将底层的物料磁盘抽象并封装起来,然后以逻辑的方式呈现给上层应用。

LVM的组成与概念:

  PE   physical extend   存储的基本单位,PE默认大小为4M。
  PV  physical volume   物理磁盘被格式化成PV
  VG  volume group   不同的PV加入同一个VG,VG相当于一个磁盘资源池
  LV  logic volume   LV使用VG的磁盘空间,由众多个PE组成,组成LV的PE可能来自不同磁盘,LV的扩充实际上就是增加或者加少PE的数 量,其过程不丢失数据。并且LV可以直接格式化使用。
 
创建LVM需要用到的命令:
 
  pvdisplay(查看详细信息)   或者  pvs  查看物理卷信息
  vgdisplay(查看详细信息)   或者  vgs  查看卷组信息
  lvdisplay(查看详细信息)   或者  lvs  查看逻辑卷信息
 
  pvcreat  将物理磁盘加入物理卷
    eg:pvcreat /dev/sdb /dev/sdc
  vgcreat  将物理卷加入卷组
    eg:vgcreat 卷组名 /dev/sdb /dev/sdc
  lvcreat  将卷组划分为不同的逻辑卷
    eg:lvcreat -n 逻辑卷名 -L 逻辑卷空间 卷组(从哪个卷组获取空间)
 
创建LVM的过程:
  1.挂载物理磁盘
  2.将物理磁盘加入物理卷
  3.将物理卷加入卷组
  4.将卷组中的磁盘资源划分成不同的逻辑卷
 
创建LVM逻辑卷的示例:
[root@centos-linux- dev]# pvs
PV VG Fmt Attr PSize PFree
/dev/sda2 centos lvm2 a-- <.00g 4.00m
[root@centos-linux- dev]# pvcreate /dev/sdb /dev/sdc
Physical volume "/dev/sdb" successfully created.
Physical volume "/dev/sdc" successfully created.
[root@centos-linux- dev]# pvs
PV VG Fmt Attr PSize PFree
/dev/sda2 centos lvm2 a-- <.00g 4.00m
/dev/sdb lvm2 --- 102.00m 102.00m
/dev/sdc lvm2 --- 102.00m 102.00m [root@centos-linux- dev]# vgs
VG #PV #LV #SN Attr VSize VFree
centos wz--n- <.00g 4.00m
[root@centos-linux- dev]# vgcreate lnlvm /dev/sdb /dev/sdc
Volume group "lnlvm" successfully created
[root@centos-linux- dev]# vgs
VG #PV #LV #SN Attr VSize VFree
centos wz--n- <.00g 4.00m
lnlvm wz--n- 200.00m 200.00m [root@centos-linux- dev]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
home centos -wi-ao---- <.01g
root centos -wi-ao---- .98g
swap centos -wi-ao---- .00g
[root@centos-linux- dev]# lvcreate -n lna -L 50M lnlvm
Rounding up size to full physical extent 52.00 MiB
WARNING: xfs signature detected on /dev/lnlvm/lna at offset . Wipe it? [y/n]: y
Wiping xfs signature on /dev/lnlvm/lna.
Logical volume "lna" created.
[root@centos-linux- dev]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
home centos -wi-ao---- <.01g
root centos -wi-ao---- .98g
swap centos -wi-ao---- .00g
lna lnlvm -wi-a----- 52.00m [root@centos-linux- dev]# mkfs.xfs /dev/lnlvm/lna
meta-data=/dev/lnlvm/lna isize= agcount=, agsize= blks
= sectsz= attr=, projid32bit=
= crc= finobt=, sparse=
data = bsize= blocks=, imaxpct=
= sunit= swidth= blks
naming =version bsize= ascii-ci= ftype=
log =internal log bsize= blocks=, version=
= sectsz= sunit= blks, lazy-count=
realtime =none extsz= blocks=, rtextents= [root@centos-linux- dev]# mkdir /liu && mount /dev/lnlvm/lna /liu
 
 

LVM的创建与挂载的更多相关文章

  1. lvm之创建/扩容/缩容/快照及关闭的全部流程操作记录

    基本介绍Linux用户安装Linux 操作系统时遇到的一个最常见的难以决定的问题就是如何正确地给评估各分区大小,以分配合适的硬盘空间.随着 Linux的逻辑盘卷管理功能的出现,这些问题都迎刃而解, l ...

  2. LVM的创建与管理

    LVM的创建与管理1.创建物理分区  fdisk 或者 parted 工具分区. LVM分区的类型ID为8e2.创建物理卷  pvcreate 磁盘分区或整个磁盘3.创建卷组  vgcreate 卷组 ...

  3. OpenStack Train版-15.创建并挂载存储卷

    1.创建并挂载存储卷 创建一个1GB的卷 source ~/demo-openrc openstack volume create --size 1 volume1 很短的时间后,卷状态应该从crea ...

  4. centos7中使用LVM管理磁盘和挂载磁盘

    centos7使用LVM管理一块新的磁盘 注意!文中凡是带#的都是命令标志. 一些重要概念: LV(Logical Volume)- 逻辑卷, VG(Volumne Group)- 卷组, PV(Ph ...

  5. LVM的创建及管理

    创建及管理LVM分区. Lvm(logical  volume  manager)逻辑卷管理 作用:动态调整磁盘容量,提高磁盘管理的灵活性. 注意:/boot分区用于存放引导文件,不能基于LVM创建. ...

  6. 1.1 关于LVM的创建、删除、扩容和缩减

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

  7. lvm分区创建和扩容

    shell> fdisk /dev/xvdb #### 选择磁盘 Command (m for help): m #### 帮助 Command action a toggle a bootab ...

  8. LVM磁盘创建与扩容

    以虚拟机为例 1.在虚拟机上添加新磁盘,点击虚拟机→设置->添加,最后如下图. 2.进入系统fdisk -l,查看当前磁盘信息 [root@master shell]# fdisk -l Dis ...

  9. linux下磁盘进行分区、文件系统创建、挂载和卸载

    任务的原因:由于,刚购买来的服务器需要将磁盘挂载到操作系统上,为了挂载磁盘首先要对磁盘进行分区,然后进行文件系统的创建,最后将磁盘挂载到操作系统上的某个目录. MBR(Master Boot Reco ...

随机推荐

  1. java中端口号被占用的解决办法

    第一步,命令提示符号,执行命令:netstat -ano 可见,占用1099端口的进程的PID是10460. 第二步,命令提示符号,执行命令:tasklist(通过pid 10460定位) 可见,该占 ...

  2. 【Django】遇到的问题

    目前的Django版本是Django version 2.0.4 Python使用的版本是Python 3.6.4 以下会将遇到的问题和各种报错信息记录 报错信息:NameError: name 'u ...

  3. npx命令

    npx命令 查了一下, 英文资料: https://www.npmjs.com/package/npx 中文资料: 什么是npx 第一次看到npx命令是在 babel 的文档里 Note: If yo ...

  4. Java String 字符串截取和获取文件的上级目录

    public String test() { String root = ServletActionContext.getServletContext().getRealPath("/&qu ...

  5. Python-基础-day6

    1.二进制 前言:计算机一共就能做两件事:计算和通信 2.字符编码 生活中的数字要想让计算机理解就必须转换成二进制.十进制到二进制的转换只能解决计算机理解数字的问题,那么文字要怎么让计算机理解呢? 于 ...

  6. 表单标签 fieldset legent

    书写表单时可以提供简单样式的标签 <fieldset> <legent></legent> <input type="text" > ...

  7. java类的属性

    类的嵌套!!!!!!!!!! 首先我们创建一个学生卡卡号的一个类,这个类有两个属性,校园卡号和银行卡号 package cuteSnow; public class StudentCard { pub ...

  8. java中new一个对象的执行过程及类的加载顺序

    1,new一个对象时代码的执行顺序 (1)加载父类(以下序号相同,表明初始化是按代码从上到下的顺序来的) 1.为父类的静态属性分配空间并赋于初值 1.执行父类静态初始化块; (2)加载子类 2.为子类 ...

  9. 创业笔记-Node.js入门之一个完整的基于Node.js的web应用

    用例 我们来把目标设定得简单点,不过也要够实际才行: 用户可以通过浏览器使用我们的应用. 当用户请求http://domain/start时,可以看到一个欢迎页面,页面上有一个文件上传的表单. 用户可 ...

  10. [ReactVR] Render Custom 3D Objects Using the Model Component in React VR

    React VR isn't limited to simple 3D primitives. By using the <Model/> Component we can place a ...