免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1907 | 回复: 0
打印 上一主题 下一主题

Disksuite的安装、使用和恢复 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-10-16 14:22 |只看该作者 |倒序浏览


Disksuite的安装、使用和恢复
(一) 安装Disksuite:
(1) Disksuite4.2
操作系统  : solaris7
软件包位置: easy access server
执行路径  : /usr/opt/SUNWmd/sbin
配置路径  : /etc/opt/SUNWmd/
设备名目录: /dev/md/dsk  /dev/md/rdsk
(2) Disksuite4.2.1
  操作系统  : solaris8
  软件包位置: /sol_8_401_sparc_2/Solaris_8/EA/products/DiskSuite_4.2.1
  执行路径  : /usr/sbin
  配置路径  : /etc/lvm
  设备名目录: /dev/md/dsk  /dev/md/rdsk
图形界面可以执行installer程序,命令行状态可用pkgadd安装。
安装结束后reboot,root用户登陆运行disksuite软件。
(二) 图形界面运行
# metatool &
1.Trans 2.RAID 3.MIRROR 4.Concat/Stipe 5.Hot-spare
使用左键选中,中键拖动,右键激活
  (1)建立metadb状态数据库
1) 首先在每个做RAID的磁盘上划出一个10MB的分区(如:S7)
2) 拖动s7分区创建metaDB
3) 提交
  (2)建立Raid对象
     1) 建立Concat/Stripe/RAID5
          选择RAID对象,将分区拖入对象,提交
     2) 建立镜象
          选择Concat/Stripe对象,分别将盘1,盘2拖入目标
          选择MIRROR对象,分别将上列创建的对象拖入目标
3) 建立hot-spare
          选择hot-spare对象,将分区拖入对象,提交
  完成后,将hot-spare-pool分配给相关RAID
(3) 在metatool界面内可以看到RAID的完成情况,也可以运行
# /usr/sbin/metastat [RAID_name]
(4) RAID完成后,可做文件系统并挂接:
# newfs /dev/md/rdsk/RAID_name
# mount /dev/md/dsk/RAID_name /mnt
(三) 命令行方式:
(1) 创建metadb状态数据库:
# /metadb -a -f dev_name1 dev_name2 ...
-a: 增加状态数据库
-d: 删除状态数据库
-f: 强制执行状态数据库的操作
-e count: 一个分区建立多个状态数据库
               # metadb -a -c 2 c1t2d0s3 (添加状态数据库;-c 2 option adds two state database)
(2) 建立concatenation:
# metainit d1 3 1 dev_name1 1 dev_name2 1 dev_name3
(3) 建立stripe:
# metainit d2 1 3 dev_name1 dev_name2 dev_name3
(4) 建立mirror:
# metainit d21 1 1 dev_name1  (sub_mir1)
# metainit d22 1 1 dev_name2  (sub_mir2)
# metainit d20 -m d31
# metattach d20 d22
(5) 建立RAID5:
# metainit d10 -r dev_name1 dev_name2 ...
(6) 建立hot-spare:
# metainit hsp001 dev_name1 dev_name2 ... (建立HSP)
# metaparam -h hap001 d21  (将HSP交RAID使用)
# metaparam -h hap001 d22  (将HSP交RAID使用)
增加hsp:
# metahs -a hsp001 d21
改变hsp:
# metastat d21
d21: RAID
   State: Okay        
   Hot spare pool: hsp001
...
# metaparam -h hsp002 d21
# metastat d21
d21: RAID
   State: Okay        
   Hot spare pool: hsp002
...
(四) 建立系统盘镜像
镜像盘容量要大于或等于系统盘
(1) 建立concat of root
# metainit -f d11 1 1 c0t0d0s0
d11: Concat/Stripe is setup
(2) 建立concat of mirror partition
# metainit d12 1 1 c1t3d0s0
d12: Concat/Stripe is setup
(3) 建立镜像
# metainit d10 -m d11
d10: Mirror is setup
(4) 建立根镜像
# metaroot d10
# lockfs -fa (锁定文件系统)
# reboot (TAB表将被自动修改)
...
# metattach d10 d12
d10: Submirror d12 is attached
# ls -l /dev/rdsk/c1t3d0s0
lrwxrwxrwx   1 root     root          88 Feb  8 15:51 /dev/rdsk/c1t3d0s0 ->../../devices/iommu@f,e0000000/vme@f,df010000/SUNW,pn@4d,1080000/ipi3sc@0,0/id@3,0:a,raw
(5) 在PROM下修改启动设备名,使镜像盘也能够启动系统
OK> setenv boot-device boot-disk mir-disk
(6) 实例 -- usr or swap的镜像
# metainit -f d12 1 1 c0t3d0s6
d12: Concat/Stripe is setup
# metainit d22 1 1 c1t0d0s6
d22: Concat/Stripe is setup
# metainit d2 -m d12
d2: Mirror is setup
# vi /etc/vfstab
# reboot
...
# metattach d2 d22
d2: Submirror d22 is attached
(7) TAB表的修改
1) /usr的镜像
/dev/dsk/c0t3d0s6 /dev/rdsk/c0t3d0s6 /usr ufs 1 yes -
应改为:/dev/md/dsk/d2 /dev/md/rdsk/d2 /usr ufs 1 yes -
2) swap的镜像
/dev/dsk/c0t0d0s1 - - swap - no -
应改为:/dev/md/dsk/d1 - - swap - no -
(五) 状态查询
(1) metadb状态
# metatool &
Okey/ Attention/ Critical
# metadb -i
       flags           first blk       block count
    a m  p  luo        16              1034            /dev/dsk/c0t8d0s4
    a    p  luo        16              1034            /dev/dsk/c0t8d0s7
    a    p  luo        16              1034            /dev/dsk/c0t8d0s6
