linux做软raid5

linux做软raid5,第1张

2021-11-03

主机:192.168.20.63

磁盘:50G

磁盘树形结构:lsblk

目标 :把sda、sdb、sdc、sdd、sde、sdf这六块盘合起来做成raid5

1.对每块盘进行分区

其他的sdb、sdc、sdd、sde、sdf盘一次做以上的 *** 作

fdisk -l | grep fd#查看磁盘raid情况

软raid设置成功,如下

注意: 若磁盘标签类型为gpt,在做软raid时可能会失败,可将GPT转成MBR再做raid5

删除raid5

我最近新配了台电脑,准备装个双系统,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的速度提升接近两倍,很不错的成绩~~觉得本文不错记得在 文章 下方给我点个赞哦。

磁盘阵列软RAID实例.

前言:raid0, 容量倍增,加速。 raid1, 安全镜像备份。 raid5, 奇偶数据校验保证安全,磁盘利用率(n-1)。

****************************************

1. 准备硬盘分区。

****************************************

raid5 至少需要3快硬盘,我手上只有一块闲置硬盘,就拿它练手。

在一块硬盘上实现raid 是没有意义的,这里仅是为了实验,知道其过程。

分区如下:

主分区 /sdb1, 扩展分区/sdb10 随便干别的事情。

扩展分区/sdb{5..9} 做raid5

----------------------------------------

[root@hjj ~]# fdisk -l /dev/sdb

----------------------------------------

Disk /dev/sdb: 160.0 GB, 160041885696 bytes

255 heads, 63 sectors/track, 19457 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x86ea33f5

Device Boot Start End Blocks Id System

/dev/sdb1 1324126033301 83 Linux

/dev/sdb23242 19457 1302550205 Extended

/dev/sdb53242648226033301 fd Linux raid autodetect

/dev/sdb66483972326033301 fd Linux raid autodetect

/dev/sdb79724 1296426033301 fd Linux raid autodetect

/dev/sdb8 12965 1620526033301 fd Linux raid autodetect

/dev/sdb9 16206 1944626033301 fd Linux raid autodetect

/dev/sdb10 19447 19457 88326 83 Linux

----------------------------------------

[root@hjj ~]# partprobe /dev/sdb

----------------------------------------

重新检测分区要通过, 可能需要重启系统。

****************************************

2. 创建raid5 设备/dev/md0

****************************************

raid 设备文件名,习惯上用md0, md1....等命名

注意: 创建需要内核支持, 选中相应的raid 选项,重编译内核,否则该命令不能通过,错误为invalid parameter

2.1 创建

--------------------------------------------------------------------------------

[root@hjj ~]# mdadm -C /dev/md0 -a yes -l 5 -n 4 -x 1 /dev/sdb{5..9}

--------------------------------------------------------------------------------

mdadm: Defaulting to version 1.2 metadata

解释一下:

-C --->create

-a --->autodetected

-l --->level raid5

-n --->raid devices 4 (使用)

-x --->spare devices 1(备用)

给一个参考多硬盘命令

[root@hjj ~]# mdadm -C /dev/md0 -a yes -l 5 -n 3 /dev/sd[bcd]1

2.2: 设备名称查询

[root@hjj ~]# ll /dev/md* -d

drwxr-xr-x 2 root root 60 Nov 7 01:51 /dev/md

brw-rw---- 1 root disk 9, 0 Nov 7 01:52 /dev/md0

2.3: 设备信息查询

----------------------------------------

[root@hjj ~]# mdadm --detail /dev/md0

----------------------------------------

/dev/md0:

Version : 1.2

Creation Time : Thu Nov 7 01:14:01 2013

Raid Level : raid5

Array Size : 78096384 (74.48 GiB 79.97 GB)

Used Dev Size : 26032128 (24.83 GiB 26.66 GB)

Raid Devices : 4

Total Devices : 5

Persistence : Superblock is persistent

Update Time : Thu Nov 7 01:43:21 2013

State : clean, degraded, recovering

Active Devices : 3

Working Devices : 5

Failed Devices : 0

Spare Devices : 2

Layout : left-symmetric

Chunk Size : 512K

Rebuild Status : 63% complete

Name : hjj.localdomain:0 (local to host hjj.localdomain)

UUID : 9dee9c47:58dfe491:5c8db1c6:9686eba5

Events : 25

Number Major Minor RaidDevice State

0 8 210 active sync /dev/sdb5

