• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

原创:disk suite 磁盘镜像和镜像恢复详细文档

发布: 2007-6-08 22:43 | 作者: seanhe | 来源: | 查看: 23次 | 进入软件测试论坛讨论

领测软件测试网
这是我在一次安装fujitsu primepower 250 小型机 有关用SDS做镜像和根盘坏掉恢复的详细文档

先说一下FUJITSU PRIMEPOWER 250 简要硬件配置:

CPU:1块 SPARC64-V     1100MHz
内存:2048MB
硬盘:容量为73.43GB的内置SCSI硬盘2块
OS:SOLARIS 8 02/02

新安装系统时,2块硬盘在系统中被分别定义为:c0t0d0 ;c0t1d0,对其中一块硬盘进行手工分区,如下:

Part      Tag    Flag     Cylinders         Size            Blocks
  0       root    wm       0 - 41003       58.42GB    (41004/0/0) 122519952
  1       swap    wu   41004 - 43811        4.00GB    (2808/0/0)    8390304
  2     backup    wm       0 - 47993       68.38GB    (47994/0/0) 143406072
  3 unassigned    wm   43812 - 43880      100.67MB    (69/0/0)       206172 
  4 unassigned    wu       0                0         (0/0/0)             0
  5 unassigned    wu       0                0         (0/0/0)             0
  6 unassigned    wu       0                0         (0/0/0)             0
  7       home    wm   43881 - 47993        5.86GB    (4113/0/0)   12289644
  

其中c0t0d0s0  给 /  划分了:58.42GB。  
    c0t0d0s1  给 swap 划分了:4.00GB 是内存的2倍。
    c0t0d0s7  给 /export/home 划分了:5.86GB 按SUN SOLARIS 安装要求,默认s7分区是给/export/home的。
    c0t0d0s3  划分了100MB用来做disksuite metadevice database 数据库区。

用disksuite镜像根盘步骤:

1,先确定硬件系统满足镜像条件:
   
  源盘与目标盘大小最好一致,至少目标盘要大于源盘。
  如新盘加入系统,请先保证系统能识别新盘,可用以下命令:

 #devfsadm    查找新安装的硬盘

 #format      查看disk

2,用format命令创建metadevice 状态数据库,这些数据库必须驻留在一个引导磁盘的专用分区上, 当然如果在安装新系统时以对DISK进行了分区,并在分区时划出一个分区,最好为S3,S4也可以,这时要保证被镜像的磁盘分区表必须是与引导磁盘相同。把引导磁盘的分区表复制到镜像磁盘。使用下列命令: 

# prtvtoc /dev/rdsk/c0t0d0s2 | fmthard -s - /dev/rdsk/c0t1d0s2

