LVM逻辑卷镜像实现方法
本文演示了在CentOS5系统中实现LVM逻辑卷镜像的方法。LVM的镜像功能,有点儿类似于Raid1,即多块儿磁盘互相同步,确保资料不会丢失。
创建物理卷,卷组的步骤这里就先省略了,网上大把的教程。本文的过程如下:
1,创建4个物理卷/dev/sda1、/dev/sda2、/dev/sda3、/dev/sda4,并且将sda1-sda3三个物理卷加入到卷组vg1中,并在卷组vg1中创建包含镜像功能的逻辑卷lv1;
2,使用dd命令对物理卷sda2进行破坏,然后从卷组中发现sda2挂了,但确认文件读取正常;
3,(在不解除挂载的情况下)去除坏掉的物理卷sda2,向卷组中加入新的物理卷sda4代替之;
4,确认LVM镜像功能正常,以及文件读取正常。
创建一个包含镜像功能的逻辑卷(命名为lv1):
[root@OS ~]# lvcreate -L 3G -m1 -n lv1 vg1 /dev/sda1 /dev/sda2 /dev/sda3
  Logical volume "lv1" created
 
[root@OS ~]# lvs -a -o +devices
  LV             VG   Attr   LSize Origin Snap%  Move Log      Copy%  Convert Devices                       
  lv1            vg1  mwi-a- 3.00G                    lv1_mlog   5.34         lv1_mimage_0(0),lv1_mimage_1(0)
  [lv1_mimage_0] vg1  Iwi-ao 3.00G                                            /dev/sda3(0)                  
  [lv1_mimage_1] vg1  Iwi-ao 3.00G                                            /dev/sda2(0)                  
  [lv1_mlog]     vg1  lwi-ao 4.00M                                            /dev/sda1(0)
LVM镜像需要用到-m1参数,从上面可以看出,/dev/sda2和/dev/sda3互为镜像,而/dev/sda1作为日志存储之用。
在逻辑卷上创建一个文件:
[root@OS ~]# mkfs.ext3 /dev/vg1/lv1
……
[root@OS ~]# mount /dev/vg1/lv1 /mnt/1
[root@OS ~]# echo "hello world" > /mnt/1/hi.txt
[root@OS ~]# cat /mnt/1/hi.txt
hello world
对/dev/sda2进行破坏:
[root@OS ~]# dd if=/dev/zero of=/dev/sda2 count=10 bs=1M
10+0 records in
10+0 records out
10485760 bytes (10 MB) copied, 0.0133215 seconds, 787 MB/s
确认/dev/sda2遭到了破坏:
[root@OS ~]# lvs -a -o +devices
  Couldn't find device with uuid 'ML2wV3-wBIr-eOG3-bXYp-SH1B-WBYq-JWn5K4'.
  Couldn't find device with uuid 'ML2wV3-wBIr-eOG3-bXYp-SH1B-WBYq-JWn5K4'.
  Couldn't find device with uuid 'ML2wV3-wBIr-eOG3-bXYp-SH1B-WBYq-JWn5K4'.
  LV             VG   Attr   LSize Origin Snap%  Move Log      Copy%  Convert Devices                       
  lv1            vg1  mwi-ao 3.00G                    lv1_mlog 100.00         lv1_mimage_0(0),lv1_mimage_1(0)
  [lv1_mimage_0] vg1  iwi-ao 3.00G                                            /dev/sda3(0)                  
  [lv1_mimage_1] vg1  iwi-ao 3.00G                                            unknown device(0)             
  [lv1_mlog]     vg1  lwi-ao 4.00M                                            /dev/sda1(0)                  
 
[root@OS ~]# lvscan
  Couldn't find device with uuid 'ML2wV3-wBIr-eOG3-bXYp-SH1B-WBYq-JWn5K4'.
  Couldn't find device with uuid 'ML2wV3-wBIr-eOG3-bXYp-SH1B-WBYq-JWn5K4'.
  Couldn't find device with uuid 'ML2wV3-wBIr-eOG3-bXYp-SH1B-WBYq-JWn5K4'.
  ACTIVE            '/dev/vg1/lv1' [3.00 GB] inherit
重新挂载逻辑卷,确认文件可以正常读取:
[root@OS ~]# umount /mnt/1
[root@OS ~]# mount /dev/vg1/lv1 /mnt/1
[root@OS ~]# cat /mnt/1/hi.txt
hello world
将卷组中坏掉的物理卷(/dev/sda2)移除:
[root@OS ~]# vgreduce --removemissing --force vg1
移除之后发现卷组信息中Mirrored volumes选项消失了:
[root@OS ~]# vgdisplay /dev/vg1
……
向卷组中加入新的物理卷(/dev/sda4):
[root@OS ~]# vgextend vg1 /dev/sda4
 
进行数据恢复(过程中无须解除逻辑卷的挂载):
[root@OS ~]# lvconvert -m1 /dev/vg1/lv1 /dev/sda1 /dev/sda3 /dev/sda4
  /dev/vg1/lv1: Converted: 9.8%
  /dev/vg1/lv1: Converted: 19.4%
  /dev/vg1/lv1: Converted: 48.4%
  /dev/vg1/lv1: Converted: 77.6%
  /dev/vg1/lv1: Converted: 96.9%
  /dev/vg1/lv1: Converted: 100.0%
  Logical volume lv1 converted.
 
