Disksuite的安装、使用和恢复 - Solaris [@more@]
| Disksuite的安装、使用和恢复 - Solaris |
| 文章来源: 文章作者: 发布时间:2006-10-16 字体: [大 中 小] |
| Disksuite的安装、使用和恢复
作者:unixsoft 发表时间:2003/01/12 04:35pm
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) 完成后,可直接挂接文件系统,原数据仍然存在 ( 注意事项 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 (替换镜像盘) < 发表于: 2006-1-17 14:14 主题: 这篇不错 < 发表于: 2006-1-17 14:18 主题: 欢迎楼主写出更多的好文章. < 发表于: 2006-1-17 15:08 主题: 原创的话就赞一个,不是的话也收藏了
< 发表于: 2006-2-20 13:41 主题: "六) RAID故障的恢复(MIRROR or RAID 5) (1) 数据备份 (2) 将新磁盘分区与故障盘保持一致"
这第2步怎么做啊,可以写详细步骤吗? < 发表于: 2006-4-17 15:27 主题: 3x,ding < 发表于: 2006-4-18 09:23 主题: 非常好呀 < 发表于: 2006-5-12 15:04 主题: 毛毛,写得不错啊,我说你去做个教程多好~~~~ < 发表于: 2006-5-22 12:54 主题: 写的挺好的,就是太简单了点。。。有很多地方说的不大详细 < 发表于: 2006-8-5 11:32 主题:补充 在分区副本创建时 #prtvtoc /dev/rdsk/c1t1d0s2(*new disk*) >vtoc #fmthard -s vtoc /dev/rdsk/c1t0d0s2 #format 查看其分区情况 |
|
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/620862/viewspace-891244/
,如需转载,请注明出处,否则将追究法律责任。