lvm的基本创建

这篇文章主要讲述lvm的基本术语,以及如何创建lvm。

由于传统分区的乏方式带来的诸多问题:如我们碰到当分区大小不足的时候,只能通过增加新的硬盘,然后对新的硬盘进行分区、格式化后,将之前分区的所有数据都拷贝到新的分区里面,在生产环境,这是不能接受的,对于服务器我们要求7*24小时不间断运行,如果卸载分区,然后拷贝数据,服务势必受到影响,这种损失无法承担;另外,如果分区数据非常多,又会耗费相当长的时间;诸多限制,从而诞生了lvm

LVM: (Logical Volume Manager),逻辑卷管理,可以实现在线调整分区大小。

基本术语

pv(physical volume)-物理卷

可以是一个分区或者一块硬盘,设备名不变,相当于贴标签

vg(Volume Group)- 卷组

由一个或者多个pv组成的一个逻辑空间,设备名自定义,后期可动态添加pv来调整容量大小

lv (Logical Volume)- 逻辑卷

逻辑卷建立在卷组之上,即在卷组上划分的一段空间,设备名自定义,可根据卷组的大小实现在线扩展或者缩减

PE (Physical Extend) 物理拓展

PE就是我们逻辑卷管理的最基本单位,默认大小是4M大小,可以在创建卷组的时候自定义大小

LE (logical extent) 逻辑拓展

等同于PE,不过是在逻辑卷中成为LE

工作原理

  1. 物理磁盘被格式化为PV,空间被划分为一个个的PE
  2. 将不同的PV加入到同一个VG中,不同PV的PE全部进入到了VG的PE池内
  3. 在VG上创建LV,本质LV是基于PE创建的,大小为PE的整数倍
  4. 对LV进行创建文件系统并挂载使用
  5. LV的扩充缩减实际上就是增加或减少组成该LV的PE数量,其过程不会丢失原始数据

管理工具

pv:
查看pv信息:
pvs   pvdisplay
创建pv:
pvcreate /dev/DEVICE

vg:
查看vg:
vgs  vgdisplay
创建vg:
vgcreate [-s PE size] vgName  pvName [pvName...]
管理vg:
vgextend  vgName pvName
vgreduce  vgName pvName
删除vg:
pvmove————> vgremove

lv:
真设备名:/dev/dm-#
软链接:/dev/mapper/vgName-lvName
        /dev/vgName/lvName
查看lv:
lvs  lvdisplay
创建lv:
lvcreate -L #[mMgGtT] -n  lvName  vgName    ###直接指定lv大小
lvcreate -l 60%VG     -n  lvName  vgName    ###占vg百分比的方式指定lv大小
lvcreate -l 100%FREE  -n  lvName  vgName    ###使用vg全部剩余空间指定
删除lv:
lvremove  /dev/vgName/lvName
重设文件系统大小:
ext系列:resize2fs   [能扩展能缩减]
xfs系列:            [只能扩展]

使用lvm

准备工作:

新增两块硬盘或者分区,重启识别;我这里已经提前准备了几块20G的硬盘。

[[email protected] ~ ]# lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda      8:0    0  200G  0 disk
├─sda1   8:1    0    1G  0 part /boot
├─sda2   8:2    0   50G  0 part /
├─sda3   8:3    0   30G  0 part /data
├─sda4   8:4    0    1K  0 part
└─sda5   8:5    0    3G  0 part [SWAP]
sdb      8:16   0   20G  0 disk
sdc      8:32   0   20G  0 disk
sdd      8:48   0   20G  0 disk
sde      8:64   0   20G  0 disk
sr0     11:0    1  8.8G  0 rom

创建pv:

注意:不建议对整个磁盘做PV初始化,建议使用分区(分区id调整为8e)
步骤1:分区并和设置分区类型

对/dev/sdb和/dev/sdc分别划分两个分区,大小为1G和2G
[[email protected] ~ ]#fdisk -l /dev/sd{b,c}

Disk /dev/sdb: 21.5 GB, 21474836480 bytes, 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x5250ed1c

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048     2099199     1048576   8e  Linux LVM
/dev/sdb2         2099200     6293503     2097152   8e  Linux LVM

Disk /dev/sdc: 21.5 GB, 21474836480 bytes, 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0xf15ae421

   Device Boot      Start         End      Blocks   Id  System
/dev/sdc1            2048     2099199     1048576   8e  Linux LVM
/dev/sdc2         2099200     6293503     2097152   8e  Linux LVM

步骤2:创建pv

