Linux下创建软RAID1实战

简介:

[root@RHEL7 ~]# date

Thu Aug 18 20:45:34 CST 2016

[root@RHEL7 ~]# fdisk /dev/sdc

Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.

Be careful before using the write command.

Device does not contain a recognized partition table

Building a new DOS disklabel with disk identifier 0xe1f55a32.

Command (m for help): p

Disk /dev/sdc: 5368 MB, 5368709120 bytes, 10485760 sectors

Units = sectors of 1 * 512 = 512 bytes

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

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

Disk label type: dos

Disk identifier: 0xe1f55a32

   Device Boot      Start         End      Blocks   Id  System

Command (m for help): n

Partition type:

   p   primary (0 primary, 0 extended, 4 free)

   e   extended

Select (default p): p

Partition number (1-4, default 1):

First sector (2048-10485759, default 2048):

Using default value 2048

Last sector, +sectors or +size{K,M,G} (2048-10485759, default 10485759):

Using default value 10485759

Partition 1 of type Linux and of size 5 GiB is set

Command (m for help): t

Selected partition 1

Hex code (type L to list all codes): fd     #fd:linux raid mode

Changed type of partition 'Linux' to 'Linux raid autodetect'

Command (m for help): p

Disk /dev/sdc: 5368 MB, 5368709120 bytes, 10485760 sectors

Units = sectors of 1 * 512 = 512 bytes

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

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

Disk label type: dos

Disk identifier: 0xe1f55a32

   Device Boot      Start         End      Blocks   Id  System

/dev/sdc1            2048    10485759     5241856   fd  Linux raid autodetect

Command (m for help): w

The partition table has been altered!

Calling ioctl() to re-read partition table.

Syncing disks.

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

[root@RHEL7 ~]# partprobe /dev/sdc

[root@RHEL7 ~]# ls /dev/sdb*

/dev/sdb  /dev/sdb1

[root@RHEL7 ~]# ls /dev/sdc*

/dev/sdc  /dev/sdc1

 检查磁盘是 否可以创建RAID1

[root@RHEL7 ~]# mdadm -E /dev/sd[b-c]

/dev/sdb:

   MBR Magic : aa55

Partition[0] :     10483712 sectors at         2048 (type fd)

/dev/sdc:

   MBR Magic : aa55

Partition[0] :     10483712 sectors at         2048 (type fd)

创建RAID1

[root@RHEL7 ~]# mdadm -C -v /dev/md1 -l 1 -n 2 /dev/sdb1 /dev/sdc1

mdadm: Note: this array has metadata at the start and

    may not be suitable as a boot device.  If you plan to

    store '/boot' on this device please ensure that

    your boot-loader understands md/v1.x metadata, or use

    --metadata=0.90

mdadm: size set to 5237696K

Continue creating array? y

mdadm: Defaulting to version 1.2 metadata

mdadm: array /dev/md1 started.

查看RAID状态

[root@RHEL7 ~]# cat /proc/mdstat

Personalities : [raid1]

md1 : active raid1 sdc1[1] sdb1[0]

      5237696 blocks super 1.2 [2/2] [UU]

      [============>........]  resync = 60.6% (3175232/5237696) finish=0.1min speed=211682K/sec

unused devices: <none>

[root@RHEL7 ~]# watch cat /proc/mdstat

查看两块盘的状态

[root@RHEL7 ~]# mdadm -E /dev/sdb1 /dev/sdc1

/dev/sdb1:

          Magic : a92b4efc

        Version : 1.2

    Feature Map : 0x0

     Array UUID : b3f8134a:abc56378:c6498702:55215f10

           Name : RHEL7.2:1  (local to host RHEL7.2)

  Creation Time : Thu Aug 18 20:49:27 2016

     Raid Level : raid1

   Raid Devices : 2

 Avail Dev Size : 10475520 (5.00 GiB 5.36 GB)

     Array Size : 5237696 (5.00 GiB 5.36 GB)

  Used Dev Size : 10475392 (5.00 GiB 5.36 GB)

    Data Offset : 8192 sectors

   Super Offset : 8 sectors

          State : clean

    Device UUID : 4cb9ba13:784b2294:29e78967:d93d8a94

    Update Time : Thu Aug 18 20:49:54 2016

       Checksum : 595f46a0 - correct

         Events : 17

   Device Role : Active device 0

   Array State : AA ('A' == active, '.' == missing)