[root@OS ~]# lvs -a -o +devices
  LV             VG   Attr   LSize Origin Snap%  Move Log      Copy%  Convert Devices                       
  lv1            vg1  mwi-ao 3.00G                    lv1_mlog 100.00         lv1_mimage_0(0),lv1_mimage_1(0)
  [lv1_mimage_0] vg1  iwi-ao 3.00G                                            /dev/sda3(0)                  
  [lv1_mimage_1] vg1  iwi-ao 3.00G                                            /dev/sda4(0)                  
  [lv1_mlog]     vg1  lwi-ao 4.00M                                            /dev/sda1(0)                  
 
[root@OS ~]# cat /mnt/1/hi.txt
hello world
 

1.2.1LVM逻辑卷镜像实现方法的更多相关文章

  1. LVM实现逻辑卷镜像

    本文系统 CentOS 6.5 x64 LVM的镜像功能,有点儿类似于Raid1,即多块儿磁盘互相同步,确保资料不会丢失. 1.在此添加4块物理硬盘,每块2G空间 2.将sdb.sdc.sdd.sde ...

  2. RHEL6中LVM逻辑卷管理

    1.LVM 基本术语   物理卷(physical volume):物理卷在逻辑卷管理中处于最底层,它可以是实际物理硬盘上的分区,也可以是整个物理硬盘.   卷组(Volume Group):卷组建立 ...

  3. AIX中逻辑卷管理

    1.逻辑卷管理 逻辑卷的大小确定: 逻辑卷大小(MB)=PP的大小(MB)*LV包含的LP的个数 LV占用的物理空间(MB)=PP的大小(MB)*LV包含的LP的个数*LV拷贝的副本数   逻辑卷控制 ...

  4. AIX 逻辑卷简介

    1.基本概念 LVM的组成:物理卷PV.卷组VG.逻辑卷LV.物理分区PP.逻辑分区LP.文件系统等   物理卷:物理卷表示AIX可以识别的物理磁盘(hdisk*),一个物理卷指一块硬盘.可以是内部的 ...

  5. linux 分区 物理卷 逻辑卷

    今天我们主要说说分区.格式化.SWAP.LVM.软件RAID的创建哈~ 格式化 查看当前分区:fdisk   -l 这个命令我们以前是讲过的,我现在问下,ID那项是什么意思? 83 是代表EXT2和E ...

  6. 学习OpenStack之 (4): Linux 磁盘、分区、挂载、逻辑卷管理 (Logical Volume Manager)

    0. 背景: inux用户安装Linux操作系统时遇到的一个常见的难以决定的问题就是如何正确地评估各分区大小,以分配合适的硬盘空间.普通的磁盘分区管理方式在逻辑分区划分好之后就无法改变其大小,当一个逻 ...

  7. system2之:4-LVM逻辑卷管理

    LVM有扩容功能,无容错功能 物理卷: [root@localhost ~]# pvscan   PV /dev/sda2   VG VolGroup   lvm2 [19.51 GiB / 0    ...

  8. AIX smit下创建逻辑卷、添加文件系统并挂载

    --AIX smit下创建逻辑卷,添加文件系统并挂载------------------------------------------2013/10/15 首先创建逻辑卷smit lv ,这里没多大 ...

  9. LVM基础详细说明及动态扩容lvm逻辑卷的操作记录

    LVM概念:---------------------------------------------------------------------------------------------- ...

随机推荐

  1. vscode代码折叠方法

    最近换用了vscode代码编辑器,在查看c源码的时候想折叠所有区域的代码,不知道快捷键是哪一个?查看了使用说明,快捷键如下: 1. 折叠所有区域代码的快捷: ctrl + k      ctrl + ...

  2. A♂G&C012

    A♂G&C012 A AtCoder Group Contest 从大到小sort后输出\(a_2+a_4+a_6+\ldots a_{2n}\) 好♂啊,只会背结论/kk B Splatte ...

  3. vs2017使用OpenGL的方法

    第一步:将相应的.lib和.h文件放到相应的文件夹中,具体如下: 将GLAUX.LIB,GLU32.LIB,OPENGL32.LIB 放到....\VC\Tools\MSVC\14.10.25017\ ...

  4. vuex实现登录状态的存储,未登录状态不允许浏览

    基础思路就是使用vuex状态管理来存储登录状态(其实就是存一个值,例如token),然后在路由跳转前进行登录状态的判断,可以使用vue-router的全局前置守卫beforeEach,也可以使用路由独 ...

  5. UmiJS可插拔的企业级 react 应用框架,配合ant-design-pro使用

    入门非常简单 # 安装 $ yarn global add umi # 或者 npm install -g umi # 新建应用 $ mkdir myapp && cd myapp # ...

  6. Spring通知,顾问,增强

    1.AOP  (Aspect  Oriented Programming  面向切面编程) 在软件业,AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编 ...

  7. attempt to call method 'getDataString' (a nil value)

    错误: LUA ERROR: [: attempt to call method 'getDataString' (a nil value) 在合并cocos和quick的时候,在EventCusto ...

  8. UDF——Fluent与Matlab数据耦合

    本文编译工具:VC++ UDF Studio 该插件可以直接在Visual Studio中一键编译.加载.调试UDF源码,极大提高编写排错效率,且支持C++,MFC,Windows API和第三方库, ...

  9. centos7 安装Hadoop-2.6.0-cdh5.16.1.tar.gz

    准备Hadoop-2.6.0-cdh5.16.1.tar.gz 下载网址 http://archive.cloudera.com/cdh5/cdh/5/Hadoop-2.6.0-cdh5.16.1.t ...

  10. Css3 文字渐变整理(一)

    一.文本颜色渐变 <gradient> :可以应用在所有接受图像的属性上,允许使用简单的语法实现颜色渐变,以便UA在渲染页面自动生成图像. 语法:<gradient> = li ...