什么是RAID?简单的说,它可以让你在几个硬盘上做些有趣的事。它可以让你把几个硬盘合并起来,把数据分散地存放在这几个硬盘中。它可以提高往硬盘读写数据的速度,也可以在硬盘上备份数据。这样即使你有一个硬盘坏了,你还可以从其他的硬盘中恢复所有的数据。你可以读读软件RAID HOWTO中有关RAID级别的部份来更好的了解不同类型的软件RAID。
为了试验本文中的例子,你需要设置一些小的分区。我建议你设置一个1G的扩展分区,然后在这个扩展分区上建一些100兆的逻辑分区。请千万要记住,你只能在一个无关紧要的硬盘上进行试验。如果你毁了这个硬盘上的数据,那是你自己的错。即使我的文章中写得不对,你也必需对自己的所作所为负责。
简单的说,在Linux系统上设置RAID条带需要四个步骤。条带把数据存放在两个或更多的硬盘(实际上是分区)上,这些数据有一半是在一个硬盘上,另一半在另一个硬盘上。这样可以提高硬盘读写的速度,因为数据是从两个硬盘上同时读出来的。再说一次,你可以在HOWTO读到更详细的内容。
首先,我们要配置/dev/md0,然后我们要格式化这些分区,接下来要配置/etc/rc.d/rc.local来激活RAID,最后要配置/etc/rc.d/rc.local来把这些设备安装到某个目录。
具体步骤
现在,我要使用一些小窍门。我认为大多数的低端用户并没有两个硬盘,所以我要使用同一个硬盘上的两个分区而不是两个硬盘。建立一个有两个逻辑分区的扩展分区。这两个分区,/dev/hda5和/dev/hda6,的大小必需一样。在同一个硬盘上的两个分区之间进行RAID条带是没有任何意义的,即使是在同一个IDE控制器的不同硬盘上这么做也是没有意义的。请记住,这只不过是个练习。
raiddev /dev/md0
raid-level 0
nr-raid-disks 2
nr-spare-disks 0
chunk-size 4
persistent-superblock 1
device /dev/hda5
raid-disk 0
device /dev/hda6
raid-disk 1
mkraid /dev/md0如果你在用“mkraid”命令时出了些问题,它应该会给出如何解决问题的提示。然后执行如下命令:
mkfs -t ext2 /dev/md0接着,你可以在“/proc/mdstat”文件中查raid的状态。
cat /proc/mdstat
echo "raidstart /dev/md0" >> /etc/rc.d/rc.local
mkdir /RAID echo "mount /dev/md0 /RAID" >> /etc/rc.d/rc.local
raidstart /dev/md0 mount /dev/md0 /RAID你可以用此命令来检查已经安装的目录。
df
首先,设置/dev/md0,然后格式化分区,接着配置/etc/rc.d/rc.local来激活raid,最后配置/etc/rc.d/rc.local来把镜象设备安装到一个目录下。
raiddev /dev/md0
raid-level 1
nr-raid-disks 2
nr-spare-disks 0
chunk-size 4
persistent-superblock 1
device /dev/hda5
raid-disk 0
device /dev/hda6
raid-disk 1
mkraid /dev/md0如果你在用“mkraid”命令时出了些问题,它应该会给出如何解决问题的提示。然后执行如下命令:
mkfs -t ext2 /dev/md0接着,你可以在“/proc/mdstat”文件中查raid的状态。
cat /proc/mdstat
echo "raidstart /dev/md0" >> /etc/rc.d/rc.local
mkdir /RAID echo "mount /dev/md0 /RAID" >> /etc/rc.d/rc.local
raidstart /dev/md0 mount /dev/md0 /RAID你可以用此命令来检查已经安装的目录。
df
具体的步骤和以上介绍的镜象以及条带一样,把配置文件按以下修改。
raiddev /dev/md0
raid-level 5
nr-raid-disks 7
nr-spare-disks 1
persistent-superblock 1
parity-algorithm left-symmetric
chunk-size 32
device /dev/hda5
raid-disk 0
device /dev/hda6
raid-disk 1
device /dev/hda7
raid-disk 2
device /dev/hda8
raid-disk 3
device /dev/hda9
raid-disk 4
device /dev/hda10
raid-disk 5
device /dev/hda11
raid-disk 6
### Also, let us have a spare device
device /dev/hda12
spare-disk 0
这些文档以前写得挺难懂得,但这些HOWTO已经更新过了,这些工具也变得更好用了。现在,在这些例子的帮助下,任何一个会用Linux的人都可以设置一个raid设备。希望这可以帮助降低RAID服务器的价钱。
如果你想更好的使用软件RAID,请用U2W SCSI控制器,象Adaptec控制器或其他的好品牌,如DPT,Mylex等。对于只需要镜象而不考虑速度的比较便宜的raid,也可以使用IDE控制器。如果你想更进一步使用硬件RAID,有几个公司支持Linux的硬件RAID。
Mark在 The Computer Underground 公司当一个接待员(短裤,T恤),在800linux.com当专业人员(西装领带)。在空余时间做一些志愿工作,比如写一些象本文一样的文章来帮助那些需要帮助的人。本文使用emacs和ispell编辑。