Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1980402
  • 博文数量: 593
  • 博客积分: 20034
  • 博客等级: 上将
  • 技术积分: 6779
  • 用 户 组: 普通用户
  • 注册时间: 2006-02-06 14:07
文章分类

全部博文(593)

文章存档

2016年(1)

2011年(101)

2010年(80)

2009年(10)

2008年(102)

2007年(16)

2006年(283)

我的朋友

分类:

2011-02-15 12:50:26

问题描述: 本文介绍了一种解决部分镜像问题的方法.

解答:

系统中有时会出现部分镜像的问题,当我们用类似"lsvg -l VGNAME"命令去查看lv信息时,
会收到如下的报错信息:
0516-1147 : Warning - logical volume LVNAME may be partially mirrored.
下面介绍一个修复的方法,由于涉及到LVM的操作,请务必谨慎.

1. 首先,一定做好LV的数据备份,备份好后再做下面的操作.

2. 下面我们以testlv为例,情况现在如下:
# lslv -m testlv
testlv:N/A
LP PP1 PV1 PP2 PV2 PP3 PV3
0001 0542 hdisk0 0542 hdisk1
0002 0543 hdisk0

# lspv
hdisk0 0051657f2a797fea rootvg active
hdisk1 0051657f2a798446 rootvg active

3. 创建map文件,包含要删除的pp:
(1) # lquerylv -L `getlvodm -l testlv` -r > /tmp/mapfile
注意: 命令中的符号不是单引号,是与波浪线同一个键的顿号.
(2) # vi /tmp/mapfile
0051657f2a797fea 542 1
0051657f2a798446 542 1
0051657f2a797fea 543 2
保留所有想删掉的pp. 例如testlv中想删掉hdisk1上的pp542,那么map文件应该修改成:
0051657f2a798446 542 1

4. 删除pp:
(1) # wc -l /tmp/mapfile
1
(2) # lreducelv -l `getlvodm -l testlv` -s 1 /tmp/mapfile
注意: 命令中数字1来自wc命令的输出结果, 另外上面命令中仍然是顿号.

5. 上面的命令执行完毕,ODM和LVCB中都应该显示只有一份copy,请用如下命令检查:
# lslv testlv => copies should be 1 in the ODM
# getlvcb -AT testlv => copies should be 1 in the LVCB
如果copy仍然为2,那么请用下面命令更新:
for LVCB, # putlvcb -c 1 testlv
for ODM, # synclvodm -v VGNAME testlv (注:VGNAME为lv所在的VG)

6. 执行同步:
# savebase

7. 上面的步骤都执行成功的话, testlv恢复到没有镜像的状态, 可以用mklvcopy重新做镜像.
如果它在rootvg上,镜像完毕后,请使用bosboot, 例如:
# mklvcopy testlv 2 hdisk1
# syncvg -l testlv
# bosboot -ad /dev/hdisk0
# bosboot -ad /dev/hdisk1

8. 最后强调一下,请务必先做好数据备份,再做上面的操作.
阅读(592) | 评论(2) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2011-03-05 16:56:50

很好的, 收藏了 推荐一个博客,提供很多免费软件编程电子书下载: http://free-ebooks.appspot.com

chinaunix网友2011-03-05 16:56:50

很好的, 收藏了 推荐一个博客,提供很多免费软件编程电子书下载: http://free-ebooks.appspot.com