Linux系统中制作Raid(磁盘阵列)
mdadm命令制作RAID

实现过程1.创建分区五块SCSI磁盘分别对应/dev/sda、/dev/sdb、/dev/sdc、/dev/sdd、/dev/sde。
其中第一块磁盘/dev/sda分两个区,用于安装RedHat AS 4和做交换分区,其他四块磁盘每块只分一个主分区,分别为/dev/sdb1、/dev/sdc1、/dev/sdd1、/dev/sde1,并且将分区类型指定为“fd”,这将使Linux内核能将它们识别为RAID分区,且在每次引导时自动被检测并启动。
创建分区使用fdisk命令。
# fdisk /dev/sdb进入fdisk命令行后,使用命令n创建分区,命令t改变分区类型,命令w保存分区表并退出,命令m为帮助。
2.创建RAID 5这里使用了/dev/sdb1、/dev/sdc1、/dev/sdd1、/dev/sde1四个设备创建RAID 5,其中/de v/sde1作为备份设备,其他为活动设备。
备份设备主要起备用作用,一旦某一设备损坏可以立即用备份设备替换,当然也可以不使用备份设备。
命令格式如下:# mdadm -Cv /dev/md0 -l5 -n3 -x1 -c128 /dev/sd[b,c,d,e]1命令中各参数分别表示如下作用:“-C”指创建一个新的阵列;“/dev/md0”表示阵列设备名称;“-l5”表示设置阵列模式,可以选择0、1、4、5、6,它们分别对应于RAID0、RAID1、RAID4、RAID5、RAID6,这里设为RAID5模式;“-n3”指设置阵列中活动设备的数目,该数目加上备用设备的数目应等于阵列中的总设备数; “-x1”设置阵列中备份设备的数目,当前阵列中含有1个备份设备;“-c128”指设置块的尺寸为128KB,缺省为64KB;“/dev/sd[b,c,d, e]1”指当前阵列中包含的所有设备标识符,也可以分开来写,中间用空格分开,其中最后一个为备份设备。
3.查看阵列状态当创建一个新阵列或者阵列重构时,设备需要进行同步操作,这一过程需要一定时间,可以通过查看/proc/mdstat文件,来显示阵列的当前状态以及同步进度、所需时间等。
Linux系统常用磁盘阵列介绍