o - replica active prior to last mddb configuration change
u - replica is up to date
l - locator for this replica was read successfully
c - replica's location was in /etc/lvm/mddb.cf
p - replica's location was patched in kernel
m - replica is master, this is replica selected as input
W - replica has device write errors
a - replica is active, commits are occurring to this replica
M - replica had problem with master blocks
D - replica had problem with data blocks
F - replica had format problems
S - replica is too small to hold current data base
R - replica had device read errors
(2) RAID及其组成的状态
# metastat [RAID_name]
1) okey: 正常状态,RAID可用
2) maintenance: 单个磁盘有故障,需维护
3) maintenance/last erred: 有超过一个磁盘故障,需维护。但数据可能是假的
(六) RAID故障的恢复(MIRROR or RAID 5)
(1) 数据备份
(2) 将新磁盘分区与故障盘保持一致
(3) 用新盘做替换
               # metareplace -e RAID_name dev_name_old(在原有的位置替代磁盘)
# metareplace [-f] RAID_name dev_name_old dev_name_new(用别的位置磁盘替代)
-f选项用于maintenance/last erred状态,但仍有可能无法成功完成
(4) 此时RAID处于syncing状态,并显示百分比
# metastat RAID_name
(5) syncing完成后,recovery即完成
(七) OS崩溃时RAID的恢复
(1) Disksuite有一个配置文件/etc/lvm/md.tab,手工将RAID的建立过程记录于该文件中并备份到它处
(2) OS崩溃后,重新安装OS及Disksuite
(3) 重新生成metadb
(4) 将备份的md.tab文件传至/etc/lvm下
(5) 检查/etc/lvm/md.tab文件的语法
# metainit -n -a
(6) 建立/etc/lvm/md.tab中所有的RAID
# metainit -a
(7) 完成后,可直接挂接文件系统,原数据仍然存在
   (8) 注意事项
1) 对于MIRROR,需要手工加入sub_mir2,执行
# metattach d20 d22,
2) 对于RAID5,需用-k选项,否则会初始化RAID5,丢失数据
# metainit d10 -r dev_name1 dev_name2 dev_name3 -k -o 3
-o 3: 组成RAID5的设备数量
3) 附一个md.tab文件
(八) 失效恢复
(1) vfstab失效恢复
1) fsck /dev/md/rdsk/d0
2) mount -o rw /dev/md/dsk/d0 /
3) metaroot d0
4) reboot
(2)无充分metadb恢复
1) boot
2) metadb -i (查看metadb)
3) metadb -d -f c1t2d0s3 (删除metadb)
4) metadb -i (查看metadb)
5) reboot
6) metadb -a -c 2 c1t2d0s3 (添加状态数据库;-c 2 option adds two state database)
   
(3)boot device失效
1) boot disk2
    2) metadb      (查看坏的state database)
     3) metastat    (查看坏的sub-mirror)
     4) halt        (修复坏硬盘)
     5) metadb -d c0t3d0s3   (删除坏的state database)
     6) metadb -c 2 -a c0t3d0s3   (重新建立新的state database)
     7) metareplace -e d0 c0t3d0s0   (替换镜像盘)



raid 5 数据恢复策略二。
就算系统重装了也是可以恢复的,前提是记得以前的RAID-5结构,没有对RAID-5的成员盘进行过写入。
1。需要备份原来系统的md.cf文件。也就是metastat -p的输出
2。在新系统里边建立metadb
3。把原来备份出来的md.cf文件里边的关于后四个盘RAID5的信息写到新系统里的/etc/lvm/md.cf文件里头
   并按照这个文件里头的参数重新建立RAID5卷
如:
原来系统md.cf文件的内容
root@erpb # more md.cf
# metadevice configuration file
# do not hand edit
d1 -m d12 1
d12 1 1 c1t1d0s0
d2 -m d22 1
d22 1 1 c1t1d0s1
d3 -r c1t2d0s0 c1t3d0s0 c1t4d0s0 c1t5d0s0 -k -i 64b
d4 -r c1t2d0s1 c1t3d0s1 c1t4d0s1 c1t5d0s1 -k -i 64b
在新系统里边建立metadb并

d3 -r c1t2d0s0 c1t3d0s0 c1t4d0s0 c1t5d0s0 -k -i 64b
d4 -r c1t2d0s1 c1t3d0s1 c1t4d0s1 c1t5d0s1 -k -i 64b
这两句加到新系统的md.cf文件里头
然后执行
#metainit d3 -r c1t2d0s0 c1t3d0s0 c1t4d0s0 c1t5d0s0 -k -i 64b
#metainit  d4 -r c1t2d0s1 c1t3d0s1 c1t4d0s1 c1t5d0s1 -k -i 64b
#metastat查看一下状态,正常情况下每个盘的状态都是ok的
这个时候就可以把原来的盘挂接起来了,看看里边的数据吧:)


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/23862/showart_1308818.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP