注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

红烧鱼

linux & windows management

 
 
 

日志

 
 
关于我
mac

专注IT基础架构设计与运维。 欢迎给我留言,或邮件沟通zjwsk@163.com

网易考拉推荐

有关mirror的一些经验  

2008-07-10 00:12:18|  分类: HPUX |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

有关mirror的一些经验

为了更好的解释我所说的内容,我举如图例子:

--------              ---------

|  A   |             |  B     |

--------              ---------

|  C   |             |  D     |

 

先做假设

1,          假设A ,B是根卷vg00中的两个盘,且A为primary disk,所以,A盘上有可以引导的信息,B盘无引导相应的信息(同时在某些情况下是没有的,即用户只有一块根盘)。

2,         假设C,D是对应的需要做镜像的盘,A与C做镜像,B与D做镜像。

3,         假设A的设备文件名是c1t0d0

假设B的设备文件名是c1t1d0

假设C的设备文件名是c2t0d0

假设C的设备文件名是c2t1d0

这里要提醒各位注意,这里A,B是同一条SCSI BUS上的设备,C,D是另外一条SCSI BUS上的设备,有些情况下,为了提高性能的角度上考虑,A,B应该是不同SCSI BUS上的设备,这样读写数据时,性能会更好些,同时C,D也是不同BUS上的设备。

有了如上的假设我们开始各种情况的讨论。

1,              如果用户有只有两块硬盘,并且要做镜像(就是说上面假设中没有B,D盘)。那么在安装了相应的镜像软件之后,假设A为已经安装好系统的第一块盘,对应的镜像的盘是C盘,那么做镜像的脚本(1)如下:

pvcreate -f -B /dev/rdsk/c2t0d0

vgextend /dev/vg00 /dev/dsk/c2t0d0

mkboot /dev/rdsk/c2t0d0

lvextend -m 1 /dev/vg00/lvol1 /dev/dsk/c2t0d0

lvextend -m 1 /dev/vg00/lvol2 /dev/dsk/c2t0d0

lvextend -m 1 /dev/vg00/lvol3 /dev/dsk/c2t0d0

lvextend -m 1 /dev/vg00/lvol4 /dev/dsk/c2t0d0

lvextend -m 1 /dev/vg00/lvol5 /dev/dsk/c2t0d0

lvextend -m 1 /dev/vg00/lvol6 /dev/dsk/c2t0d0

lvextend -m 1 /dev/vg00/lvol7 /dev/dsk/c2t0d0

lvextend -m 1 /dev/vg00/lvol8 /dev/dsk/c2t0d0

lvextend -m 1 /dev/vg00/lvol9 /dev/dsk/c2t0d0

mkboot -a "hpux -lq(;0)/stand/vmunix" /dev/rdsk/c2t6d0

lvlnboot -b /dev/vg00/lvol1

lvlnboot -s /dev/vg00/lvol2

lvlnboot -r /dev/vg00/lvol3

lvlnboot -d /dev/vg00/lvol2

lvlnboot –Rv

在这个脚本里我写了有9个逻辑卷,这里需要按照用户的实际情况来改写,如果多了,请删除,少了,请加上。

还有需要注意的是:.   pvcreate 中需要加上B这个参数

2,              如果用户有四块硬盘,即vg00中有两块硬盘和剩余的两块硬盘做镜像,就是说A,C镜像,B,D镜像

那么这个脚本(2)如下

pvcreate -f -B /dev/rdsk/c2t0d0

pvcreate -f    /dev/rdsk/c2t1d0

vgextend /dev/vg00 /dev/dsk/c2t0d0 /dev/dsk/c2t1d0

mkboot /dev/rdsk/c2t0d0

lvextend -m 1 /dev/vg00/lvol1 /dev/dsk/c2t0d0

lvextend -m 1 /dev/vg00/lvol2 /dev/dsk/c2t0d0

lvextend -m 1 /dev/vg00/lvol3 /dev/dsk/c2t0d0

lvextend -m 1 /dev/vg00/lvol4 /dev/dsk/c2t0d0

lvextend -m 1 /dev/vg00/lvol5 /dev/dsk/c2t0d0

lvextend -m 1 /dev/vg00/lvol0 /dev/dsk/c2t0d0

lvextend -m 1 /dev/vg00/lvol7 /dev/dsk/c2t0d0

lvextend -m 1 /dev/vg00/lvol8 /dev/dsk/c2t0d0

lvextend -m 1 /dev/vg00/lvol9 /dev/dsk/c2t0d0

lvextend -m 1 /dev/vg00/lvol9 /dev/dsk/c2t1d0

 

lvextend -m 1 /dev/vg00/lvol10 /dev/dsk/c2t1d0

lvextend -m 1 /dev/vg00/lvol11 /dev/dsk/c2t1d0

mkboot -a "hpux -lq(;0)/stand/vmunix" /dev/rdsk/c2t0d0

lvlnboot -b /dev/vg00/lvol1

lvlnboot -s /dev/vg00/lvol2

lvlnboot -r /dev/vg00/lvol3

lvlnboot -d /dev/vg00/lvol2

lvlnboot –Rv

注意:在pcreate c2t1d0时,没有B这个参数

lvol10 lvol11的镜像源盘是在c1t1d0上的,镜像目标盘为c 2t1d0

还需要声明的一点是,由于对除了/卷,swap卷有特别的要求 就是要连续空间,对其它的逻辑卷没有说必须连续的空间,所以,有些情况下,A盘最后一个逻辑卷有可能是跨盘,就是说有可能在占了A盘的最后一部分空间,B盘的开始一部分空间。这时需要你的额外注意,确定它是否跨盘了,可以使用lvdisplay –v /dev/vg00/lvol9 | more来确定,如果跨盘了,需要在上面的脚本里增加红色部分的

3,    这次是更换第一种情况中一块盘,假设更换A盘,需要做的工作如下。(以下的操作可以online的实施,当然最好是在用户没有应用的时候做,主要是防止你的霉运当头,呵呵)

lvreduce -m 0 /dev/vg00/lvol1 /dev/rdsk/c1t0d0

lvreduce -m 0 /dev/vg00/lvol2 /dev/rdsk/c1t0d0

lvreduce -m 0 /dev/vg00/lvol3 /dev/rdsk/c1t0d0

lvreduce -m 0 /dev/vg00/lvol4 /dev/rdsk/c1t0d0

lvreduce -m 0 /dev/vg00/lvol5 /dev/rdsk/c1t0d0

lvreduce -m 0 /dev/vg00/lvol6 /dev/rdsk/c1t0d0

vgreduce /dev/vg00 /dev/dsk/c1t0d0

然后可以拔掉A盘,如果当时无法确认那一块是A盘,可以通过dd的方式来确认那一块是A盘,命令如下:

dd if=/dev/rdsk/c1t0d0 of=/dev/null bs=1024k

当执行这条命令是,对应的那块盘会长亮灯(其它的盘也会亮,但是不会长亮,只会偶尔闪烁),除非它坏的不能再坏了,确定之后,可以Ctrl+c打断dd的命令。拔下坏的盘,换上新盘,使用更改好的脚本(1)去恢复镜像。

  评论这张
 
阅读(553)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017