LVM磁盘镜像同步备份:实现LVM镜像的详细方法与步骤

20,007次阅读
一条评论

共计 1390 个字符,预计需要花费 4 分钟才能阅读完成。

lvm主要还用于分区扩展,但是使用lvm实现磁盘镜像的应用也很广泛。比如,有两块硬盘/dev/sdb和/dev/sdc一样大小,想对这两个硬盘做磁盘镜像,保证两个硬盘的数据一致,即可利用lvm的磁盘镜像功能实现。
Lvm镜像需要用到-m1参数,主要过程参见如下详细步骤与说明。该实验操作在ubuntu11.10版本下进行。

创建lvm镜像的方法与步骤

1、创建磁盘分区
首先将 sdb 和 sdc分区,并创建四个pv(sdb5、sdb6、sdb7、sdc,其中sdb5用作数据磁盘,sdc用作对sdb5的镜像,sdb6用作日志,sdb7用作备用,注意:sdb5、sdb7容量最好一样大,sdc容量不能小于sdb5),然后创建vg0并将sd5、sd6、sdc加入其中。依次执行命令为:
fdisk /dev/sdb  –创建三个扩展分区/dev/sdb5、/dev/sdb6、/dev/sdb7
partprobe   -重新读取分区表
pvcreate /dev/sdb5
pvcreate /dev/sdb6
pvcreate /dev/sdb7
pvdisplay
fdisk /dev/sdc -创建分区/dev/sdc
partprobe
pvcreate /dev/sdc
pvdisplay
vgcreate vg0 /dev/sdb5 /dev/sdb6 /dev/sdc –创建vg0
2、创建lvm镜像/dev/vg0/mirror
使用-ml参数标志为创建镜像;使用-L参数设定镜像卷的大小为1000M;使用-n参数为镜像指定名称为mirror。这个镜像包括三部分:sdb5和sdc为数据卷和副本卷分区,#sdb6为日志卷分区。
lvcreate -L 1000M -m1 -n mirror vg0 /dev/sdb5 /dev/sdc /dev/sdb6
查看/dev/vg0/mirror的状态:
lvdisplay /dev/vg0/mirror
查看当前lvm中设备状态:
lvs -a -o +devices
LVM磁盘镜像同步备份:实现LVM镜像的详细方法与步骤
3、对新建的镜像lv进行格式化和挂载
mkfs.ext3 /dev/vg0/mirror
mkdir /mirror
mount /dev/vg0/mirror /mirror/
4、对镜像lvm进行破坏
破坏一块pv,看是否能正常工作
dd if=/dev/zero of=/dev/sdb5 count=10
破坏之后可以看到镜像lv中的/dev/sdb5变成了未知:
lvs -a -o +devices
lvscan
LVM磁盘镜像同步备份:实现LVM镜像的详细方法与步骤
重新对镜像lv进行挂载,发现仍然可正常使用。
umount /mirror/
mount /dev/vg0/mirror /mirror/
cd /mirror/
LVM磁盘镜像同步备份:实现LVM镜像的详细方法与步骤
把坏掉的设备从vg0中移除:
vgreduce –removemissing –force vg0
移除之后发现vg0信息中Mirrored volumes选项没有了
vgdisplay /dev/vg0
LVM磁盘镜像同步备份:实现LVM镜像的详细方法与步骤
5、镜像数据恢复
在vg0中新加一个pv,对数据进行恢复:
vgextend vg0 /dev/sdb7
lvconvert -m1 /dev/vg0/mirror /dev/sdb7 /dev/sdc /dev/sdb6
再次查看设备状态,我们会发现sdb7已经取代了sdb5的位置工作
lvs -a -o +devices
LVM磁盘镜像同步备份:实现LVM镜像的详细方法与步骤
查看镜像卷状态,发现镜像卷Mirrored volumes 2 这个选项又恢复了
lvdisplay /dev/vg0/mirror
LVM磁盘镜像同步备份:实现LVM镜像的详细方法与步骤
正文完
 0
任侠
版权声明:本站原创文章,由 任侠 于2012-05-08发表,共计1390字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(一条评论)
验证码
龙岩学院 评论达人 LV.1
2012-06-10 06:08:25 回复

我所在龙岩学院计算机专业里都学不到这东西!

     中国福建省龙岩市电信