Solaris 做Raid1小结!

[复制链接]
查看11 | 回复8 | 2011-11-1 16:19:41 | 显示全部楼层 |阅读模式
由于系统安全性的需求,对SUN Enterprise 220R Server(2*18.2GB Dsik)做一个在Solarsi8下使的RAID1。在网上找过很多文章做指导,但是有些出入和错误的地方,有的也不一定说的出所以然来,只是做通了,写下来供大家参考。
抛砖引玉,转载请写明出处和作者,谢谢!
一、Disk分布情况:
0:c0t0d0
1:c0t1d0
注:0,1做镜像,即Raid1;
系统盘(c0t0d0)分区及镜像盘(c0t1d0)情况:
c0t0d0s0(d10)d0c0t1d0s0(d20)/
9534M
c0t0d0s1(d11)d1c0t1d0s1(d21)swap
2049M
c0t0d0s2
c0t1d0s2
overlap
整个盘
c0t0d0s3(d13)d3c0t1d0s3(d23)/usr
3584M
c0t0d0s6(d16)d6c0t1d0s6(d26)/metadb
50M
c0t0d0s7(d17)d7  c0t1d0s7(d27)/export/home2048M
二、安装DiskSuite套件:
系统安装完成后,使用Solarsi8 software 2 of 2安装DiskSuite_4.2.1软件,安装路径:/cdrom/cdrom0/Solaris_8/EA/installer & 选择默认安装就可以。
三、镜像(root用户下进行):
1、调整第二块硬盘(c0t1d0)的文件分区表调整为和引导盘一致
#prtvtoc /dev/rdsk/c0t0d0s2|fmthard –s – /dev/rdsk/c0t1d0s2
fmthard:New volume table of contents now in place
2、准备DiskSuite使用的metadb空间
#umount /metadb
**50MB小空间的用处,类似于交换空间
#rm –r /metadb
#vi /etc/vfstab
将下面这行注释掉或删除,如下:
#/dev/dsk/c0t0d0s6/dev/rdsk/c0t0d0s6 /metadb ufs 1yes–
3、制作Mirror
①先生成replicas,供DiskSuite内部用
#metadb –a –f –c 3 c0t0d0s6 c0t1d0s6
#metadb
②Creating a mirror from /
#metainit -f d10 1 1 c0t0d0s0
#metainit -f d20 1 1 c0t1d0s0
#metainit d0 -m d10
#metaroot d0
③Creating a mirror from swap
#metainit -f d11 1 1 c0t0d0s1
#metainit -f d21 1 1 c0t1d0s1
#metainit d1 -m d11
④Creating a mirror from /var
#metainit -f d13 1 1 c0t0d0s3
#metainit -f d23 1 1 c0t1d0s3
#metainit d3 -m d13
⑤Creating a mirror from /export/home
#metainit -f d17 1 1 c0t0d0s7
#metainit -f d27 1 1 c0t1d0s7
#metainit d7 -m d17
⑥编辑 /etc/vfstab 文件
/dev/dsk/c0t0d0s1 - - swap- no-
/dev/dsk/c0t0d0s0 /dev/rdsk/c0t0d0s0/ ufs 1 no-
/dev/dsk/c0t0d0s3 /dev/rdsk/c0t0d0s3/varufs 1 no-
/dev/dsk/c0t0d0s7 /dev/rdsk/c0t0d0s7/export/homeufs 2yes -
swap
-
/tmptmpfs - yes -
更改为:
/dev/md/dsk/d1 - - swap- no-
/dev/md/dsk/d0 /dev/md/rdsk/d0/ ufs 1 no-
/dev/md/dsk/d3 /dev/md/rdsk/d3/varufs 1 no-
/dev/md/dsk/d7 /dev/md/rdsk/d7/export/homeufs 2 yes -
swap
-
/tmptmpfs - yes -
⑦文件系统激活
#lockfs –fa
#reboot
⑧文件系统关联
#metattach d0 d20
#metattach d1 d21
#metattach d3 d23
#metattach d7 d27
⑨查看同步状态
#metastat d0
#metastat d1
#metastat d3
#metastat d7
也可以通过DiskSuite的图形化工具查看:
#metatool
100%后,每个文件系统Status:OK,就算镜像完成。
注意:⑧步骤中的每步千万不可拆分到前面几步中分别执行,那样,在执行完一个文件系统后,后续的文件系统就不能metainit,系统提示资源被占用。
四、镜像盘的boot引导:
①启动信息
#installboot /usr/platform/`uname –i`/lib/fs/ufs/bootblk /dev/rdsk/c0t1d0s0
②修改EEPROM
推荐进入OK模式修改
#ls –l /dev/dsk/c0t0d0s0
**获得启动参数
lrwxrwxrwx 1 root root
41 Jun 14 11:08 /dev/dsk/c0t0d0s0 -> ../../devices/pci@1f,4000/scsi@3/sd@0,0:a
#init 0
ok devalias (察看启动设备)
ok nvalias rootdisk /pci@1f,4000/scsi@3/disk@0,0
ok nvalias mirrdisk /pci@1f,4000/scsi@3/disk@1,0
ok setenv boot-device rootdisk mirrdisk disk:a
③测试
ok boot rootdisk
**系统正常启动,找到启动文件
ok boot mirrdisk
**系统正常启动,找到启动文件
注意:配置nvalias的时候,后面的‘disk@*,0’处,有些文档写的是‘sd@*,0’,但是经过测试,是不能正常启动的。
回复