RAID本身就是磁盘阵列的缩写,使用磁盘阵列可以把一个文件分段存储在不同分区里面。
Linux系统磁盘阵列种类并不多,其中最常用的就是RAID5了。
本文就来介绍一下Linux系统的这款磁盘阵列。
(一)RAID简介:独立磁盘冗余数组(RAID,Redundant Array of Independent Disks),旧称廉价磁盘冗余数组(RAID,Redundant Array of Inexpensive Disks),简称硬盘阵列。
其基本思想就是把多个相对便宜的硬盘组合起来,成为一个硬盘阵列组,使性能达到甚至超过一个价格昂贵、容量巨大的硬盘。
根据选择的版本不同,RAID比单颗硬盘有以下一个或多个方面的好处:增强数据集成度,增强容错功能,增加处理量或容量。
另外,磁盘阵列对于电脑来说,看起来就像一个单独的硬盘或逻辑存储单元。
分为RAID-0,RAID-1,RAI D-1E,RAID-5,RAID-6,RAID-7,RAID-10,RAID-50。
简单来说,RAID把多个硬盘组合成为一个逻辑扇区,因此,操作系统只会把它当作一个硬盘。
RAID常被用在服务器电脑上,并且常使用完全相同的硬盘作为组合。
由于硬盘价格的不断下降与RAID功能更加有效地与主板集成,它也成为了玩家的一个选择,特别是需要大容量存储空间的工作,如:视频与音频制作。
最初的RAID分成了不同的等级,每种等级都有其理论上的优缺点,不同的等级在两个目标间取得平衡,分别是增加数据可靠性以及增加存储器(群)读写性能。
这些年来,出现了对于RAID观念不同的应用。
(二)Linux实现软RAID5:1、准备硬盘(至少需要3块硬盘,此处使用一块硬盘的5个分区实现,但是在实际生产中一块硬盘做RAID没有意义):[root@localhost ~]# fdisk -cul /dev/sdb #创建分区如下Disk /dev/sdb:21.5 GB,21474836480 bytes255 heads,63 sectors/track,2610 cylinders,total 41943040 sectorsUnits = sectors of 1 * 512 = 512 bytesSector size (logical/physical):512 bytes / 512 bytesI/O size (minimum/optimal):512 bytes / 512 bytesDisk identifier:0x466fc1b6Device Boot Start End Blocks Id System/dev/sdb1 2048 10487807 5242880 83 Linux/dev/sdb2 10487808 41943039 15727616 5 Extended/dev/sdb5 10489856 16781311 3145728 83 Linux/dev/sdb6 16783360 23074815 3145728 83 Linux/dev/sdb7 23076864 29368319 3145728 83 Linux/dev/sdb8 29370368 35661823 3145728 83 Linux/dev/sdb9 35663872 41943039 3139584 83 Linux[root@localhost ~]# partx -a /dev/sdb #重新读取分区表[root@localhost ~]# rpm -qa |grep mdadm #查看创建raid软件是否安装mdadm-3.2.3-9.el6.i6862、创建RAID5:[root@localhost ~]# mdadm -C /dev/md0 -a yes -l 5 -n 4 -x 1 /dev/sdb{5..9} ####-C:创建/dev/md0设备,-a:是否自动检测这里为yes,-l:raid的级别这里为raid5,-n:几块硬盘做为RUN,-x:几块硬盘作为备用mdadm:Defaulting to version 1.2 metadatamdadm:array /dev/md0 started.[root@localhost ~]# mdadm --detail /dev/md0 #查看/dev/md0的详细信息/dev/md0:Version :1.2Creation Time :Mon Jan 14 19:36:37 2013Raid Level :raid5Array Size :9414144 (8.98 GiB 9.64 GB)Used Dev Size :3138048 (2.99 GiB 3.21 GB)Raid Devices :4Total Devices :5Persistence :Superblock is persistentUpdate Time :Mon Jan 14 19:37:27 2013State :cleanActive Devices :4Working Devices :5Failed Devices :0Spare Devices :1Layout :left-symmetricChunk Size :512KName :localhost.localdomain:0 (local to host localhost.localdomain)UUID :f16324c8:0f2a0be2:04c57c07:5f44f53eEvents :18Number Major Minor RaidDevice State0 8 21 0 active sync /dev/sdb51 8 22 1 active sync /dev/sdb62 8 23 2 active sync /dev/sdb75 8 24 3 active sync /dev/sdb84 8 25 - spare /dev/sdb9以上就是常用的Linux系统磁盘阵列介绍了,RAID技术的优点就是能够提高磁盘的利用率,所以在Linux中应用广泛。
linux系统磁盘管理(磁盘阵列)