[[email protected] ~ ]#pvcreate /dev/sd{b,c}{1,2}
  Physical volume "/dev/sdb1" successfully created.
  Physical volume "/dev/sdb2" successfully created.
  Physical volume "/dev/sdc1" successfully created.
  Physical volume "/dev/sdc2" successfully created.

步骤3:查看pv信息

[[email protected] ~ ]#pvs
  PV         VG Fmt  Attr PSize PFree
  /dev/sdb1     lvm2 ---  1.00g 1.00g
  /dev/sdb2     lvm2 ---  2.00g 2.00g
  /dev/sdc1     lvm2 ---  1.00g 1.00g
  /dev/sdc2     lvm2 ---  2.00g 2.00g

[[email protected] ~ ]#pvdisplay
  "/dev/sdb2" is a new physical volume of "2.00 GiB"
  --- NEW Physical volume ---
  PV Name               /dev/sdb2
  VG Name                               ##显示为空,表示是孤立的设备,不属于任何卷组
  PV Size               2.00 GiB
  Allocatable           NO
  PE Size               0               ## PE大小未指定,在创建vg时才能指定
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               Gc3f6r-gTjL-aG1w-Rn2P-zYGS-Iw0E-D7D8La     ##注意:这里的UUID和文件系统的UUID不同,对比下面的blkid命令发现,已经显示为lvm成员,但是并没有显示文件系统;

 [[email protected] ~ ]#blkid
/dev/sda1: UUID="85313710-7117-4f9a-8b4b-a76fb36b7658" TYPE="xfs"
/dev/sda2: UUID="04d49ea8-1c42-4f88-9a0f-cfd5a7dae610" TYPE="xfs"
/dev/sda3: UUID="4e25d8dd-0f3d-40b3-8dc9-99fad70cfbf0" TYPE="xfs"
/dev/sda5: UUID="68f083ae-dcb4-4536-89b8-f5fda10ea7fc" TYPE="swap"
/dev/sdb1: UUID="e1wvwN-y6Sz-tDye-2hPt-3iIq-CShq-mAyxjc" TYPE="LVM2_member"
/dev/sdb2: UUID="Gc3f6r-gTjL-aG1w-Rn2P-zYGS-Iw0E-D7D8La" TYPE="LVM2_member"
/dev/sdc1: UUID="kwKous-XzVG-h9xY-b217-pwWd-yYS7-tycYae" TYPE="LVM2_member"
/dev/sdc2: UUID="kkVrLQ-pQSK-eTzs-aktd-tMWa-ChHk-4qkWES" TYPE="LVM2_member"
/dev/sr0: UUID="2018-05-07-12-53-47-00" LABEL="CentOS 7 x86_64" TYPE="iso9660" PT 

......

vg创建:

步骤1:

[[email protected] ~ ]#vgcreate vg0 -s 16M /dev/sd{b,c}{1,2}  ##-s指定PE大小
  Volume group "vg0" successfully created

步骤2:查看vg信息

[[email protected] ~ ]#vgs
  VG  #PV #LV #SN Attr   VSize  VFree
  vg0   4   0   0 wz--n- <5.94g <5.94g
[[email protected] ~ ]#vgdisplay
  --- Volume group ---
  VG Name               vg0
  System ID
  Format                lvm2
  Metadata Areas        4
  Metadata Sequence No  1
  VG Access             read/write             ##权限为可读可写
  VG Status             resizable
  MAX LV                0
  Cur LV                0
  Open LV               0
  Max PV                0
  Cur PV                4
  Act PV                4
  VG Size               <5.94 GiB
  PE Size               16.00 MiB               ##PE大小
  Total PE              380
  Alloc PE / Size       0 / 0                   ##已使用的PE
  Free  PE / Size       380 / <5.94 GiB         ##空闲的PE
    VG UUID               0PV32k-u0PM-0wh5-VyWR-A5qD-ERXa-2VPEiJ

[[email protected] ~ ]#pvs
  PV         VG  Fmt  Attr PSize    PFree
  /dev/sdb1  vg0 lvm2 a--  1008.00m 1008.00m
  /dev/sdb2  vg0 lvm2 a--     1.98g    1.98g
  /dev/sdc1  vg0 lvm2 a--  1008.00m 1008.00m
  /dev/sdc2  vg0 lvm2 a--     1.98g    1.98g

[[email protected] ~ ]#pvdisplay
  --- Physical volume ---
  PV Name               /dev/sdb1
  VG Name               vg0                     ##不再孤立,归属于vg0卷组
  PV Size               1.00 GiB / not usable 16.00 MiB
  Allocatable           yes
  PE Size               16.00 MiB                ##PE的大小被定义
  Total PE              63
  Free PE               63
  Allocated PE          0
  PV UUID               e1wvwN-y6Sz-tDye-2hPt-3iIq-CShq-mAyxjc