3,使用Disksuite进行配置
首先要创建状态数据库复本。最少要创建两个或两个以上的数据库复本。用2中的命令我们以经共有了2个用来保存数据库复本的磁盘分区c0t0d0s3 和c0t1d0s3,现在我们将在2个分区中分别为每个分区创建3个数据库复本,总计是6个复本。状态数据库复本存储着DiskSuite的配置和状态信息。我们可以使用下列命令去创建这个数据库复本。 

 (1) #metadb -a -f -c 3 /dev/dsk/c0t0d0s3 /dev/dsk/c0t1d0s3

     #metadb -i                *这个命令可以查询数据库状态。

 (2) 创建文件系统分区的镜像
   
   首先我们先对1个磁盘做一个单向的镜像,稍候我们追加第2个磁盘去镜像。设备编号(d##) 是任意的。这里为了方便管理,我们须对镜像设备编号做个约定: 

d10 – 表示第1块磁盘的镜像设备名。 

d20 – 表示第2块磁盘的镜像设备名。 

d30 – 表示镜像中所包含第1块磁盘的镜像设备和第2块磁盘的镜像设备的总镜像设备。
 
metainit 命令被用来创建磁盘0号分区(c0t0d0s0,root分区 “/”文件系统)的镜像:

  1,#metainit -f d10 1 1 c0t0d0s0 

  2,#metainit -f d20 1 1 c0t1d0s0   

  3,#metainit d30 -m d10

在上列命令中的“-f”参数表示强迫metainit 命令继续,即使是这些分区之一包含了一个被挂载的文件系统或正在被使用的交换分
区。 命令“# metainit -f d10 1 1 c0t0d0s0”表示为root分区创建一个一对一的级联。 最后一条命令表示创建metadevice镜像并且把镜像设备d10 附加到d30。也就是d30是mirror,而d10就是d30的子镜像submirror。
 

下一步是要更新/etc/vfstab 文件和/etc/system file。不能用手工编辑 /etc/vfstab或/etc/system文件。可以使用metaroot 命令,做之前,请一定要先做vfstab文件和system文件的备份:

 #cp /etc/vfstab /etc/vfstab.bak

 #cp /etc/system /etc/system.bak
 
 #metaroot d30

然后我们查看/etc/vfstab,可以能看到“/”文件系统将被挂载到/dev/md/dsk/d30上而不是挂载到/dev/dsk/c0t0d0s0上。
 
 5,创建其它文件系统的镜像
 
swap 文件系统(在硬盘c0t0d0 的s1分区上这要和你安装时的分区内容一致)。  : 

# metainit -f d11 1 1 c0t0d0s1
 
# metainit -f d21 1 1 c0t1d0s1
 
# metainit d31 -m d11 

   注:如分区时并未指明分区 /var /opt 文件系统的挂接分区,只做指明的分区镜像!


/export/home 文件系统(在硬盘c0t0d0的s7分区上这要和你安装时的分区内容一致)。

# metainit -f d17 1 1 c0t0d0s7 

# metainit -f d27 1 1 c0t1d0s7 

# metainit d37 -m d17 

  
6、编辑/etc/vfstab文件,编辑之后这个新的/etc/vfstab文件应该类似于这样: 

# vi /etc/vfstab 

#device#to mount Deviceto fsck Mountpoint FStype Fsckpass Mountat boot mount options 

#/dev/dsk/c1d0s2 /dev/rdsk/c1d0s2 /usr ufs 1 yes - 
FD - /dev/fd fd - no - 
/proc - /proc proc - no - 
/dev/md/dsk/d31 - - swap - no - 
/dev/md/dsk/d30 /dev/md/rdsk/d30 / ufs 1 no - 
/dev/md/dsk/d37 /dev/md/rdsk/d37 /export/home ufs 2 yes - 
swap - /tmp tmpfs - yes - 

7、禁止无害的消息(可选)被禁止掉的这条信息是:"WARNING: forceload of misc/md_hotspares failed". 
    
   # metainit hsp001 

8、重新引导允许系统去重新挂载镜像 

# lockfs -fa


# init 6 

下列的警告住处是无害的,可以忽略不记: 
WARNING: forceload of misc/md_trans failed 
WARNING: forceload of misc/md_raid failed 
WARNING: forceload of misc/md_hotspares failed 

以后上面这些信息可以在/etc/system里面注释掉就不会出现了!!

追加第二个子镜像设备到镜像。这样磁盘上的数据就会从引导磁盘上与已经镜像的磁盘进行同步 

9、 

# metattach d30 d20 

运行metastat -t 检查这个同步的进程  

10、 

# metastat d30 

现在可以追加其它的镜像设备了。 

11、 

# metattach d31 d21 
 
# metattach d37 d27 

运行metastat -t 检查这些进程 


12、生成可自切换的能启动的镜像磁盘 

生成引导块 

# installboot /usr/platform/`uname -i`/lib/fs/ufs/bootblk /dev/rdsk/c0t1d0s0

回到ok提示符下(用笔记本,或PC上的终端仿真软件请按Ctrl+Break从solaris操做系统状态可回到ok提示符下,如用sun 工作站或键盘可用stop+A回到OK装态)修改启动值,把被镜像磁盘列入备用启动中: 

{0} ok printenv            *查看obp参数,注意 boot-device 项的参数,未修改前默认为 disk。

{0} ok devalias            *查看设备别名,我们可以看到,第2块盘被命名为 disk1 。

{0} ok setenv boot-device disk disk1    *设置 boot-device 把 disk1 加入。

{0} ok reset-all           *重启




用disk suite恢复镜像盘的步骤:

假如c0t0d0盘坏掉,则停机更换硬盘后需做恢复工作,如下:

先在OK状态下用镜像的盘启动到单用户模式下:

{0} ok boot disk1 -s

在单用户下执行:

#metadb -d c0t0d0s3   *删除原来在c0t0d0s3上创建的metadevices database。

#prtvtoc /dev/rdsk/c0t1d0s2 | fmthard -s - /dev/rdsk/c0t0d0s2 *给新盘创建和镜像盘一样的分区表。

#metadb -a -f -c 3 c0t0d0s3    *重新在新盘上创建metadevices database。

#halt                           *停机,回到OK状态下。

{0} ok boot disk1               *用镜像盘启动系统。


#metareplace -e d30 c0t0d0s0

#metareplace -e d31 c0t0d0s1

#metareplace -e d37 c0t0d0s7     *镜像恢复。

#metastat -t   *可以查看镜像恢复进度。

恢复完成后,可在OK状态下用:

{0} ok boot disk

从恢复盘启动系统,如正常启动,则恢复成功。


以上是我实际工作中的一点经验,写出来与大家分享,感谢CU提供交流的平台,感谢CU上面上的各位大侠使我从中得到很多有用的资料和经验鉴戒,才能完成这个文档。

 ePlayer 回复于:2005-01-11 11:09:36
好贴,请问笑傲侠客楼主在广州吗?我是菜鸟,能否帮忙安装v880,我的QQ是463259

 bear 回复于:2005-01-11 13:07:20
这一步不用做吧
12、生成可自切换的能启动的镜像磁盘 

生成引导块 

# installboot /usr/platform/`uname -i`/lib/fs/ufs/bootblk /dev/rdsk/c0t1d0s0

 goatzhou 回复于:2005-01-11 14:23:10
[quote:de950a84fb="bear"]这一步不用做吧
12、生成可自切换的能启动的镜像磁盘 

生成引导块 

# installboot /usr/platform/`uname -i`/lib/fs/ufs/bootblk /dev/rdsk/c0t1d0s0[/quote:de950a84fb]

当然要做,不然你的镜像盘可启动不了系统

 x3y4z5 回复于:2005-01-11 20:56:22
嗬嗬,楼上的,这一步不用作,可以做做实验。

 笑傲 回复于:2005-01-12 08:05:29
[quote:0ef8bba623="ePlayer"]好贴,请问笑傲侠客楼主在广州吗?我是菜鸟,能否帮忙安装v880,我的QQ是463259[/quote:0ef8bba623]

呵呵,不好意思,我不在广州,我主要做fujitsu的小型机和存储售后安装和维护的,您可以在坛子里找,这里高手很多,相信有在广州的!

 bear 回复于:2005-01-12 09:08:09
[quote:4f2c362733="goatzhou"]

当然要做,不然你的镜像盘可启动不了系统[/quote:4f2c362733]
这一步是用ufsrestore恢复系统后才要做的,用镜像软件都不需要操作这个步骤

 jjspoty 回复于:2005-01-20 16:52:59
好贴,虽然我看不懂,但是感觉很专业~!

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网