linux系统磁盘管理(磁盘阵列)1、磁盘阵列简介RAID(Redundant Array of Independent Disks)即独⽴硬盘冗余阵列,简称磁盘阵列。
磁盘阵列是由很多价格较便宜的磁盘,以硬件(RAID卡)或软件(MDADM)形式组合成⼀个容量巨⼤的磁盘组,利⽤多个磁盘组合在⼀起,提升整个磁盘系统效能。
利⽤这项技术,将数据切割成许多区段,分别存放在各个硬盘上。
其中RAID卡有⾃⼰的cpu,由它统⼀管理和控制;数据也由它来进⾏分配和维护,处理速度快。
服务器启动时,就会有显⽰进⼊配置Riad的提⽰。
RAID⽐单硬盘有以下⼀个或多个⽅⾯的好处:增强数据集成度,增强容错功能,增加处理量或容量,磁盘阵列对于电脑来说,看起来就像⼀个单独的硬盘或逻辑存储单元。
2、RAID 分类RAID有很多种类型本章只举4例供⼤家了解RAID技术!RAID类型说明最低磁盘个数空间利⽤率各⾃的优缺点RAID0条带卷2+100%读写速度快,不容错RAID1镜像卷250%读写速度⼀般,容错RAID5带奇偶校验的条带卷3+(n-1)/n读写速度快,容错,允许坏⼀块盘RAID10RAID1的镜像+RAID0的条带450%读写速度快,容错RAID 中主要有三个关键概念和技术:镜像( Mirroring )、数据条带( Data Stripping )和数据校验( Data parity )①RAID0RAID0是最早出现的RAID模式;应⽤条数据条带( Data Stripping )技术,将数据分⽚保存2+个磁盘(最好磁盘的⼤⼩相同)上,多个数据分⽚共同组成⼀个完整数据副本,数据条带具有更⾼的并发粒度,当访问数据时,可以同时对位于不同磁盘上数据进⾏读写操作,从⽽获得⾮常可观的 I/O 性能提升;是组建磁盘阵列中最简单的⼀种形式,只需要2块以上的硬盘即可;成本低,可以提⾼整个磁盘的性能;磁盘利⽤率为100%,但是,RAID 0没有提供冗余或错误修复能⼒,任何⼀个磁盘的损坏将损坏全部数据。
Linux命令高级技巧使用mdadm管理软件RAID