1 8 221 active sync /dev/sdb6

2 8 232 active sync /dev/sdb7

5 8 243 spare rebuilding /dev/sdb8

4 8 25- spare /dev/sdb9

****************************************

3: 格式化raid 设备(磁盘)

[root@hjj ~]# mkfs -t ext4 /dev/md0

****************************************

mke2fs 1.41.12 (17-May-2010)

Filesystem label=

OS type: Linux

Block size=4096 (log=2)

Fragment size=4096 (log=2)

Stride=128 blocks, Stripe width=384 blocks

4882432 inodes, 19524096 blocks

976204 blocks (5.00%) reserved for the super user

First data block=0

Maximum filesystem blocks=4294967296

596 block groups

32768 blocks per group, 32768 fragments per group

8192 inodes per group

Superblock backups stored on blocks:

32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,

4096000, 7962624, 11239424

Writing inode tables: done

Creating journal (32768 blocks):

done

Writing superblocks and filesystem accounting information:

done

This filesystem will be automatically checked every 34 mounts or

180 days, whichever comes first. Use tune2fs -c or -i to override.

****************************************

4. 挂载及使用raid 磁盘

****************************************

[root@hjj ~]# mount /dev/md0 /mnt

[root@hjj ~]# cd /mnt

[root@hjj /mnt]# ls

lost+found

使用raid 设备(虚拟盘)

[root@hjj /mnt]# echo "haha" >abc.txt

[root@hjj /mnt]# cat abc.txt

haha

[root@hjj ~]# df

Filesystem 1K-blocks Used Available Use% Mounted on

/dev/mapper/VolGroup-lv_root

51475068 40659416 8177828 84% /

tmpfs 1015868 224 1015644 1% /dev/shm

/dev/sda1 487652 67236390720 15% /boot

/dev/mapper/VolGroup-lv_home

97521332 10652080 81892408 12% /home

/dev/md0 76739624 53016 72765408 1% /mnt

****************************************

5. 设置开机启动RAID

****************************************

[root@hjj ~]# mdadm --detail --scan

ARRAY /dev/md0 metadata=1.2 spares=2 name=hjj.localdomain:0 UUID=9dee9c47:58dfe491:5c8db1c6:9686eba5

[root@hjj ~]# mdadm --detail --scan >/etc/mdadm.conf

经以上 *** 作,系统重启时自动命名为md0, 否则会是md127 等等值, 不固定。

[root@hjj ~]# vim /etc/fstab

添加:

/dev/md0/mntext4defaults0 0

****************************************

6. 其它:停用设备,插拔磁盘

更详细文档: man mdadm

****************************************

停用raid 盘:

[root@hjj ~]# mdadm --stop /dev/md0

查询

[root@hjj ~]# ll /dev/md* , 无设备

mdadm 还可模拟拔出硬盘,修复硬盘,插入硬盘

[root@hjj ~]# mdadm /dev/md0 --remove /dev/sdb5

验证:

[root@hjj ~]# mdadm --zero-superblock --force /dev/md0

[root@hjj ~]# mdadm /dev/md0 --add /dev/sdb5

验证:

验证方法:

[root@hjj ~]# mdadm --detail /dev/md0

删除该raid 设备, 完整的 *** 作过程如下示例。 比较规范,系统无错误。

当然,不按规范删除也可以。反正你也不要设备上的所有数据了。

mdadm /dev/md0 --fail /dev/sdb5 --remove /dev/sdb5

mdadm /dev/md0 --fail /dev/sdb6 --remove /dev/sdb6

mdadm /dev/md0 --fail /dev/sdb7 --remove /dev/sdb7

mdadm /dev/md0 --fail /dev/sdb8 --remove /dev/sdb8

mdadm /dev/md0 --fail /dev/sdb9 --remove /dev/sdb9

mdadm --remove /dev/md0

mdadm --stop /dev/md0

mdadm --misc --zero-superblock /dev/sdb5

mdadm --misc --zero-superblock /dev/sdb6

mdadm --misc --zero-superblock /dev/sdb7

mdadm --misc --zero-superblock /dev/sdb8

mdadm --misc --zero-superblock /dev/sdb9

即: 先删除RAID中的所有设备,然后停止,删除该RAID即可

为了防止系统启动时候启动raid, 应检查,修改相应的配置。

例如mdadm.conf, fstab 等


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/6150589.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-16
下一篇 2023-03-16

发表评论

登录后才能评论

评论列表(0条)

保存