软RAID管理命令mdadm详解
mdadm是linux下用于创建和管理软件RAID的命令,是一个模式化命令。但由于现在服务器一般都带有RAID阵列卡,并且RAID阵列卡也很廉价,且由于软件RAID的自身缺陷(不能用作启动分区、使用CPU实现,降低CPU利用率),因此在生产环境下并不适用。但为了学习和了解RAID原理和管理,因此仍然进行一个详细的讲解:
一、创建模式
1、创建raid0:
1.1 创建raid
mdadm -C /dev/md0 -a yes -l 0 -n 2 /dev/sdb{1,2}
mkfs.ext4 /dev/md0
mkfs.ext4 -E stride=16 -b 4096 /dev/md0
2、创建raid1:
[root@localhost ~]# mdadm -C /dev/md1 -a yes -n 2 -l 1 /dev/sdb{5,6}mdadm: Note: this array has metadata at the start andmay not be suitable as a boot device. If you plan tostore '/boot' on this device please ensure thatyour boot-loader understands md/v1.x metadata, or use--metadata=0.90Continue creating array? ymdadm: Defaulting to version 1.2 metadatamdadm: array /dev/md1 started.
[root@localhost ~]# mkfs.ext4 /dev/md1
3、创建raid5:
[root@localhost ~]# mdadm -C /dev/md2 -a yes -l 5 -n 3 /dev/sdb{5,6,7}mdadm: /dev/sdb5 appears to be part of a raid array:level=raid1 devices=2 ctime=Sun Jul 14 09:14:25 2013mdadm: /dev/sdb6 appears to be part of a raid array:level=raid1 devices=2 ctime=Sun Jul 14 09:14:25 2013mdadm: /dev/sdb7 appears to be part of a raid array:level=raid1 devices=2 ctime=Sun Jul 14 09:14:25 2013Continue creating array? ymdadm: Defaulting to version 1.2 metadatamdadm: array /dev/md2 started.
[root@localhost ~]# mkfs.ext4 /dev/md2
[root@localhost ~]# mdadm /dev/md2 -a /dev/sdb8
4、查看md状态:
mdadm -D /dev/md# 查看指定RAID设备的详细信息
[root@localhost ~]# cat /proc/mdstatPersonalities : [raid0] [raid1]md0 : active raid0 sdb2[1] sdb1[0]4206592 blocks super 1.2 512k chunksmd1 : active raid1 sdb6[1] sdb5[0]2103447 blocks super 1.2 [2/2] [UU]unused devices: <none>
cat /proc/partitions
kpartx /dev/sdb或者partprobe/dev/sdb
二、管理模式
1、模拟损坏:
mdadm /dev/md1 -f /dev/sdb5
2、移除损坏的磁盘:
mdadm /dev/md1 -r /dev/sdb5
3、添加新的硬盘到已有阵列:
mdadm /dev/md1 -a /dev/sdb7
4、停止阵列:
选项:-S = --stop
mdadm -S /dev/md1
三、监控模式
四、增长模式,用于增加磁盘,为阵列扩容:
示例,将上述raid5的热备磁盘增加到阵列工作磁盘中
[root@localhost ~]# mdadm -G /dev/md2 -n 4
[root@localhost ~]# mdadm -D /dev/md2……此处略掉部分信息……Number Major Minor RaidDevice State0 8 21 0 active sync /dev/sdb51 8 22 1 active sync /dev/sdb63 8 23 2 active sync /dev/sdb74 8 24 3 active sync /dev/sdb8
五、装配模式,软RAID是基于系统的,当原系统损坏了,需要重新装配RAID
示例:将上述已经停止的阵列重新装配:
mdadm -A /dev/md1 /dev/sdb5 /dev/sdb6
实现自动装配:
mdadm运行时会自动检查/etc/mdadm.conf 文件并尝试自动装配,因此第一次配置raid后可以将信息导入到/etc/mdadm.conf 中,命令如下:
[root@localhost ~]# mdadm -Ds >/etc/mdadm.conf
原文 http://www.toxingwang.com/linux-unix/linux-basic/1048.html
软RAID管理命令mdadm详解的更多相关文章
- Linux权限管理命令chmod详解
命令chmod详解 命令chmod(英文原意:change permissions mode of a file),所在路径为: 可以看到,它的路径为:/usr/bin/chmod,因此,它的执行权限 ...
- dd命令使用详解
dd命令使用详解 http://www.cnblogs.com/qq78292959/archive/2012/02/23/2364760.html 1.命令简介 dd 的主要选项: 指定数字的地方若 ...
- Mysql导入导出工具Mysqldump和Source命令用法详解
Mysql本身提供了命令行导出工具Mysqldump和Mysql Source导入命令进行SQL数据导入导出工作,通过Mysql命令行导出工具Mysqldump命令能够将Mysql数据导出为文本格式( ...
- dos下的edit命令使用详解
dos下的edit命令使用详解 来源:网络 作者:未知 edit命令是一个简单的编辑软件,我们经常用它来编辑一些程序和批处理文件. 比如,我想在c盘根目录下编辑一个简单的批处理文件,要求无论当前盘和当 ...
- [转]Mysql导入导出工具Mysqldump和Source命令用法详解
Mysql本身提供了命令行导出工具Mysqldump和Mysql Source导入命令进行SQL数据导入导出工作,通过Mysql命令行导出工具Mysqldump命令能够将Mysql数据导出为文本格式( ...
- 系统批量运维管理器Fabric详解
系统批量运维管理器Fabric详解 Fabrici 是基于python现实的SSH命令行工具,简化了SSH的应用程序部署及系统管理任务,它提供了系统基础的操作组件,可以实现本地或远程shell命令,包 ...
- Make命令完全详解教程
Make命令完全详解教程 无论是在Linux还是在Unix环境中,make都是一个非常重要的编译命令.不管是自己进行项目开发还是安装应用软件,我们都经常要用到make或make install.利用m ...
- (转)shell中test命令方法详解
test命令用法.功能:检查文件和比较值 shell中test命令方法详解 原文:https://www.cnblogs.com/guanyf/p/7553940.html 1)判断表达式 if te ...
- Windows WMIC命令使用详解2
Windows WMIC命令使用详解(附实例) https://blog.csdn.net/aflyeaglenku/article/details/77878525 第一次执行WMIC命令时,Win ...
随机推荐
- Mac下利用Cordova打包 iOS App以及出现的问题
安装 cordova sudo npm install cordova 创建项目 创建一个demo文件夹,里面自动加载基本的文件以及目录 cordova create demo com.test.de ...
- Ubuntu 配置vsftpd实现FTP服务器
0.vsftpd是啥玩意 都不知道安装了个啥东西,那就没意思了,所以先去了解下什么是vsftpd.vsftpd意思为“very secure FTP daemon(非常安全的FTP进程)”,当然只有更 ...
- .NET Core开发日志——从搭建开发环境开始
.NET Core自2016年推出1.0版本开始,到目前已是2.1版本,在其roadmap计划里明年更会推出3.0版本,发展不可不谓之迅捷.不少公司在经过一个谨慎的观望期后,也逐步开始将系统升级至最新 ...
- {Python之线程} 一 背景知识 二 线程与进程的关系 三 线程的特点 四 线程的实际应用场景 五 内存中的线程 六 用户级线程和内核级线程(了解) 七 python与线程 八 Threading模块 九 锁 十 信号量 十一 事件Event 十二 条件Condition(了解) 十三 定时器
Python之线程 线程 本节目录 一 背景知识 二 线程与进程的关系 三 线程的特点 四 线程的实际应用场景 五 内存中的线程 六 用户级线程和内核级线程(了解) 七 python与线程 八 Thr ...
- [No0000109]Git2/9-安装Git
最早Git是在Linux上开发的,很长一段时间内,Git也只能在Linux和Unix系统上跑.不过,慢慢地有人把它移植到了Windows上.现在,Git可以在Linux.Unix.Mac和Window ...
- [No0000EA]C# 可空类型(Nullable)
C# 可空类型(Nullable) C# 提供了一个特殊的数据类型,nullable 类型(可空类型),可空类型可以表示其基础值类型正常范围内的值,再加上一个 null 值. 例如,Nullable& ...
- EM学习-思想和代码
EM算法的简明实现 当然是教学用的简明实现了,这份实现是针对双硬币模型的. 双硬币模型 假设有两枚硬币A.B,以相同的概率随机选择一个硬币,进行如下的抛硬币实验:共做5次实验,每次实验独立的抛十次,结 ...
- 如何使用IcoMoon字体图标
如何使用IcoMoon字体图标 一,字体图标工具: 1.登录字体图标网站:https://icomoon.io/app/#/select 2.Svg在线编辑工具:https://c.runoob.co ...
- debian配置java环境变量
操作如下 首先从Oracle上下载支持linux的java jdk,然后安装到你系统中, 然后到/home/xxxx/.bashrc文件中加入 # java JAVA_HOME=/xxx/xxxxx ...
- 广播消费:允许一个 Group ID 所标识的所有 Consumer 都会各自消费某条消息一次。
什么是消息队列 RocketMQ?_消息队列 RocketMQ-阿里云 https://help.aliyun.com/document_detail/29532.html 2019-01-30 16 ...