在已有系统上用 disksuite 做 RAID1 在已有系统上用 disksuite 做 RAID1 单位现有一台服务起 , 是 Sun Fire V240, 用作一个业务系统的 数据库 服务器 ," name="description" />

在已有系统上用disksuite做RAID1

发表于:2007-07-04来源:作者:点击数: 标签:
MI LY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">在已有系统上用 disksuite 做 RAID1 在已有系统上用 disksuite 做 RAID1 单位现有一台服务起 , 是 Sun Fire V240, 用作一个业务系统的 数据库 服务器 ,

MILY: 宋体; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">在已有系统上用disksuiteRAID1

在已有系统上用disksuiteRAID1

       单位现有一台服务起,Sun Fire V240,用作一个业务系统的数据库服务器,上面安装有Oracle9i,最近业务开始试运行了,但是发现该系统在初次安装的时候(系统不是本人做的,我是后来接手这台机器),没有做raid1,这样具有很大的危险性,如果系统盘损坏了,岂不是所有的用户信息数据都会丢失.于是赶紧想补救措施.登录机器上一看,还好,第二块硬盘根本没有使用,swap分区有4G,,而且系统盘上s7分区还没有使用(天助我也,如果安装系统时所有分区都使用了,那就麻烦了,metadb的分区就无法创建了),于是决定采用solaris9 自带的disksuite做软RAID1,swap上分出来100MB来做Replice Slice.尽快行动,乘项目还在试运行阶段,即便系统改造过程中出现什么问题,也不会带来太大的负面影响.

.系统信息如下

       Sun Fire V240, Memory size: 2GB,CPU:2X1.28MHz,Disk:2X73Gb

       OS:Solaris 5.9  

       分区信息如下

0       root    wm    1036 -  1241     1023.56MB    (206/0/0)     2096256

  1       swap    wu       0 -  829        4.00GB    (804/0/0)     8181504

  2     backup    wm       0 - 14086       68.35GB    (14087/0/0) 143349312

  3        usr    wm    1861 -  3097        6.00GB    (1237/0/0)   12587712

  4        var    wm     830 -  1035     1023.56MB    (206/0/0)     2096256

  5        opt    wm    1242 -  1860        3.00GB    (619/0/0)     6298944

  6      home    wm   3098 - 14086       53.32GB    (10989/0/0) 111824064

  7 unassigned  

.创建Replice Slice分区

       #init 0   /进入ok状态

       ok boot –s   /进入单用户模式

       swap –l     /查看一下swap信息

       swap -d slice   /暂时删除swap, slice=”/dev/dsk/c1t0d0s1”,不同的机器会有所不同

       swap –l    /再看一下,确认swap已经暂时被删除

然后使用format命令,重新分配swap的大小,分了100Mc1t0d0s7,用作Replice Slice

swap –a slice   /激活swap分区

ok,上面的修改没有问题后,现在要把系统盘的所有分区信息复制到第二块硬盘上

       #prtvtoc /dev/rdsk/c1t0d0s2|fmthard –s – /dev/rdsk/c1t1d0s2

format命令 选择第二快盘看一下,分区是否和第一块一致.

.上面的步骤没有报错的话,我们可以开RAID1的创建工作了

       分别对每个分区做镜像

       3.1先生成replicas,这是DiskSuite内部用的。

#metadb –a –f –c 3 c1t0d0s7 c1t1d0s7   /每个盘上创建3replicas

       3.2 开始对/目录做镜像

              #metainit –f d10 1 1 c1t0d0s0

#metainit d20 1 1 c1t1t0s0

#metainit d0 –m d10

#metaroot d0

#lockfs –fa

#reboot

#metattach d0 d20  

       3.3 开始对swap分区做镜像

              #metainit –f d11 1 1 c1t0d0s1

#metainit d21 1 1 c1t1t0s1

#metainit d1 –m d11

#vi /etc/vfstab

/dev/dsk/c1t0d0s1 - - swap – no –

修改成如下面所示:

/dev/md/dsk/d1 - - swap – no -

#reboot

#metattach d1 d21   

       3.4 /usr分区做镜像

              #metainit –f d13 1 1 c1t0d0s3

#metainit d23 1 1 c1t1t0s3

#metainit d3 –m d13

#vi /etc/vfstab

/dev/dsk/c1t0d0s3 /dev/rdsk/c1t0d0s3 /usr ufs 1 yes –

修改成如下面所示: 

/dev/md/dsk/d3 /dev/md/rdsk/d3 /usr ufs 1 yes –

#reboot

#metattach d3 d23      

       3.5 /var分区做镜像

#metainit –f d14 1 1 c1t0d0s4

#metainit d24 1 1 c1t1t0s4

#metainit d4 –m d14

#vi /etc/vfstab

/dev/dsk/c1t0d0s4 /dev/rdsk/c1t0d0s4 /var ufs 1 yes –

修改成如下面所示:

/dev/md/dsk/d4 /dev/md/rdsk/d4 /var ufs 1 yes –

#reboot

#metattach d4 d24

       3.6 /opt分区做镜像

              #metainit –f d15 1 1 c1t0d0s5

#metainit d25 1 1 c1t1t0s5

#metainit d5 –m d15

#vi /etc/vfstab

/dev/dsk/c1t0d0s5 /dev/rdsk/c1t0d0s5 /opt ufs 1 yes –

修改成如下面所示:

/dev/md/dsk/d5 /dev/md/rdsk/d5 /opt ufs 1 yes –

#reboot

#metattach d5 d25

       3.7 /home目录分区做镜像

              #metainit –f d16 1 1 c1t0d0s6

#metainit d26 1 1 c1t1t0s6

#metainit d6 –m d16

#vi /etc/vfstab

/dev/dsk/c1t0d0s6 /dev/rdsk/c1t0d0s6 /home ufs 1 yes –

修改成如下面所示:

/dev/md/dsk/d6 /dev/md/rdsk/d6 /home ufs 1 yes –

#reboot

#metattach d6 d26

每个分区的镜像已经做完,待数据同步完毕后,还要设置启动设备

.设置启动设备

       ok状态下   

ok devalias                /查看一下启动设备

分别为两块硬盘建立一个名称.

ok nvalias rootdisk /pci@1c,600000/scsi@2/sd@0,0  

ok nvalias mirrdisk /pci@1c,600000/scsi@2/sd@1,0

ok setenv rootdisk mirrdisk

然后测试一下,分别boot rootdiskboot mirrdisk,如果都能正常进入系统,基本可以算成功了,做为这台服务器的管理员,我也可以安心了睡觉,不用担心突然系统崩溃或者硬盘损坏了~~J

 

后记:技术上难度不大,关键是系统早就安装好,而且已经运行了一短时期,存储了不少的数据了.目的就是提供一个思路,对有漏动的系统,发现后一定要急时处理,免得以后寝室难安.

 

                        

      

原文转自:http://www.ltesting.net