.......

lv创建:

步骤1:

[[email protected] ~ ]#lvcreate -n lv0 -L 1500M vg0       ## -n指定逻辑卷名称,-L指定大小(K,M,G,T,P,E)
  Rounding up size to full physical extent <1.47 GiB
  Logical volume "lv0" created.

步骤2:查看lv信息

[[email protected] ~ ]#lvs
  LV   VG  Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  lv0  vg0 -wi-a----- <1.47g   

[[email protected] ~ ]#lvdisplay
  --- Logical volume ---
  LV Path                /dev/vg0/lv0          ## 设备名
  LV Name                lv0
  VG Name                vg0
  LV UUID                HFNlrP-1da7-rdiJ-Jqew-0ym5-Lx0H-twQup5
  LV Write Access        read/write
  LV Creation host, time centos7.localdomain, 2018-08-15 16:31:01 +0800
  LV Status              available
  # open                 0
  LV Size                <1.47 GiB
  Current LE             94                     ##当前已使用的LE数量(PE在lv中成为LE)
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:0

[[email protected] ~ ]#pvs
  PV         VG  Fmt  Attr PSize    PFree
  /dev/sdb1  vg0 lvm2 a--  1008.00m 1008.00m
  /dev/sdb2  vg0 lvm2 a--     1.98g  528.00m            ##即/dev/sdb2参与到lv的创建中
  /dev/sdc1  vg0 lvm2 a--  1008.00m 1008.00m
  /dev/sdc2  vg0 lvm2 a--     1.98g    1.98g

  --- Physical volume ---
  PV Name               /dev/sdb2
  VG Name               vg0
  PV Size               2.00 GiB / not usable 16.00 MiB
  Allocatable           yes
  PE Size               16.00 MiB
  Total PE              127
  Free PE               33
  Allocated PE          94                              ##已使用的PE数量为94
  PV UUID               Gc3f6r-gTjL-aG1w-Rn2P-zYGS-Iw0E-D7D8La

步骤3:格式化

[[email protected] ~ ]#mkfs.ext4 /dev/vg0/lv0
mke2fs 1.42.9 (28-Dec-2013)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
96384 inodes, 385024 blocks
19251 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=394264576
12 block groups
32768 blocks per group, 32768 fragments per group
8032 inodes per group
Superblock backups stored on blocks:
    32768, 98304, 163840, 229376, 294912

Allocating group tables: done
Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done

步骤4:挂载使用

[[email protected] ~ ]#mkdir test1
[[email protected] ~ ]#mount /dev/vg0/lv0 test1
[[email protected] ~ ]#df
Filesystem          1K-blocks    Used Available Use% Mounted on
/dev/sda2            52403200 3918996  48484204   8% /
devtmpfs               613144       0    613144   0% /dev
tmpfs                  629036       0    629036   0% /dev/shm
tmpfs                  629036   18032    611004   3% /run
tmpfs                  629036       0    629036   0% /sys/fs/cgroup
/dev/sda3            31441920 1036092  30405828   4% /data
/dev/sda1             1038336  157932    880404  16% /boot
tmpfs                  125808      12    125796   1% /run/user/42
tmpfs                  125808       0    125808   0% /run/user/0
/dev/mapper/vg0-lv0   1483088    4512   1385188   1% /root/test1

原文地址:http://blog.51cto.com/13668904/2160433

时间: 2024-08-30 06:04:48

lvm的基本创建的相关文章

Linux磁盘管理:LVM逻辑卷创建及使用

Linux磁盘管理:LVM逻辑卷创建及使用    一.创建LVM逻辑卷    通过图文并茂的方式来看看如何创建我们的LVM ,首先是要将我们的物理硬盘格式化成PV,然后将多个PV加入到创建好的VG中,最后通过VG创建我们的LV.所以我们第一步就是将我们的物理硬盘格式化成PV(物理卷) ①将物理硬盘格式化成PV(物理卷) 使用的是 pvcreate 命令 这里我已经事先虚拟化了3快物理硬盘,每块硬盘的大小为8G,通过 fdisk -l 命令可以查看 [[email protected] ~]# f

LVM 逻辑卷创建与管理

LVM ( Logical Volume Manager ) 是基于内核的一种逻辑卷管理器,允许用户动态调整文件系统大小,可以利用快照功能备份数据. LVM分为:物理卷 卷组  逻辑卷 物理卷:(PV)是LVM最底层概念,和磁盘份区是对应的关系(一个分区对应一个物理卷,由命令生成.) 卷 组:(VG)由一个或多个物理卷组成,大小取决于物理卷的个数及容量,创建时可以指定其PE大小.卷组我们可以看成是一个磁盘设备. PE(Physical Extent)即物理长度,逻辑意义上磁盘最小存储单位,默认大