/dev/sdc1:

          Magic : a92b4efc

        Version : 1.2

    Feature Map : 0x0

     Array UUID : b3f8134a:abc56378:c6498702:55215f10

           Name : RHEL7.2:1  (local to host RHEL7.2)

  Creation Time : Thu Aug 18 20:49:27 2016

     Raid Level : raid1

   Raid Devices : 2

 Avail Dev Size : 10475520 (5.00 GiB 5.36 GB)

     Array Size : 5237696 (5.00 GiB 5.36 GB)

  Used Dev Size : 10475392 (5.00 GiB 5.36 GB)

    Data Offset : 8192 sectors

   Super Offset : 8 sectors

          State : clean

    Device UUID : 841e8e8c:b3ffe403:a487475c:c899e735

    Update Time : Thu Aug 18 20:49:54 2016

       Checksum : d8105c7d - correct

         Events : 17

   Device Role : Active device 1

   Array State : AA ('A' == active, '.' == missing)


查看RAID1状态

[root@RHEL7 ~]# mdadm -D /dev/md1

/dev/md1:

        Version : 1.2

  Creation Time : Thu Aug 18 20:49:27 2016

     Raid Level : raid1

     Array Size : 5237696 (5.00 GiB 5.36 GB)

  Used Dev Size : 5237696 (5.00 GiB 5.36 GB)

   Raid Devices : 2

  Total Devices : 2

    Persistence : Superblock is persistent

    Update Time : Thu Aug 18 20:49:54 2016

          State : clean

 Active Devices : 2

Working Devices : 2

 Failed Devices : 0

  Spare Devices : 0

           Name : RHEL7.2:1  (local to host RHEL7.2)

           UUID : b3f8134a:abc56378:c6498702:55215f10

         Events : 17

    Number   Major   Minor   RaidDevice State

       0       8       17        0      active sync   /dev/sdb1

       1       8       33        1      active sync   /dev/sdc1

[root@RHEL7 ~]#

格式化

[root@RHEL7 ~]# mkfs.xfs -f /dev/md1

meta-data=/dev/md1               isize=256    agcount=4, agsize=327356 blks

         =                       sectsz=512   attr=2, projid32bit=1

         =                       crc=0

data     =                       bsize=4096   blocks=1309424, imaxpct=25

         =                       sunit=0      swidth=0 blks

naming   =version 2              bsize=4096   ascii-ci=0 ftype=0

log      =internal log           bsize=4096   blocks=2560, version=2

         =                       sectsz=512   sunit=0 blks, lazy-count=1

realtime =none                   extsz=4096   blocks=0, rtextents=0

[root@RHEL7 ~]# mkdir /raid1

[root@RHEL7 ~]# mount /dev/md1 /raid1/

[root@RHEL7 ~]# cd /raid1/

[root@RHEL7 raid1]# dd if=/dev/zero of=/raid1/aa bs=2M count=100

100+0 records in

100+0 records out

209715200 bytes (210 MB) copied, 1.7897 s, 117 MB/s

[root@RHEL7 raid1]# ls

aa

[root@RHEL7 raid1]# du /raid1

204800    /raid1



本文转自    OpenStack2015 博客,原文链接:    http://blog.51cto.com/andyliu/1840109    如需转载请自行联系原作者

