关于 LVM 逻辑卷管理

              逻辑卷管理 (LVM)
   
允许对卷进行方便操作的抽象层,包括从新设定文件系统的大小   

允许在多个设备间重新组织文件系统
将设备指定为物理卷
用一个或者多个物理卷来创建一个卷组
物理卷是用固定大小的物理区域(Physical
Extent PE) 来定义的
在物理卷上创建的逻辑卷是由物理区域(PE)组成
可以在逻辑卷上创建文件系统
下面看图解    

 关于 LVM 逻辑卷管理  
   
 LVM:
Logical Volume Manager, Version: 2   
 dm: device
mapper:将一个或多个底层块设备组织成一个逻辑设备的模块
设备名:/dev/dm-#
软链接:
/dev/mapper/VG_NAME-LV_NAME
/dev/mapper/vol0-root
/dev/VG_NAME/LV_NAME
/dev/vol0/root 

 
 
LVM可以弹性的更改LVM的容量
通过交换PE来进行资料的转换,将原来LV内的PE转移到其他的设备中以降低LV的容量,或将其他设备中的PE加到LV中以加大容量
 

下面看图解

关于 LVM 逻辑卷管理  
  
  

pv(物理卷)管理工具
显示pv信息:
           pvs 简要pv信息显示
           pvdisplay  
显示目前系统上面的PV状态
创建pv与PV相关的一些管理命令有:
           pvcreate /etc/设备   将实体设备创建成为PV
主要创建PV命令
           pvscan      搜寻目前系统里面任何具有PV的磁碟  
    
删除pv:
           vremove    将PV属性移除,让该设备不具有PV属性
        
     1 用fdisk
配置新的具有 8e 系统ID 的分区   
     # fdisk /dev/sdb
     n   新建分区
     p  
显示磁盘分区表
     l   列表出所的系统ID号
     t   修改分区系统的ID
     8e  系统ID
    
w   保存并退出
     2 利用pvcreate 创建 PV
     [root@Compro ~]# pvcreate
/dev/sde{1,2}  
     Physical volume "/dev/sde1" successfully
created
     Physical volume "/dev/sde2" successfully created
  

       
                       
vg(卷组)管理工具
显示vg信息:
         
vgs
          vgdisplay 显示目前系统上面的VG状态
创建vg与vg相关的一些管理命令有:
         
vgcreate 就是主要创建VG的命令
          vgscan   查找系统上是否有VG存在
          vgchange 
配置VG是否启动(active活跃的)
          vgremove  删除一个VG    