LVM逻辑卷-创建、查看、删除

创建LVM流程: 先把磁盘初始化为物理卷(PV),此时磁盘空间就是一个一个PE(默认4MB一个大小)组成:将PV加入VG(卷组)中:从VG中创建LV(逻辑卷),LV是可以创建文件系统使用的!创建文件系统并挂在使用. 虚拟机实验创建LVM: 在虚拟机中添加两块10G硬盘: 下图是切换到root用户后,列出的磁盘信息: 初始化磁盘成物理卷. 创建一个VG,把PV加入其中: 创建逻辑卷,创建后会在/dev/taokittesting/weblvm生成文件! 格式化,创建文件系统 挂载到/mnt下试用:

Linux LVM学习总结&mdash;&mdash;创建卷组VG

在Linux平台如何创建一个卷组(VG)呢?下面简单介绍一下卷组(VG)的创建步骤.本文实验平台为Red Hat Enterprise Linux Server release 6.6 (Santiago) 1: 查看当前卷组信息 查看服务器的卷组(VG).物理卷(PV).逻辑卷(LV)相关信息,在此之前,我们先来看看一些基本命令以及用法 vgcan命令介绍 : 查找系统中存在的LVM卷组,并显示找到的卷组列表.vgscan命令仅显示找到的卷组的名称和LVM元数据类型,要得到卷组的详细信息需要使

lvm逻辑卷创建

lvm逻辑卷创建一:逻辑卷的作用弹性的调整分区的容量,利用其系统快照功也是一种很好的备份工具. 二:逻辑卷LVM的组成部分,PV,VG,LV.?:PV可以理解成硬盘的分区.?:VG可以理解成硬盘.?: LV可以理解在由PV分区组合而成的硬盘VG上所在进行的分区. 三:LVM实现 . 备注:创建快照会影响速度,备份完成后应该删除. 原文地址:http://blog.51cto.com/13878077/2161603

LVM逻辑卷-创建、扩容、缩减、迁移、快照

LVM逻辑卷 逻辑卷管理工具,允许在多个物理设备之间重新组织文件系统,包括重新设定文件系统的大小 PE  物理盘区,类似于磁盘中的block 逻辑卷的基本存储单位就是PE dm:device mapper将一个或多个底层块设备组织成一个逻辑设备的模块 设备名:/dev/dm-#  //系统自动分配,常用软链接定义 软链接:两种方式表示 /dev/mapper/卷组-逻辑卷 /dev/卷组/逻辑卷 LVM可以弹性的修改容量 基本概念: pv  //物理卷 vg  //卷组 lv  //逻辑卷 本次

LVM逻辑卷创建管理

一.简介 LVM是逻辑盘卷管理(Logical Volume Manager)的简称,它是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和分区之上的一个逻辑层,来提高磁盘分区管理的灵活性. LVM的工作原理其实很简单,它就是通过将底层的物理硬盘抽象的封装起来,然后以逻辑卷的方式呈现给上层应用.在传统的磁盘管理机制中,我们的上层应用是直接访问文件系统,从而对底层的物理硬盘进行读取,而在LVM中,其通过对底层的硬盘进行封装,当我们对底层的物理硬盘进行操作时,其不再是针对于分区进行操

Centos文本方式安装情况下lvm分区的创建

有些时候,安装centos,会进入文本方式下,而不是进入图形方式.原来一直认为在文本方式下作lvm分区会有限制(记得rhel官方文档里面也这么说.) 昨天,在linux系统管理区看到一个讨论,亲自做了一下实验,验证了可以在文本方式下创建lvm分区并且文本安装程序也可以识别lvm. 那个帖子的讨论过程,请移步http://bbs.chinaunix.net/thread-3758363-1-1.html www.2cto.com 下面把我整个实验的过程写出来,方便大家参考. 系统环境: vmwar

新手学习Linux——lvm逻辑卷创建管理

首先把防火墙关掉.iptables -Fiptables -Xiptables -Ziptables -L setenforce 0vi /etc/sysconfig/selinux #修改SELINUX首先添加块3块硬盘,为方便区分把每一块硬盘大小设置不同,分别为5G.6G和7G,硬盘的类型是默认的SCSI. fdisk /dev/sdb #对sdb硬盘进行分区Command (m for help): m #输出帮助依次输入n,p,默认,+2G即可完成.再依照上面的步骤加一个大小为1G的新分