当前位置:首页 > 服务器类 > Linux服务器 > > 在Linux下用软件实现RAID功能

在Linux下用软件实现RAID功能

点击次数:29 次 发布日期:2008-11-29 14:10:27 作者:源代码网
源代码网推荐
源代码网推荐
源代码网推荐  数据安全性是人们在使用计算机中最重要的问题之一。通常情况下,人们会在服务器环境中采用硬盘镜像技术,以达到数据的双重备份。同样,在Linux环境下,我们也可以采用这种技术。
源代码网推荐  
源代码网推荐  在Linux环境下,采用Raidtools工具,不仅可以将两个硬盘进行镜像,还可以制作软RAID0、RAID1、RAID5。说是软RAID,是因为通常情况下,RAID盘是通过专用的RAID卡进行的,而在Linux环境下,可以利用Raidtools软件实现RAID功能,所以称为软RAID。本文介绍根据不同的Linux版本,建立并使用RAID盘的几种方法。
源代码网推荐  
源代码网推荐  一、较早的Linux版本
源代码网推荐  自行下载并编译Raidtools软件包,较早版本的Raidtools软件包名为md,现在已正式更名为Raidtools。下载地址:中国自由软件库。
源代码网推荐  
源代码网推荐  如果你已经从网上下载了Raidtools-0.41.tar.gz软件包,解压后,自行编译,步骤如下:
源代码网推荐  
源代码网推荐  $gunzip -d raidtools-0.41.tar.gz
源代码网推荐  
源代码网推荐  $tar -xvf raidtools-0.4.1.tar
源代码网推荐  
源代码网推荐  在使用Raidtools之前,首先要知道目前正在使用的核心是否支持md。如果你正在使用的核心是2.0.X,并且不是自己编译过的话,大多数情况下是支持软RAID的。如果不能确定,则应自己编译核心。在配置时,应选择对md的支持。确定了正在使用的核心支持RAID后,编译Raidtools软件包如下:
源代码网推荐  
源代码网推荐  $cd raidtools-0.41
源代码网推荐  
源代码网推荐  $./configure
源代码网推荐  
源代码网推荐  $make
源代码网推荐  
源代码网推荐  $make install ##make install在/dev下产生md0-md3共4个设备。
源代码网推荐  
源代码网推荐  单击OK按钮,完成安装。
源代码网推荐  
源代码网推荐  在使用Raidtools前,还需确定要使用的RAID的种类。目前使用Raidtools可以作RAID0、RAID1、RAID5。由于只有两块硬盘而无法使用RAID5,除了RAID5外,还可以选择作Linear模式或RAID0。笔者选择了作RAID0。以下为制作过程。
源代码网推荐  
源代码网推荐  1.建立RAID盘
源代码网推荐  
源代码网推荐  (1)关机,将两块小硬盘分别加到第一个IDE控制器的Slave接口上及第二个IDE控制器的Slave接口上(笔者这台机器上的CD-ROM接在第二个IDE控制器的Master上)。
源代码网推荐  
源代码网推荐  (2)加电启动系统,以Root登录,运行以下命令对硬盘进行分区:
源代码网推荐  
源代码网推荐  #fdisk /dev/hdb
源代码网推荐  
源代码网推荐  将全部硬盘划分成一个主分区,建⒁桓?dev/hdb1分区。
源代码网推荐  
源代码网推荐  #fdisk /dev/hdd
源代码网推荐  
源代码网推荐  同样,将全部硬盘划分成一个主分区,建立一个/dev/hdd1分区。
源代码网推荐  
源代码网推荐  (3)之后:
源代码网推荐  
源代码网推荐  #/sbin/mdcreate raid0 -c4k /dev/md0 /dev/hdb1 /dev/hdd1
源代码网推荐  
源代码网推荐  当然,为了提高访问速度,你可以将硬盘进行比较细致的划分,尽可能将分区合理分布在不同的硬盘上。然后,再用Mdcreate将它们组合成一个mdx(x:1,2,3)。
源代码网推荐  
源代码网推荐  2.使用RAID0盘
源代码网推荐  
源代码网推荐  (1)启动新建立的RAID盘:
源代码网推荐  
源代码网推荐  #/sbin/mdadd -ar
源代码网推荐  
源代码网推荐  (2)查看/proc/mdstats文件的内容,以检查RAID0的状态。
源代码网推荐  
源代码网推荐  #cat /proc/mdstats
源代码网推荐  
源代码网推荐  系统显示:
源代码网推荐  
源代码网推荐  personalities : [1 linear] [2 raid0]
源代码网推荐  
源代码网推荐  read―ahead not 8092 sectors
源代码网推荐  
源代码网推荐  md0 : active raid0 hdb1 hdd1 xxxx
源代码网推荐  
源代码网推荐  blocks 8k chunks
源代码网推荐  
源代码网推荐  md1 : inactive
源代码网推荐  
源代码网推荐  md2 : inactive
源代码网推荐  
源代码网推荐  md3 : inactive
源代码网推荐  
源代码网推荐  这表示,新建的RAID0已经可以正常运行了。
源代码网推荐  
源代码网推荐  为了使用新RAID盘,还应在新盘上建立新的文件系统,建立过程如下:
源代码网推荐  
源代码网推荐  #mke2fs /dev/md0 ##注:在新的存储设备上建立Ext2文件系统
源代码网推荐  
源代码网推荐  建立了新的文件系统,再将它Mount到根目录下的某个目录上,就可以正式使用了。安装方法如下:
源代码网推荐  
源代码网推荐  #mount  /dev/md0  /opt ##注:/opt为笔者在根分区建的一个Mount点
源代码网推荐  
源代码网推荐  若有必要,也可以用Raidtools建立RAID5,以提高数据的可靠性。
源代码网推荐  
源代码网推荐  3.自动执行RAID0的设置
源代码网推荐  
源代码网推荐  将RAID0的加载及文件系统的加挂全加入到Init.sysinit文件中,这样,只要系统一启动,首先就执行RAID,用户就不必再手工安装了。
源代码网推荐  
源代码网推荐  用户应将以下两个命令加入到Init.sysinit文件中。
源代码网推荐  
源代码网推荐  /sbin/mdrun -ar
源代码网推荐  
源代码网推荐  mount /dev/md0 /opt
源代码网推荐  
源代码网推荐  当然,如果你不觉得麻烦,也可以手工运行以上命令,以手动方式启动软RAID盘。
源代码网推荐  
源代码网推荐  二、较近的Linux版本
源代码网推荐  如果你安装的Linux版本较新,其中已经带有Raidtools工具,那么,就不必再下载软件并自己编译了。使用时可以这样处理:
源代码网推荐  
源代码网推荐  1.建立一个文件/etc/raidtab(以制作RAID0为例),文件内容如下:
源代码网推荐  
源代码网推荐  raiddev /dev/md0
源代码网推荐  
源代码网推荐  raid-level   0
源代码网推荐  
源代码网推荐  nr-raid-disks 2
源代码网推荐  
源代码网推荐  persistent-superblock 1
源代码网推荐  
源代码网推荐  chunk-size   4
源代码网推荐  
源代码网推荐  device     /dev/hdb1
源代码网推荐  
源代码网推荐  raid-disk    0
源代码网推荐  
源代码网推荐  device     /dev/hdd1
源代码网推荐  
源代码网推荐  raid-disk    1
源代码网推荐  
源代码网推荐  2.运行以下命令:
源代码网推荐  
源代码网推荐  #mkraid /dev/md0
源代码网推荐  
源代码网推荐  这样就可以生成一个新的设备:
源代码网推荐  
源代码网推荐  /dev/md0。
源代码网推荐  
源代码网推荐  启用软RAID方法:
源代码网推荐  
源代码网推荐  #raidstart /dev/md0
源代码网推荐  
源代码网推荐  其余操作同上。
源代码网推荐  
源代码网推荐  如果你正在使用的Linux系统版本很新,可能以上两种情况都不适合你,那么,你可以采用第三种方法使用软RAID。
源代码网推荐  
源代码网推荐  三、最新的Linux版本
源代码网推荐  笔者的一台PC上安装了Red Hat Linux 6.1,自行编译Raidtools0.42、0.50beta2时,先是找不到所要的头文件,将所需头文件复制后,编译仍然通不过。原来,由于新的版本采用了一系列新的函数,情况稍有一点不同。不过,新的版本中,提供了Raidtools,在/sbin目录中,有Raidtools的一系列工具,其中有Mkraid、Raid0run、Raidstop、Raidstart等一组工具。如果你想自己编译,可以从中国自由软件库中查找到最新版为0.9的Raidtools,自行编译0.9版的Raidtools,编译正常通过。
源代码网推荐  
源代码网推荐  新版的Raidtools稍有一点不同,笔者使用系统自带的Raidtools,制作软RAID方法如下:
源代码网推荐  
源代码网推荐  1.建立文件/etc/raidtab,文件内容如下:
源代码网推荐  
源代码网推荐  raiddev /dev/md0
源代码网推荐  
源代码网推荐  raid-level       0
源代码网推荐  
源代码网推荐  nr-raid-disks     2
源代码网推荐  
源代码网推荐  persistent-superblock  0
源代码网推荐  
源代码网推荐  chunk-size      8
源代码网推荐  
源代码网推荐  device        /dev/hdb1
源代码网推荐  
源代码网推荐  raid-disk       0
源代码网推荐  
源代码网推荐  device       /dev/hdd1
源代码网推荐  
源代码网推荐  raid-disk       1
源代码网推荐  
源代码网推荐  2.生成软RAID设备,运行以下命令:
源代码网推荐  
源代码网推荐  # mkraid -c /etc/raidtab /dev/md0
源代码网推荐  
源代码网推荐  之后,运行以下命令,以查看目前RAID的运行状态:
源代码网推荐  
源代码网推荐  [root@rh61 /proc]# cat mdstat
源代码网推荐  
源代码网推荐  如果系统显示如下:
源代码网推荐  
源代码网推荐  Personalities : [raid0]
源代码网推荐  
源代码网推荐  read―ahead 1024 sectors
源代码网推荐  
源代码网推荐  md0 : active raid0 hdd1[1] hdb1[0] 2202416 blocks 8k chunks
源代码网推荐  
源代码网推荐  unused devices:
源代码网推荐  
源代码网推荐  表示你的RAID0已正常运行了。
源代码网推荐  
源代码网推荐  3.建立新的文件系统
源代码网推荐  
源代码网推荐  现在,为了使用新生成的设备,我们应在新的RAID盘上建立Ext2文件系统,建立新的文件系统的命令如下:
源代码网推荐  
源代码网推荐  [root@rh61 /sbin]# mkfs.ext2 /dev/md0
源代码网推荐  
源代码网推荐  经过大约两三分钟,新的文件系统正确生成。现在就可以开始使用它了。使用方法如下:
源代码网推荐  
源代码网推荐  [root@rh61 /sbin]# mount -t ext2 /dev/md0 /opt
源代码网推荐  
源代码网推荐  将/dev/md0设备加挂(mount)到/opt安装点上。
源代码网推荐
源代码网推荐
源代码网推荐
源代码网推荐
源代码网供稿.
网友评论 (0)
会员中心
服务器类
本站推荐
服务器类之精华