相关文章
|
4月前
|
存储 网络协议 Ubuntu
【Linux开发实战指南】基于UDP协议的即时聊天室:快速构建登陆、聊天与退出功能
UDP 是一种无连接的、不可靠的传输层协议,位于IP协议之上。它提供了最基本的数据传输服务,不保证数据包的顺序、可靠到达或无重复。与TCP(传输控制协议)相比,UDP具有较低的传输延迟,因为省去了建立连接和确认接收等过程,适用于对实时性要求较高、但能容忍一定数据丢失的场景,如在线视频、语音通话、DNS查询等。 链表 链表是一种动态数据结构,用于存储一系列元素(节点),每个节点包含数据字段和指向下一个节点的引用(指针)。链表分为单向链表、双向链表和循环链表等类型。与数组相比,链表在插入和删除操作上更为高效,因为它不需要移动元素,只需修改节点间的指针即可。但访问链表中的元素不如数组直接,通常需要从
248 2
|
5月前
|
消息中间件 运维 监控
Linux命令lsipc:深入解析与实战应用
`lsipc` (通常指 `ipcs`) 是Linux命令,用于查看系统中的IPC资源,包括消息队列、信号量和共享内存。它显示详细信息,支持过滤,并且需要相应权限。示例用法:显示共享内存(`-m`)、查询消息队列(`-q -i ID`)、查看关联进程(`-m -p`)。注意权限、操作影响及定期监控。结合`ipcrm`等工具可进行更深入管理。
|
6月前
|
运维 Oracle 容灾
Oracle dataguard 容灾技术实战(笔记),教你一种更清晰的Linux运维架构
Oracle dataguard 容灾技术实战(笔记),教你一种更清晰的Linux运维架构
|
2月前
|
监控 Linux Shell
30 个实用的 Linux 命令贴与技巧,提升你的效率(附实战案例)
本文介绍了30个实用的Linux命令及其应用场景,帮助你提升命令行操作效率。涵盖返回目录、重新执行命令、查看磁盘使用情况、查找文件、进程管理、网络状态监控、定时任务设置等功能,适合各水平的Linux用户学习和参考。
|
3月前
|
Linux 文件存储 数据安全/隐私保护
Linux用户组管理实战:创建、管理与删除的全面指南
在 Linux 系统中,用户组管理是实现权限控制和资源共享的关键。本文档详细介绍如何创建用户组、管理用户组成员及查看与删除用户组。首先,通过 `groupadd` 命令创建新用户组,并在 `/etc/group` 文件中记录。接着,利用 `usermod` 和 `gpasswd` 命令来添加或删除用户组成员,其中 `gpasswd` 提供更灵活的管理方式。最后,使用 `getent` 或直接读取 `/etc/group` 查看用户组信息,并通过 `groupdel` 删除空用户组。这些操作有助于高效管理和保护系统资源。
245 4
|
3月前
|
Linux
Linux源码阅读笔记19-插入删除模块实战
Linux源码阅读笔记19-插入删除模块实战
|
3月前
|
Linux 调度
Linux源码阅读笔记05-进程优先级与调度策略-实战分析
Linux源码阅读笔记05-进程优先级与调度策略-实战分析
|
3月前
|
关系型数据库 Linux 网络安全
"Linux系统实战:从零开始部署Apache+PHP Web项目,轻松搭建您的在线应用"
【8月更文挑战第9天】Linux作为服务器操作系统,凭借其稳定性和安全性成为部署Web项目的优选平台。本文以Apache Web服务器和PHP项目为例,介绍部署流程。首先,通过包管理器安装Apache与PHP;接着创建项目目录,并上传项目文件至该目录;根据需要配置Apache虚拟主机;最后重启Apache服务并测试项目。确保防火墙允许HTTP流量,正确配置数据库连接,并定期更新系统以维持安全。随着项目复杂度提升,进一步学习高级配置将变得必要。
282 0
|
4月前
|
SQL 自然语言处理 网络协议
【Linux开发实战指南】基于TCP、进程数据结构与SQL数据库:构建在线云词典系统(含注册、登录、查询、历史记录管理功能及源码分享)
TCP(Transmission Control Protocol)连接是互联网上最常用的一种面向连接、可靠的、基于字节流的传输层通信协议。建立TCP连接需要经过著名的“三次握手”过程: 1. SYN(同步序列编号):客户端发送一个SYN包给服务器,并进入SYN_SEND状态,等待服务器确认。 2. SYN-ACK:服务器收到SYN包后,回应一个SYN-ACK(SYN+ACKnowledgment)包,告诉客户端其接收到了请求,并同意建立连接,此时服务器进入SYN_RECV状态。 3. ACK(确认字符):客户端收到服务器的SYN-ACK包后,发送一个ACK包给服务器,确认收到了服务器的确
185 1
|
5月前
|
消息中间件 存储 监控
实战Linux I/O多路复用:借助epoll,单线程高效管理10,000+并发连接
本文介绍了如何使用Linux的I/O多路复用技术`epoll`来高效管理超过10,000个并发连接。`epoll`允许单线程监控大量文件描述符,显著提高了资源利用率。文章详细阐述了`epoll`的几个关键接口,包括`epoll_create`、`epoll_ctl`和`epoll_wait`,以及它们在处理并发连接中的作用。此外,还探讨了`epoll`在高并发TCP服务场景的应用,展示了如何通过`epoll`和线程/协程池来构建服务框架。
539 8