Linux命令高级技巧使用mdadm管理软件RAIDRAID(冗余磁盘阵列)是一种数据存储技术,通过将多个磁盘组合在一起,提供数据冗余和性能增强。
在Linux系统中,我们可以使用mdadm(多磁盘和设备管理器)命令来管理软件RAID。
本文将介绍一些高级技巧,帮助您更好地使用mdadm来管理软件RAID。
1. 安装mdadm在开始之前,您需要确保系统中已经安装了mdadm。
如果尚未安装,可以使用以下命令进行安装:```sudo apt-get install mdadm```2. 创建软件RAID使用mdadm命令可以创建各种类型的软件RAID,包括RAID 0、RAID 1、RAID 5和RAID 6等。
以下是创建RAID 1(镜像)的示例:```sudo mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sdb1/dev/sdc1```上述命令将创建一个名为/md0的RAID设备,使用/dev/sdb1和/dev/sdc1两个磁盘进行镜像。
3. 添加和移除磁盘在创建RAID后,您可以随时添加或移除磁盘。
以下是添加磁盘的示例:```sudo mdadm --add /dev/md0 /dev/sdd1```上述命令将磁盘/dev/sdd1添加到RAID设备/md0中。
如果需要移除磁盘,可以使用以下命令:```sudo mdadm --fail /dev/md0 /dev/sdd1sudo mdadm --remove /dev/md0 /dev/sdd1```第一条命令将磁盘标记为失败状态,第二条命令将其从RAID设备中移除。
4. 磁盘替换当一个磁盘故障时,您需要将其替换为新的磁盘。
以下是磁盘替换的示例:sudo mdadm --remove /dev/md0 /dev/sdd1sudo mdadm --add /dev/md0 /dev/sde1```上述命令将故障的磁盘/dev/sdd1从RAID设备/md0中移除,并将新磁盘/dev/sde1添加到RAID设备中。
RedHat Linux下磁盘阵列技术实现探讨

RedHat Linux下磁盘阵列技术实现探讨摘要:目前企事业单位的数据存储量越来越大,对磁盘的存储空间和存储效率的要求也越来越高,因此磁盘阵列技术得到了广泛的应用,本文主要就在redhat linux平台下磁盘阵列技术的实现进行研究和探讨,以提高磁盘的存储效率。
关键词:redhat linux 磁盘阵列中图分类号:tp311.51 文献标识码:a 文章编号:1672-3791(2012)09(b)-0023-011 磁盘阵列技术概述磁盘阵列技术即raid,原理是利用数组方式来做磁盘组,配合数据分散排列的设计,提升数据的安全性。
磁盘阵列是由很多便宜、容量较小、稳定性较高、速度较慢磁盘,组合成一个大型的磁盘组,利用个别磁盘提供数据所产生加成效果提升整个磁盘系统效能。
同时利用这项技术,将数据切割成许多区段,分别存放在各个硬盘上。
磁盘阵列还能利用同位检查(parity check)的观念,在数组中任一颗硬盘故障时,仍可读出数据,在数据重构时,将数据经计算后重新置入新硬盘中。
主要的磁盘阵列技术有这几种等级。
(1)raid-0:等量模式,此模式由相同,型号与容量的磁盘组成,读写性能高,但无容错能力。
(2)raid-1:映像模式,此模式具有容错能力,但读写性能较低,且比较浪费磁盘空间。
(3)raid 0+1:raid 10标准,实际是将raid 0和raid 1标准结合的产物,在连续地以位或字节为单位分割数据并且并行读/写多个磁盘的同时,为每一块磁盘作磁盘镜像进行冗余,它的优点是同时拥有raid 0的超凡速度和raid 1的数据高可靠性,但是cpu 占用率同样也更高,而且磁盘的利用率比较低。
(4)raid 2:将数据条块化地分布于不同的硬盘上,条块单位为位或字节,并使用称为“加重平均纠错码(海明码)”的编码技术来提供错误检查及恢复.这种编码技术需要多个磁盘存放检查及恢复信息,使得raid 2技术实施更复杂,因此在商业环境中很少使用。
linux下没有raid卡实现raid

linux下没有raid卡实现raid在Linux环境下,是否可以在没有RAID卡的情况下实现RAID功能?在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上)。
linux RAID5 创建过程以及raid5扩容步骤(软raid)

Calling ioctl() to re-read partition table.
Syncing disks.
3.查看新加入磁盘是否分区完成(如下)
[root@localhost ~]# fdisk -l
Device Boot Start End Blocks Id System
/dev/sdc1 1 2610 20964793+ 83 Linux
Command (m for help): t 更改分区类型
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 13 104391 83 Linux
Selected partition 1
Hex code (type L to list codes): df
Changed system type of partition 1 to df (BootIt)
Command (m for help): w
The partition table has been altered!
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = t End Blocks Id System
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
Linux下Raid配置详细过程(图文)

银河麒麟系统下通过LSI SAS9271-8i组Raid1详细过程。
1.输入fdisk -l 查看当前连接的硬盘(只有一个系统盘/dev/sda)。
2.输入MegaCli –PdList -aAll 先查看硬raid卡情况,了解raid卡下面的磁盘编号(红色框住部分)。
下图显示Raid卡接了2个硬盘。
3.输入命令“MegaCli –CfgLdAdd –r1 [252:0, 252:1] Direct –a0”将当前Raid卡上的2个硬盘组成Raid1。
4.使用命令“MegaCli –CfgDsply -a0”查看配置后的RAID信息。
如下图红色部位显示当前的Raid类型为Raid1。
4.使用命令“MegaCli -LdInit -start –full -l0 -a0”初始化Raid。
5.使用命令“MegaCli -LdInit –showprog -l0 -a0”查看初始化进度。
6.初始化完成后在系统设备节点下新增一设备 /dev/sdb,即为当前创建成功的Raid1。
7.通过命令“fdisk /dev/sdb”来创建分区,通过mount /dev/sdb /mnt 挂载设备。
注意:
创建Raid时如果遇到“the specified physical disk does not have the
appropriate attributes to。
”
1.执行MegaCli –PDMakeGood –PhysDrv ‘[252:0,252:1]’ –Force –aAll (清除硬盘
为Good状态)。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Linux系统中制作软Raid(磁盘阵列)
以raid5为例:
1、添加4块磁盘
要求:容量、转速、接口一样的硬盘。
2、创建分区并修改ID
[root@localhost ~]# fdisk /dev/sdb
[root@localhost ~]# fdisk /dev/sdc
[root@localhost ~]# fdisk /dev/sdd
[root@localhost ~]# fdisk /dev/sde
注意:修改ID为fd(支持raid)
3、创建Raid5
[root@localhost ~]# mdadm –version
[root@localhost ~]# cat /proc/devices | grep md
[root@localhost ~]# ls /dev/md*
[root@localhost ~]# mdadm -C /dev/md0 -l5 -n3 -x1 /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1
[root@localhost ~]# cat /proc/mdstat
[root@localhost ~]# mdadm –Ds
[root@localhost ~]# mkfs -t ext3 /dev/md0
[root@localhost ~]# mkdir /md0
[root@localhost ~]# mount /dev/md0 /md0/ [root@localhost ~]#df -hT
[root@localhost ~]#mdadm -Ds > /etc/mdadm.conf 4、修复Raid5磁盘阵列
[root@localhost ~]# mdadm -Ds /dev/md0
[root@localhost ~]#mdadm -f /dev/md0 /dev/sdc1 [root@localhost ~]#mdadm -Ds /dev/md0
[root@localhost ~]#mdadm -r /dev/md0 /dev/sdc1 [root@localhost ~]#mdadm -Ds /dev/md0
[root@localhost ~]#mdadm -a /dev/md0 /dev/sdc1
默认情况下,系统中只有/dev/md0这个块设备文件。
如果还需要其他的raid 的话,那么就需要手动创建了。
如下:
[root@localhost ~]# mknod /dev/md1 b 9 1
[root@localhost ~]# vim /etc/rc.local
添加:mknod /dev/md1 b 9 1
[root@localhost ~]# ls /dev/md*
[root@localhost ~]# mknod /dev/md1 b 9 1
[root@localhost ~]# mknod /dev/md2 b 9 2
[root@localhost ~]# mknod /dev/md3 b 9 3
[root@localhost ~]# ls /dev/md*
其他:
mdadm使用选项:
--create(或其缩写-C)参数来创建新的陈列并且将一些重要阵列的标识信息作为元数据可以写在每一个底层设备的指定区间
--level(或者其缩写-l)表示阵列的RAID级别
--chunk(或者其缩写-c)表示每个条带单元的大小,以KB为单位,默认为64KB,条带单元的大小配置对不同负载下的阵列读写性能有很大影响
--raid-devices(或者其缩写-n)表示阵列中活跃的设备个数
--spare-devices(或者其缩写-x)表示阵列中热备盘的个数,一旦阵列中的某个磁盘失效,MD内核驱动程序自动用将热备磁盘加入到阵列,然后重构丢失磁盘上的数据到热备磁盘上。
创建一个RAID 0设备:
mdadm --create /dev/md0 --level=0 --chunk=32 --raid-devices=3 /dev/sdb1 /dev/sdc1 /dev/sdd1
创建一个raid 1设备:
mdadm --create /dev/md0 --level=1 --chunk=128 --raid-devices=2 --spare-devices=1 /dev/sdb1 /dev/sdc1 /dev/sdd1
创建一个RAID5设备:
mdadm --create /dev/md0 --level=5 --raid-devices=5 /dev/sd[c-g]1 --spare-devices=1 /dev/sdb1
创建一个RAID 10设备:
mdadm -C /dev/md0 -l10 -n6 /dev/sd[b-g] -x1 /dev/sdh
创建一个RAID1+0设备:
mdadm -C /dev/md0 -l1 -n2 /dev/sdb /dev/sdc
mdadm -C /dev/md1 -l1 -n2 /dev/sdd /dev/sde
mdadm -C /dev/md2 -l1 -n2 /dev/sdf /dev/sdg
mdadm -C /dev/md3 -l0 -n3 /dev/md0 /dev/md1 /dev/md2。