使用道具 举报

千问 | 2011-11-1 16:19:41 | 显示全部楼层
GOOD!
Thanks for experience sharing...


回复

使用道具 举报

千问 | 2011-11-1 16:19:41 | 显示全部楼层
用过吗?
回复

使用道具 举报

千问 | 2011-11-1 16:19:41 | 显示全部楼层
其实 disksuite 手册写的很清楚, 好好看书, 不会有问题。
另外鼓励你用命令行而不是GUI ,这样对你理解很有好处。
>> #metadb –a –f –c 2 c0t0d0s7 c0t1d0s7


至少要 3 个 replica , 否则 一个 replica损坏的话, disksuite起不来。
>>注意:配置nvalias的时候,后面的‘disk@*,0’处,有些文档写的是‘sd@*,0’,但是经过测试,是不能正常启动的。
物理 device tree 不存在像 *这样的通配符, disk@*,0 绝对起不来,这不需要做实验也该知道.
另外, 应把大部分命令写入 meta.tab 中,方便运行.
回复

使用道具 举报

千问 | 2011-11-1 16:19:41 | 显示全部楼层
最初由 lightspeed 发布
[B]其实 disksuite 手册写的很清楚, 好好看书, 不会有问题。
另外鼓励你用命令行而不是GUI ,这样对你理解很有好处。
>> #metadb –a –f –c 2 c0t0d0s7 c0t1d0s7


至少要 3 个 replica , 否则 一个 replica损坏的话, disksuite起不来。
>>注意:配置nvalias的时候,后面的‘disk@*,0’处,有些文档写的是‘sd@*,0’,但是经过测试,是不能正常启动的。
物理 device tree 不存在像 *这样的通配符, disk@*,0 绝对起不来,这不需要做实验也该知道.
另外, 应把大部分命令写入 meta.tab 中,方便运行. [/B]

第一点:这个我到没注意,下次试试看,呵呵;
第二点:* 实际上是我懒得写了,原来是0和1的,我只是想重点说明‘disk’和‘sd’的差异。用sd我始终是不行。
回复

使用道具 举报

千问 | 2011-11-1 16:19:41 | 显示全部楼层
>>第二点:* 实际上是我懒得写了,原来是0和1的,我只是想重点说明‘disk’和‘sd’的差异。用sd我始终是不行。
关键是在 OBP 下查 真正的device tree,是什么就写什么, 不同的硬件平台是不同的.
再 nvalias 后,应运行nvstore, 可能你漏写了.
回复

使用道具 举报

千问 | 2011-11-1 16:19:41 | 显示全部楼层
最初由 lightspeed 发布
[B]>>第二点:* 实际上是我懒得写了,原来是0和1的,我只是想重点说明‘disk’和‘sd’的差异。用sd我始终是不行。
关键是在 OBP 下查 真正的device tree,是什么就写什么, 不同的硬件平台是不同的.
再 nvalias 后,应运行nvstore, 可能你漏写了. [/B]

如何查真正的 device tree?
nvstore确实忘了,不过现在用的都没问题,呵呵。
回复

使用道具 举报

千问 | 2011-11-1 16:19:41 | 显示全部楼层
nvalias 的 default 行为自动保存在 nvramrc 中了(OBP老版本可能不同)。 nvststore 可以不用,但在 nvedit 后 必须 nvsotre.
查 device tree
1.OKshow-devs
2. # format
当然还有别的办法。关于 disksuite ,如果我有时间的话, 我会提个经典问题。
回复

使用道具 举报

千问 | 2011-11-1 16:19:41 | 显示全部楼层
最初由 lightspeed 发布
[B]nvalias 的 default 行为自动保存在 nvramrc 中了(OBP老版本可能不同)。 nvststore 可以不用,但在 nvedit 后 必须 nvsotre.
查 device tree
1.OKshow-devs
2. # format
当然还有别的办法。关于 disksuite ,如果我有时间的话, 我会提个经典问题。 [/B]

thanks!


有机会试试
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行