创建vg:
         vgcreate [-s #[kKmMgGtTpPeE]] VolumeGroupName
PhysicalDevicePath [PhysicalDevicePath…]
         [root@Compro ~]# vgcreate
-s 10M makangbo /dev/sde{1,2}
         Volume group "makangbo" successfully
created  
   管理vg:
         vgextend  在VG内添加额外的PV
        
[root@Compro ~]# vgextend makangbo /dev/sde1
         vgrduce  
在VG内移除PV
         [root@Compro ~]# vgreduce makangbo /dev/sde1
        
Removed "/dev/sde1" from volume group "makangbo"
  删除vg:
       
先做pvmove,再做vgremove                                  
 

lv(逻辑卷)管理工具
显示lv信息:lvs
            lvdisplay  显示系统上面LV
创建LV
与LV相关的一些管理命令有:
            lvscan    查询系统上面LV
            lvextend 
在LV里面添加容量
            lvresize  对LV进行容量大小的调整          

 创建LV:
 lvcreate-L #[mMgGtT] -n NAME VolumeGroup  主要创建LV命令
 lvcreate
-L 10G -n xiaomaglv xiaomagvg
 删除逻辑卷:
 vremove/dev/VG_NAME/LV_NAME  

   
重设文件系统大小:
fsadm[options] resize device
[new_size[BKMGTEP]]
resize2fs [-f] [-F] [-M] [-P] [-p] device [new_size]  

   
 文件系统阶段:
 要想真正的使用lvm就必须对lv进行格式化挂载
 1 mkfs -t ext3
/dec/xiaomagvg/xiaomaglv
 2 mkdir /mnt/lvm
 3 mount
/dev/xiaomagvg/xiaomaglv /mnt/lvm
   
 扩展和缩减逻辑卷
扩展LV:
#ddisk
/dev/sdb                                  fdisk配置新的具有8e 文件系统ID的分区
# pvcreate
/dev/sde{1,2}                         利用pvcreate创建出来PV
# vgcreate -s 10M
makangbo /dev/sde{1,2}         利用vgextend 将 PV加入我门的xiaomagvg
# lvresize
#[mMgGtT] /dev/xiaomagvg/xiaomaglv    利用lvresize 将新加入的PV内的PE加入xiaomaglv中
#
resize2fs #[mMgGtT] /dev/xiaomagvg/xiaomaglv   透过resize2fs 将文件系统的容量确实添加。
 
xfs_growfs /mnt/mylv/               xfs系列  只能扩展 不能缩减
  lvextend -r -l
+100%FREE /dev/vg0/mylv  一步到位     
缩减LV:
建议先备份
# umount
/dev/xiaomagvg/xiaomaglv                先卸载已经挂载的LV
# e2fsck -f
/dev/xiaomagvg/xiaomaglv             强制进行磁盘检测
# resize2fs #[mMgGtT]
/dev/xiaomagvg/xiaomaglv   重新设定文件系统大小
# lvreduce -L [-]#[mMgGtT] 
/dev/xiaomagvg/xiaomaglv  在LV里面减少容量
# mount /dev/xiaomagvg/xiaomaglv /mnt/lvm

      
    
   
逻辑卷管理器快照

快照是特殊的逻辑卷,它是在生成快照时存在的逻辑卷的准确拷贝
对于需要备份或者赋值的现有数据集临时拷贝以及其它操作来说,快照是最合适的选择。

快照只有在它们和原来的逻辑卷不同时才会消耗空间。
  
在生成快照是会分配个它一定的空间,但只有在原来的逻辑卷或者快照有所改变才会使用这些空间
  
当原来的逻辑卷中有所改变时,会将旧的数据复制到快照中。
   快照中只含有原来的逻辑卷中更改的数据或者自生成快照后的快照中更改的数据
  
建立快照的卷大小只需要原始逻辑卷的15%~20%就足够了,也可以使用lvextend 扩大快照

快照就是将当时的系统信息记录下来,若将来有任何数据改动了,则原始数据会被移动到快照区
没有改动的区域则有快照区和文件系统共享。

关于 LVM 逻辑卷管理

由于快照区与原本的LV共用很多PE的区块,因此快照去与被快照的LV必须要在同一个VG上,系统恢复的时候的文件数量不能高于快照区的实际容量

使用LVM快照  
lvcreate – l 64 -s -n name -p r /dev/vg0/data

挂载快照
mkdir -p /mnt/snap
mount -o ro /dev /vg0/snap-data
/mnt/snap
删除快照
umount /mnt/databackup
lvremove /dev/vg0/databackup

 

1 创建至少两个PV大小设定为+20G 
 [root@Compro ~]# pvcreate
/dev/sdf{1,2}
 创建VGtestvg添加PV,要求PE大小为16M
 [root@Compro ~]# vgcreate -s
16M testvg /dev/sdf{1,2}
 在VG中创建大小为5G的LV testlv
 [root@Compro ~]#
lvcreate -L 5G -n testlv testvg
 使用lvmh就必须对lv进行格式化挂载
 [root@Compro ~]#
mkfs -t ext3 /dev/testvg/testlv
 创建挂载点和挂载
 [root@Compro ~]# mkdir
/mnt/users
 [root@Compro ~]# mount /dev/testvg/testlv
/mnt/users
 
 
2 新建用户archlinux 要求其家目录为/users
 [root@Compro ~]#
useradd archlinux -d /home/users
 而后用su
切换至archlinux用户,复制/etc/pam.d目录至自己的家目录
 [archlinux@Compro ~]$ cp /etc/pam.d/*
./
 
 
 3上面testlv创建的是 5G 现在要求扩展到7G
 [root@Compro ~]# lvextend -L 7G
/dev/testvg/testlv
 
4 缩减testlv至3G的大小
 [root@Compro ~]# lvreduce -L 3G
/dev/testvg/testlv
 
 
 
5 对testlv
创建快照,并尝试基于快照备份数据,验证快照的功能
 [root@Compro ~]# lvcreate -L 3G -s -n kuaizhaoname
/dev/testvg/testlv
 显示信息
 [root@Compro ~]#
lvdisplay
 创建快照目录
 [root@Compro ~]# mkdir
/mnt/snapshotdir
 挂载
 [root@Compro ~]# mount /dev/testvg/kuaizhaoname
/mnt/snapshotdir
 
 
 利用快照恢复数据
 注意:回复的数据不能超过快照区的总大小,因为如果变动的数据大小超过了快照区的空间,那么快照去是不能容纳所有变得的数据了,这个时候快照功能会失效

 1 现在原来的lv中写入一些数据, 然后通过lvm的快照功能来恢复之前的操作 原先快照的数据
 [root@Compro ~]# cp -R
/etc /mnt/testlv
 
 创建一数据恢复的临时目录
 [root@Compro ~]# mkdir -pv
/tmp/backup
 然后cd到快照挂载点
 [root@Compro ~]# cd
/mnt/kuaizhaoname/
 将快照里数据打包压缩
 [root@Compro kuaizhaoname]# tar -zcf
/tmp/bbackup/testlv.tar.gz *
 卸载快照NAME 并且移除,因为里面的内容已经备份出来了
 [root@Compro
~]#  umount /mnt/kuaizhaoname
 [root@Compro ~]# lvremove /dev/testvg/kuaizhao

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

 
   
   

原创文章,作者:小马哥,如若转载,请注明出处:http://www.178linux.com/42768

(0)
上一篇 2016-09-02 08:47
下一篇 2016-09-02 08:47

相关推荐

  • Linux文本搜索工具grep

    Linux文本搜索工具grep Linux文本搜索工具grep grep 基本正则表达式 egrep 扩展正则表达式 fgrep 简介 grep(全称Globally search a Regular Expression and Print,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,根据用户指定的“模式(pattern)”对目标文本进行匹…

    2016-04-05
  • Linux 2.6.39-rc3的一个插曲

    2011年4月12日,Linux 2.6.39-rc3发布了,Linus Torvalds写了一个发布邮件,其中包含了一个长长的为这个版本做过贡献的人员名单,这个名单中有很多看上去应该是中国人的名字,我挺为他们感到骄傲的(不知道你是否还记得以前本站的”Linux是由谁写的“)。 不过,没过一会,发现了一个bug,经过大家的调查(2.6.38版没有发现这个问题…

    Linux干货 2016-06-09
  • Linux系统程序包管理工具-RPM

    一、rpm是什么 RPM 是RPM Package Manager(RPM软件包管理器)的缩写,这一文件格式名称虽然打上了RedHat的标志,但是其原始设计理念是开放式的。RPM包管理器(RPM)是一个强大的命令行驱动的包管理系统能够安装、卸载、验证、查询和更新计算机软件包。每个软件包包括存档的文件连同包和它的版本信息,描述等。还有一个库API,允…

    Linux干货 2015-11-19
  • vsftpd基于mysql实现用户认证

    一、前言   ftp介绍:     ftp全程是File Transfer Protocol(文件传输协议),方便于实文件交换;但是在文件传输以及账号密码发送时都是以明文传输,因此是一个明文协议 ftp是C/S方式:   常见的客户端有:     GUI方式:browers、FileZilla-cl…

    Linux干货 2015-06-15
  • 一起学WINS系列(二)安装、配置

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://jeffyyko.blog.51cto.com/28563/159128  此系列第二节:安装服务端、配置客户端。          完整的WINS系统…

    Linux干货 2015-03-25
  • Linux网络管理之网卡别名及网卡绑定配置

    在日常的运维工作当中,有时候需要在一块物理网卡上配置多个IP地址,这就是网卡子接口的概念,以及多块网卡实现网卡的绑定,通俗来讲就是多块网卡使用的一个IP地址,下面我来详细说明实现的过程。 &创建网卡子接口 在CentOS系统当中网络是由NetworkManager这个服务来管理的,它提供了一个图形的界面,但此服务不支持物理网卡子接口的设置,所以在配置网卡子接…

    系统运维 2016-09-02