1. [linux实用命令]-9-磁盘阵列(RAID)实例详解
这篇文章介绍几种常用的磁盘阵列技术(Raid0、Raid1、Raid4、Raid5、Raid10、Raid01),演示如何在CentOS7环境下使用mdadm命令去创建和维护磁盘阵列;RAID又称“廉价磁盘冗余阵列”,可以使用硬件和软件两种方式来实现,硬件RAID可以参考购买硬件时附带的参考手册,设置方法与软件RAID有差异;现如今软件RAID大多用作研究和熟悉RAID的工作方式。
Raid有"廉价磁盘冗余阵列"的意思,就是利用多块廉价的硬盘组成磁盘组,让数据分部储存在这些硬盘里面,从而达到读取和写入加速的目的;也可以用作数据的冗余,当某块硬盘损毁后,其他硬盘可以通过冗余数据计算出损坏磁盘的数据,这样就提高了数据储存的安全性。
Raid0数据储存方法如下(假设有两块硬盘D1、D2):
特点:数据被并行写入每个磁盘,每个磁盘都保存了完整数据的一部分,读取也采用并行方式,磁盘数量越多,读取和写入速度越快。因为没有冗余,一个硬盘坏掉全部数据丢失。至少两块硬盘才能组成Raid0阵列。
容量:所有硬盘之和。
Raid1数据储存方法如下(假设有两块硬盘D1、D2):
特点:有数据冗余,可靠性强,D1、D2被写入相同的数据,其中D2可以作为D1的完整备份。读取时,从两块硬盘上并行读取,写入慢,读取快。任何一块硬盘坏掉不会丢失数据,至少两块硬盘并且两块硬盘大小相等才能组成Raid1阵列。
容量:所有硬盘容量之和的一半(一半写数据,一半用来做备份)。
Raid4数据储存方法如下(假设有三块硬盘D1、D2、D3):
特点:有数据冗余校验,可靠性强。其中任何一块硬盘坏掉都不会引起数据丢失,D1丢失时,D3根据校验和以及D2的数据进行逆运算,计算出D1的数据。但当写入大量数据时校验盘D3会是一个数据瓶颈,导致写入慢。只有当两块磁盘同时丢失时,数据才无法恢复。至少三块硬盘并且磁盘大小应该相等才能组成Raid4阵列(不常用)。
容量:所有硬盘容量之和减去其中一块硬盘的容量。
Raid5数据储存方法如下(假设有三块硬盘D1、D2、D3):
特点:采用奇偶校验,可靠性强,磁盘校验和被散列到不同的磁盘里面,增加了读写速率。只有当两块磁盘同时丢失时,数据才无法恢复,至少三块硬盘并且硬盘大小应该相等才能组成Raid5阵列。
容量:所有硬盘容量之和减去其中一块硬盘的容量,被减去的容量被分配到三块硬盘的不同区域用来存放数据校验信息。
Raid10(Raid1+Raid0)是现在比较常用的一种磁盘阵列级别,它的容错好,读写数据效率较高,但经费相对也较高。
Raid10数据储存方法如下(假设有四块硬盘D1、D2、D3、D4):
特点:备份和并发式存取数据,可靠性强。D1、D2组成一个阵列Raid1,其中D1是数据盘,D2是备份盘;D3、D4也组成一个Raid1,其中D3是数据盘,D4是备份盘;在这个基础上将D1、D2作为一个整体,将D3、D4也作为一个整体,这两个整体之间再组成一个Raid0阵列。这样不仅仅读取数据会非常快,并发写入的速度也会随着磁盘的增多而变快。至少四块硬盘并且每块硬盘大小应该相等才能组成Raid10阵列。
容量:所有硬盘容量之和的一半(一半写数据,一半用来备份数据)。
Raid01数据储存方法如下(假设有四块硬盘D1、D2、D3、D4):
特点:D1、D2组成一个阵列Raid0,D3、D4也组成一个阵列Raid0,D1、D2和D3、D4再组成一个Raid1。D1和D2作为数据盘阵列,D3和D4作为数据备份阵列,这种方式并不常用,至少四块硬盘并且每块硬盘大小应该相等才能组成Raid01阵列。
容量:所有硬盘容量之和的一半。
这一部分通过Linux上的mdadm命令来实现Raid10磁盘阵列。
实验环境为一台安装了5块硬盘的计算机,操作系统是CentOS7,除系统所在硬盘(/dev/sda)外,其余四块20G的硬盘盘符分别为(/dev/sdb、/dev/sdc、/dev/sdd、/dev/sde);
主要用到的命令:mdadm;
CentOS7中mdadm默认已安装,如果没有安装,可以使用yum在线安装,如下:
到这里,实验的准备工作完成。
新创建的磁盘阵列默认是不能开机自启动的,需要手动创建一个配置文件,让系统在启动的时候自动启动Raid(经过测试,CentOS7并不需要创建这个配置文件,如果重启后磁盘阵列没有随机启动,请使用下面的方法配置一次):
可以在创建RAID的时候指定有几块冗余磁盘,当工作磁盘出现故障的时候,冗余磁盘自动启动,顶替出现故障的磁盘继续工作,请看下面的实例:
下面手动将一块磁盘标记为故障,看看冗余盘是否起作用:
假如/dev/sdc经过测试后发现没有问题,想要重新加入md0使用,可以在系统重启后,使用"mdadm /dev/md0 -a /dev/sdc"命令将它重新(添加)启用。
如果以后,想要加入一块新硬盘到这个raid10里作为备份盘,这块新硬盘需要和其他硬盘(或分区)保持相同的大小,然后使用下面的命令添加:
要想彻底清除RAID以及数据,请使用下面的方法:
2. linux磁盘阵列怎么配置
磁盘阵列配置文件为/etc/raidtabraiddev /dev/md0 //指定磁盘阵列的设备名称
raid-level linear //指定采用的是Linear模式
nr-raid-disks 2 //此阵列由2个硬盘组成
chunk-size 32 //数据写入时,每个写入区块的大小
persistent-superblock 1 //设置是否写入磁盘的superblock
device /dev/hdb1 //按实际情况,指定第1个硬盘分区名称
raid-disk 0 //设置上述分区是此阵列所使用的第1 //个硬盘(编号由"0"开始)
device /dev/hdc1 //按实际情况,指定第2个硬盘分区名称
raid-disk 1 //设置上述分区是此阵列所使用的第1 //个硬盘(编号由"0"开始)创建好配置文件后,执行以下命令
#mkraid /dev/md0
执行完以个步骤,已经创建好磁盘阵列,然后启动,系统会自动启动此阵列.接下来,就可以如同一般硬盘分区一样,格式化并挂载此阵列.
#mke2fs -j /dev/md0 //格式化此硬盘分区
#mount -t ext3 /dev/md0 /mnt/raid
强行初始化磁盘阵列
#mkraid -really-force /dev/md0挂载完成后,就可以像平常目录一样,访问这个利用磁盘阵列建设好的目录.当然也可以修改/etc/fstab配置文件,使系统每次启动都自动挂载此磁盘阵列.除了mke2fs命令以外,相关命令还有raidstop(需先卸载已经挂载的目录)及raidstart.还可以查看/proc/mdstat阵列的状态记录文件。
3. 关于如何在RAID软磁盘阵列上搭建linux系统的方法
我最近新配了台电脑,准备装个双系统,windows用来打游戏,linux用来写代码,是不是很完美!然后专门买了两块1T硬盘,想用来搭建RAID0,使用并行I/O来提升电脑的性能。
我在选主板的时候刻意选了支持RAID的主板,msi B85-G43 GAMING,能用msi的super raid技术,但是买来之后发现,这东西的驱动是exe程序,呵呵,主板支持的只是个伪raid,只能在windows下使用,想了想还是决定放弃在windows中使用raid,毕竟只是拿来日常休闲的系统,linux上得追求性能,所以在linux上使用软RAID来实现。那么这时候就有读者问了,如何在RAID软磁盘阵列上搭建linux系统!这里就由我给大家 说说 如何搭建 方法 吧:
首先在第一块磁盘上装上windows 8,给100G的主分区作为C盘,硬盘其余部分先不动,等装好系统再规划硬盘。
系统装好后,使用MiniTool Partition Wizard Home Edition 7.0来规划硬盘。直接上图,后面解释。
总共1.86T,
windows:
100G系统分区,主分区
231.5G游戏安装
200G下载文件
200G下载游戏
150G安装软件
150G工具
共用硬盘:
100G文档
331.5G各种音乐,电影,图片
linux:使用最新的fedora20
300M boot分区,主分区,不使用raid,因为grub2目测不支持raid,所以将boot单独分出来
300M boot备份分区,主分区,备份一个boot分区,出现意外时可以使用这个分区引导
3.6G swap分区,swap0 + swap1,各1.8G,分布在两个硬盘上
20G 挂载到/,sys0 + sys1,各10G
50G /usr, usr0 + usr1,各25G
25G /home,home0 + home1,各12.5G
50G /var, var0 + var1,各25G
20G /opt, opt0 + opt1,各10G
230.8G /data, data0 + data1,各115.4G,用于存放各种下载的软件,压缩包,虚拟机
至此,分区方案制定完成,MiniTool Partition Wizard将windows分区分好,并把linux的400G按照以上的分区计划格式话成ext4文件系统,接下来就开始用live cd安装系统吧~
在U盘上刻fedora live cd安装系统
由于fedora的安装程序在磁盘分区时并没有选项直接选择RAID,所以我使用console来做RAID。
这里用到的工具是mdadm。
首先用su root切换到root用户,并用 fdisk -l 来查看目前的分区情况。
/dev/sda
/dev/sdb
可以观察到现在/dev/sda3和/dev/sdb1分别为boot 和 bootbak,这两个分区不用管
/dev/sda5-11分别和/dev/sdb5-11大小相同,所以这一部分就是我们用来做RAID的硬盘
制作swap分区
$ mdadm -Cv /dev/md0 -l0 -n2 /dev/sd{a,b}5$ mkfs.ext4 /dev/md0 这一步得做,不然在安装程序中无法看到md0这块硬盘,具体原因不明命令也可以写成 $ mdadm --create --verbose /dev/md0 --level=0 --raid-devices=2 /dev/sd{a,b}5 $ mkfs.ext4 /dev/md0
按照上面的写法,将其余分区也做成RAID分区,重启一次系统,再次进入live cd安装界面,在硬盘分区时就可以看到这几块RAID硬盘分区了。
选择某一个分区,在右边详细信息中填上挂载点,点击重新分区,选择ext4或者swap,然后点击更新设置。完成之后点击开始安装系统,一切就妥妥的了。
系统安装完后,用df -h可以查看到
使用 cat /proc/mdstat 来查看RAID分区的运行状态
最后,来测试一下RAID0的速度
首先安装 hdparm 测试工具,yum install hdparm.x86_64
使用hdparm -tT 设备名称 来测试,分别测试/dev/sda和/dev/md0,测试结果如下
RAID0的速度提升接近两倍,很不错的成绩~~觉得本文不错记得在 文章 下方给我点个赞哦。
4. linux系统下如何连接光纤磁盘阵列柜
我说一下我的配置我用的盘柜是日立的,,不过我感觉原理应该都差不多,
1服务器上安装hba卡,安装驱动,这个跟网卡驱动差不多高版本的linux 系统一般会自带驱动,如果不代需要编译安装;
2安装完驱动之后,hba卡的会有红光,然后用光纤线接到盘柜,在用盘柜的配置软件去分配空间(每种软件不一样看一下说明就好了),
3 重启linux 服务器,如果配置正确的话,,用 fdisk -l 命令就可以看到分配的空间了;
4 格试话分区用mkfs.XXX, 你要格试话成什么格试的就用什么命令,
5挂载分区,使用mount 命令, 也可以修改/etc/fstab 文件,但是修改文件fstab 文件有风险搞不好系统启不来,你可以把他写在rc.local 里这样就OK了
5. 我要装linux到服务器上,需要设置磁盘阵列才能安装成功,但是没找到进设置的界面。
服务器带有引导光抄盘 installation and server management 你找一下,直接放入光驱,重启服务器,通常会直接读盘,在这里可以直接设置raid,和选择安装系统,都是中文的,一步一步来就可以,
如果你没有引导盘,可在开机自检时按F10 进入dosa 安装界面,选择os deployment ,然后会然你配置raid,之后选择系统版本,按要求安装系统就可以了
6. 求教,SUSE Linux下如何添加磁盘阵列呀
首先,你需要有连接你的磁盘阵列的HBA卡的驱动其次,如果你的磁盘回阵列很高级,需答要明确指定OS是啥,否则OS是识别不到的话,那么就需要对磁盘阵列做真确的配置;其三,如果做了LUN MASKING,请配置正确其四,网络层有zone划分等等,请确保划分正确其五,OS的操作都是通用的fdisk -l命令。和其它linux没啥区别 查看更多答案>>
7. linux 磁盘阵列怎么安装
是FC还是IP磁盘阵列,是要安装驱动,还是要配置磁盘。说清楚才好回复。
8. Linux下如何安装,配置iSCSI磁盘阵列
阵列上:创建阵列——创建存储池——分配lun值和访问地址 服务器上:在服务器上创建连接,格式化硬盘 每个厂家的操作界面可能不一样,但是基本过程和原理相似,如上介绍。
9. linux安装在有磁盘阵列的服务器中,需要阵列驱动吗
选最新的linux服务器版本,一般是不需要再加载驱动的。
你可以试一下,在安装的过程中,如果没有提示要你加载,一般已经认到驱动了。到分区的时候,再看一下是不是有认到存储空间,就可以了。