개념
Linear RAID
RAID 0(스트라이핑)
여러 개의 디스크를 병렬로 연결하여 데이터를 동시에 입출력
신뢰성이 낮지만 속도가 매우 빠르고 공간 효율성이 좋다.
RAID 1(미러링)
RAID 4
RAID 0와 RAID 1의 장점을 결합한 방식
기본적으로 블록 단위로 스트라이핑을 하되, 하나의 디스크를 오류 복구용 디스크로 쓴다. 복구용 디스크에는 패리티 비트가 저장된다.
예를들어 디스크 4개에 스트라이핑을 했는데 디스크 하나가 오류가 난 경우, 복구용 디스크로 가서, 해당하는 패리티 비트에 저장된 패리티 정보(해당 블록의 1의 갯수가 짝수인지 홀수인지)를 이용하여 오류난 디스크에 저장됐었던 비트가 0인지 1인지 판별하여 복구를 진행하게 된다.
RAID 5
RAID 4의 오류 복구용 디스크에 가해지는 병목현상을 개선한 방식
오류 복구용 디스크를 따로 두지 않고 페리티 비트를 분산하여 저장한다.
RAID 구축 과정
1) fdisk 명령으로 각 하드디스크의 file system type이 fd(Linux raid auto)가 되도록 partitioning을 진행한다.
2) mdadm 명령으로 RAID를 구성한다.
3) mkfs 명령으로 생성한 RAID를 Formatting한다.
4) mount 명령으로 mount를 진행한다.
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 16G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 15G 0 part
├─cs-root 253:0 0 13.4G 0 lvm /
└─cs-swap 253:1 0 1.6G 0 lvm [SWAP]
sdb 8:16 0 16G 0 disk
sdc 8:32 0 16G 0 disk
sdd 8:48 0 16G 0 disk
sr0 11:0 1 1024M 0 rom
[root@localhost ~]# fdisk /dev/sdc
Welcome to fdisk (util-linux 2.32.1).
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.
Created a new DOS disklabel with disk identifier 0x85b5ff6c.
Command (m for help): p
Disk /dev/sdc: 16 GiB, 17179869184 bytes, 33554432 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
Disklabel type: dos
Disk identifier: 0x85b5ff6c
Command (m for help): nn^H
Partition type
p primary (0 primary, 0 extended, 4 free)
e extended (container for logical partitions)
Select (default p):
Using default response p.
Partition number (1-4, default 1):
First sector (2048-33554431, default 2048):
Last sector, +sectors or +size{K,M,G,T,P} (2048-33554431, default 33554431):
Created a new partition 1 of type 'Linux' and of size 16 GiB.
Command (m for help): p
Disk /dev/sdc: 16 GiB, 17179869184 bytes, 33554432 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
Disklabel type: dos
Disk identifier: 0x85b5ff6c
Device Boot Start End Sectors Size Id Type
/dev/sdc1 2048 33554431 33552384 16G 83 Linux
Command (m for help): t
Selected partition 1
Hex code (type L to list all codes): l
0 Empty 24 NEC DOS 81 Minix / old Lin bf Solaris
1 FAT12 27 Hidden NTFS Win 82 Linux swap / So c1 DRDOS/sec (FAT-
2 XENIX root 39 Plan 9 83 Linux c4 DRDOS/sec (FAT-
3 XENIX usr 3c PartitionMagic 84 OS/2 hidden or c6 DRDOS/sec (FAT-
4 FAT16 <32M 40 Venix 80286 85 Linux extended c7 Syrinx
5 Extended 41 PPC PReP Boot 86 NTFS volume set da Non-FS data
6 FAT16 42 SFS 87 NTFS volume set db CP/M / CTOS / .
7 HPFS/NTFS/exFAT 4d QNX4.x 88 Linux plaintext de Dell Utility
8 AIX 4e QNX4.x 2nd part 8e Linux LVM df BootIt
9 AIX bootable 4f QNX4.x 3rd part 93 Amoeba e1 DOS access
a OS/2 Boot Manag 50 OnTrack DM 94 Amoeba BBT e3 DOS R/O
b W95 FAT32 51 OnTrack DM6 Aux 9f BSD/OS e4 SpeedStor
c W95 FAT32 (LBA) 52 CP/M a0 IBM Thinkpad hi ea Rufus alignment
e W95 FAT16 (LBA) 53 OnTrack DM6 Aux a5 FreeBSD eb BeOS fs
f W95 Ext'd (LBA) 54 OnTrackDM6 a6 OpenBSD ee GPT
10 OPUS 55 EZ-Drive a7 NeXTSTEP ef EFI (FAT-12/16/
11 Hidden FAT12 56 Golden Bow a8 Darwin UFS f0 Linux/PA-RISC b
12 Compaq diagnost 5c Priam Edisk a9 NetBSD f1 SpeedStor
14 Hidden FAT16 <3 61 SpeedStor ab Darwin boot f4 SpeedStor
16 Hidden FAT16 63 GNU HURD or Sys af HFS / HFS+ f2 DOS secondary
17 Hidden HPFS/NTF 64 Novell Netware b7 BSDI fs fb VMware VMFS
18 AST SmartSleep 65 Novell Netware b8 BSDI swap fc VMware VMKCORE
1b Hidden W95 FAT3 70 DiskSecure Mult bb Boot Wizard hid fd Linux raid auto
1c Hidden W95 FAT3 75 PC/IX bc Acronis FAT32 L fe LANstep
1e Hidden W95 FAT1 80 Old Minix be Solaris boot ff BBT
Hex code (type L to list all codes): fd
Changed type of partition 'Linux' to 'Linux raid autodetect'.
Command (m for help): p
Disk /dev/sdc: 16 GiB, 17179869184 bytes, 33554432 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
Disklabel type: dos
Disk identifier: 0x85b5ff6c
Device Boot Start End Sectors Size Id Type
/dev/sdc1 2048 33554431 33552384 16G 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@localhost ~]# fdisk /dev/sdd
Welcome to fdisk (util-linux 2.32.1).
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.
Created a new DOS disklabel with disk identifier 0x396aa9af.
Command (m for help): p
Disk /dev/sdd: 16 GiB, 17179869184 bytes, 33554432 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
Disklabel type: dos
Disk identifier: 0x396aa9af
Command (m for help): n
Partition type
p primary (0 primary, 0 extended, 4 free)
e extended (container for logical partitions)
Select (default p):
Using default response p.
Partition number (1-4, default 1):
First sector (2048-33554431, default 2048):
Last sector, +sectors or +size{K,M,G,T,P} (2048-33554431, default 33554431):
Created a new partition 1 of type 'Linux' and of size 16 GiB.
Command (m for help): t
Selected partition 1
Hex code (type L to list all codes): fd
Changed type of partition 'Linux' to 'Linux raid autodetect'.
Command (m for help): p
Disk /dev/sdd: 16 GiB, 17179869184 bytes, 33554432 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
Disklabel type: dos
Disk identifier: 0x396aa9af
Device Boot Start End Sectors Size Id Type
/dev/sdd1 2048 33554431 33552384 16G 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@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 16G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 15G 0 part
├─cs-root 253:0 0 13.4G 0 lvm /
└─cs-swap 253:1 0 1.6G 0 lvm [SWAP]
sdb 8:16 0 16G 0 disk
sdc 8:32 0 16G 0 disk
└─sdc1 8:33 0 16G 0 part
sdd 8:48 0 16G 0 disk
└─sdd1 8:49 0 16G 0 part
sr0 11:0 1 1024M 0 rom
[root@localhost ~]# mdadm -C /dev/md0 -l linear -n 2 /dev/sdc1 /dev/sdd1
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.
[root@localhost ~]# mdadm -D /dev/md0
/dev/md0:
Version : 1.2
Creation Time : Fri Nov 18 15:25:26 2022
Raid Level : linear
Array Size : 33533952 (31.98 GiB 34.34 GB)
Raid Devices : 2
Total Devices : 2
Persistence : Superblock is persistent
Update Time : Fri Nov 18 15:25:26 2022
State : clean
Active Devices : 2
Working Devices : 2
Failed Devices : 0
Spare Devices : 0
Rounding : 0K
Consistency Policy : none
Name : localhost.localdomain:0 (local to host localhost.localdomain)
UUID : c54cc9ca:b9bcab23:892c4285:1e2a5829
Events : 0
Number Major Minor RaidDevice State
0 8 33 0 active sync /dev/sdc1
1 8 49 1 active sync /dev/sdd1
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 16G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 15G 0 part
├─cs-root 253:0 0 13.4G 0 lvm /
└─cs-swap 253:1 0 1.6G 0 lvm [SWAP]
sdb 8:16 0 16G 0 disk
sdc 8:32 0 16G 0 disk
└─sdc1 8:33 0 16G 0 part
└─md0 9:0 0 32G 0 linear
sdd 8:48 0 16G 0 disk
└─sdd1 8:49 0 16G 0 part
└─md0 9:0 0 32G 0 linear
sr0 11:0 1 1024M 0 rom
[root@localhost ~]# mkfs.ext4 /dev/md0
mke2fs 1.45.6 (20-Mar-2020)
Creating filesystem with 8383488 4k blocks and 2097152 inodes
Filesystem UUID: 5659bf30-9ef7-4bad-b146-d3b662a5668a
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624
Allocating group tables: done
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
[root@localhost ~]# mkdir /lin
[root@localhost ~]# mount /dev/md0 /lin
[root@localhost ~]# df
Filesystem 1K-blocks Used Available Use% Mounted on
devtmpfs 463696 0 463696 0% /dev
tmpfs 493944 0 493944 0% /dev/shm
tmpfs 493944 7112 486832 2% /run
tmpfs 493944 0 493944 0% /sys/fs/cgroup
/dev/mapper/cs-root 14034944 5523008 8511936 40% /
/dev/sda1 1038336 237208 801128 23% /boot
tmpfs 98788 0 98788 0% /run/user/0
/dev/md0 32827152 24 31134048 1% /lin
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 16G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 15G 0 part
├─cs-root 253:0 0 13.4G 0 lvm /
└─cs-swap 253:1 0 1.6G 0 lvm [SWAP]
sdb 8:16 0 16G 0 disk
sdc 8:32 0 16G 0 disk
└─sdc1 8:33 0 16G 0 part
└─md0 9:0 0 32G 0 linear /lin
sdd 8:48 0 16G 0 disk
└─sdd1 8:49 0 16G 0 part
└─md0 9:0 0 32G 0 linear /lin
sr0 11:0 1 1024M 0 rom
[root@localhost ~]# cd /lin
[root@localhost lin]# touch aaa
[root@localhost lin]# ls
aaa lost+found
[root@localhost lin]# cat /proc/mdstat
Personalities : [linear]
md0 : active linear sdd1[1] sdc1[0]
33533952 blocks super 1.2 0k rounding
unused devices: <none>
[root@localhost lin]# cd
[root@localhost ~]# umount /dev/md0
[root@localhost ~]# mdadm --stop /dev/md0
mdadm: stopped /dev/md0
[root@localhost ~]# mdadm --zero-superblock /dev/sd[cd]1
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 16G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 15G 0 part
├─cs-root 253:0 0 13.4G 0 lvm /
└─cs-swap 253:1 0 1.6G 0 lvm [SWAP]
sdb 8:16 0 16G 0 disk
sdc 8:32 0 16G 0 disk
└─sdc1 8:33 0 16G 0 part
sdd 8:48 0 16G 0 disk
└─sdd1 8:49 0 16G 0 part
sr0 11:0 1 1024M 0 rom
[root@localhost ~]# cat /proc/mdstat
Personalities : [linear]
unused devices: <none>
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 16G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 15G 0 part
├─cs-root 253:0 0 13.4G 0 lvm /
└─cs-swap 253:1 0 1.6G 0 lvm [SWAP]
sdb 8:16 0 16G 0 disk
sdc 8:32 0 16G 0 disk
└─sdc1 8:33 0 16G 0 part
sdd 8:48 0 16G 0 disk
└─sdd1 8:49 0 16G 0 part
sde 8:64 0 16G 0 disk
└─sde1 8:65 0 16G 0 part
sdf 8:80 0 16G 0 disk
sr0 11:0 1 1024M 0 rom
[root@localhost ~]# fdisk /dev/sdc
Welcome to fdisk (util-linux 2.32.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Command (m for help): p
Disk /dev/sdc: 16 GiB, 17179869184 bytes, 33554432 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
Disklabel type: dos
Disk identifier: 0x85b5ff6c
Device Boot Start End Sectors Size Id Type
/dev/sdc1 2048 33554431 33552384 16G fd Linux raid autodetect
Command (m for help): q
[root@localhost ~]# mdadm -C /dev/md0 -l raid0 -n 2 /dev/sd[cd]1
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 16G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 15G 0 part
├─cs-root 253:0 0 13.4G 0 lvm /
└─cs-swap 253:1 0 1.6G 0 lvm [SWAP]
sdb 8:16 0 16G 0 disk
sdc 8:32 0 16G 0 disk
└─sdc1 8:33 0 16G 0 part
└─md0 9:0 0 32G 0 raid0
sdd 8:48 0 16G 0 disk
└─sdd1 8:49 0 16G 0 part
└─md0 9:0 0 32G 0 raid0
sde 8:64 0 16G 0 disk
└─sde1 8:65 0 16G 0 part
sdf 8:80 0 16G 0 disk
sr0 11:0 1 1024M 0 rom
[root@localhost ~]# cat /proc/mdstat
Personalities : [linear] [raid0]
md0 : active raid0 sdd1[1] sdc1[0]
33533952 blocks super 1.2 512k chunks
unused devices: <none>
[root@localhost ~]# mdadm -D /dev/md0
/dev/md0:
Version : 1.2
Creation Time : Fri Nov 18 15:40:38 2022
Raid Level : raid0
Array Size : 33533952 (31.98 GiB 34.34 GB)
Raid Devices : 2
Total Devices : 2
Persistence : Superblock is persistent
Update Time : Fri Nov 18 15:40:38 2022
State : clean
Active Devices : 2
Working Devices : 2
Failed Devices : 0
Spare Devices : 0
Layout : -unknown-
Chunk Size : 512K
Consistency Policy : none
Name : localhost.localdomain:0 (local to host localhost.localdomain)
UUID : d835ddd7:1c2a6bd1:dacd576e:5e7c3f6f
Events : 0
Number Major Minor RaidDevice State
0 8 33 0 active sync /dev/sdc1
1 8 49 1 active sync /dev/sdd1
[root@localhost ~]# mkfs.ext3 /dev/md0
mke2fs 1.45.6 (20-Mar-2020)
/dev/md0 contains a ext4 file system
last mounted on /lin on Fri Nov 18 15:30:29 2022
Proceed anyway? (y,N) y
Creating filesystem with 8383488 4k blocks and 2097152 inodes
Filesystem UUID: ebe990f6-f41d-4842-9ee3-b51ad397158f
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624
Allocating group tables: done
Writing inode tables: done
Creating journal (32768 blocks):
done
Writing superblocks and filesystem accounting information: done
[root@localhost ~]# mkdir r0
[root@localhost ~]# ls
077 Music TestCD.iso b1 b6 hello tarTest.tar
Desktop Pictures Videos b2 b7 initial-setup-ks.cfg
Documents Public aaa b3 b8 iso-test
Downloads Templates anaconda-ks.cfg b5 gzipTarTest.tar.gz r0
[root@localhost ~]# mount /dev/md0 r0
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 16G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 15G 0 part
├─cs-root 253:0 0 13.4G 0 lvm /
└─cs-swap 253:1 0 1.6G 0 lvm [SWAP]
sdb 8:16 0 16G 0 disk
sdc 8:32 0 16G 0 disk
└─sdc1 8:33 0 16G 0 part
└─md0 9:0 0 32G 0 raid0 /root/r0
sdd 8:48 0 16G 0 disk
└─sdd1 8:49 0 16G 0 part
└─md0 9:0 0 32G 0 raid0 /root/r0
sde 8:64 0 16G 0 disk
└─sde1 8:65 0 16G 0 part
sdf 8:80 0 16G 0 disk
sr0 11:0 1 1024M 0 rom
[root@localhost ~]# df
Filesystem 1K-blocks Used Available Use% Mounted on
devtmpfs 463696 0 463696 0% /dev
tmpfs 493944 0 493944 0% /dev/shm
tmpfs 493944 7116 486828 2% /run
tmpfs 493944 0 493944 0% /sys/fs/cgroup
/dev/mapper/cs-root 14034944 5522872 8512072 40% /
/dev/sda1 1038336 237208 801128 23% /boot
tmpfs 98788 0 98788 0% /run/user/0
/dev/md0 32827344 156 31150492 1% /root/r0
[root@localhost ~]# umount r0
[root@localhost ~]# mdadm --stop /dev/md0
mdadm: stopped /dev/md0
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 16G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 15G 0 part
├─cs-root 253:0 0 13.4G 0 lvm /
└─cs-swap 253:1 0 1.6G 0 lvm [SWAP]
sdb 8:16 0 16G 0 disk
sdc 8:32 0 16G 0 disk
└─sdc1 8:33 0 16G 0 part
sdd 8:48 0 16G 0 disk
└─sdd1 8:49 0 16G 0 part
sde 8:64 0 16G 0 disk
└─sde1 8:65 0 16G 0 part
sdf 8:80 0 16G 0 disk
sr0 11:0 1 1024M 0 rom
[root@localhost ~]# mdadm --zero-superblock /dev/sdc1
[root@localhost ~]# mdadm --zero-superblock /dev/sdd1
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 16G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 15G 0 part
├─cs-root 253:0 0 13.4G 0 lvm /
└─cs-swap 253:1 0 1.6G 0 lvm [SWAP]
sdb 8:16 0 16G 0 disk
sdc 8:32 0 16G 0 disk
└─sdc1 8:33 0 16G 0 part
sdd 8:48 0 16G 0 disk
└─sdd1 8:49 0 16G 0 part
sde 8:64 0 16G 0 disk
└─sde1 8:65 0 16G 0 part
sdf 8:80 0 16G 0 disk
sr0 11:0 1 1024M 0 rom
[root@localhost ~]# fdisk /dev/sdc
Welcome to fdisk (util-linux 2.32.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Command (m for help): p
Disk /dev/sdc: 16 GiB, 17179869184 bytes, 33554432 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
Disklabel type: dos
Disk identifier: 0x85b5ff6c
Device Boot Start End Sectors Size Id Type
/dev/sdc1 2048 33554431 33552384 16G fd Linux raid autodetect
Command (m for help): q
[root@localhost ~]# mdadm -C /dev/md1 -l raid1 -n2 /dev/sd[cd]1
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
Continue creating array? y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md1 started.
[root@localhost ~]# mdadm -D /dev/md1
/dev/md1:
Version : 1.2
Creation Time : Fri Nov 18 15:48:57 2022
Raid Level : raid1
Array Size : 16766976 (15.99 GiB 17.17 GB)
Used Dev Size : 16766976 (15.99 GiB 17.17 GB)
Raid Devices : 2
Total Devices : 2
Persistence : Superblock is persistent
Update Time : Fri Nov 18 15:49:18 2022
State : clean, resyncing
Active Devices : 2
Working Devices : 2
Failed Devices : 0
Spare Devices : 0
Consistency Policy : resync
Resync Status : 30% complete
Name : localhost.localdomain:1 (local to host localhost.localdomain)
UUID : e47960ec:db6cf4b6:a0480e94:f017eb6f
Events : 4
Number Major Minor RaidDevice State
0 8 33 0 active sync /dev/sdc1
1 8 49 1 active sync /dev/sdd1
[root@localhost ~]# mkfs.ext4 /dev/md1
mke2fs 1.45.6 (20-Mar-2020)
/dev/md1 contains a ext3 file system
last mounted on Fri Nov 18 15:44:09 2022
Proceed anyway? (y,N) y
Creating filesystem with 4191744 4k blocks and 1048576 inodes
Filesystem UUID: 8a1d6edd-5b65-4173-9b44-0f70bbd770dd
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000
Allocating group tables: done
Writing inode tables: done
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information: done
[root@localhost ~]# mkdir /r1
[root@localhost ~]# ls
077 Music TestCD.iso b1 b6 hello tarTest.tar
Desktop Pictures Videos b2 b7 initial-setup-ks.cfg
Documents Public aaa b3 b8 iso-test
Downloads Templates anaconda-ks.cfg b5 gzipTarTest.tar.gz r0
[root@localhost ~]# mount /dev/md1 /r1
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 16G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 15G 0 part
├─cs-root 253:0 0 13.4G 0 lvm /
└─cs-swap 253:1 0 1.6G 0 lvm [SWAP]
sdb 8:16 0 16G 0 disk
sdc 8:32 0 16G 0 disk
└─sdc1 8:33 0 16G 0 part
└─md1 9:1 0 16G 0 raid1 /r1
sdd 8:48 0 16G 0 disk
└─sdd1 8:49 0 16G 0 part
└─md1 9:1 0 16G 0 raid1 /r1
sde 8:64 0 16G 0 disk
└─sde1 8:65 0 16G 0 part
sdf 8:80 0 16G 0 disk
sr0 11:0 1 1024M 0 rom
[root@localhost ~]# mdadm -D /dev/md1
/dev/md1:
Version : 1.2
Creation Time : Fri Nov 18 15:48:57 2022
Raid Level : raid1
Array Size : 16766976 (15.99 GiB 17.17 GB)
Used Dev Size : 16766976 (15.99 GiB 17.17 GB)
Raid Devices : 2
Total Devices : 2
Persistence : Superblock is persistent
Update Time : Fri Nov 18 15:53:39 2022
State : clean
Active Devices : 2
Working Devices : 2
Failed Devices : 0
Spare Devices : 0
Consistency Policy : resync
Name : localhost.localdomain:1 (local to host localhost.localdomain)
UUID : e47960ec:db6cf4b6:a0480e94:f017eb6f
Events : 21
Number Major Minor RaidDevice State
0 8 33 0 active sync /dev/sdc1
1 8 49 1 active sync /dev/sdd1
[root@localhost ~]# mdadm -E /dev/sde1
mdadm: No md superblock detected on /dev/sde1.
[root@localhost ~]# mdadm /dev/md1 --add /dev/sde1
mdadm: added /dev/sde1
[root@localhost ~]# mdadm -D /dev/md1
/dev/md1:
Version : 1.2
Creation Time : Fri Nov 18 15:48:57 2022
Raid Level : raid1
Array Size : 16766976 (15.99 GiB 17.17 GB)
Used Dev Size : 16766976 (15.99 GiB 17.17 GB)
Raid Devices : 2
Total Devices : 3
Persistence : Superblock is persistent
Update Time : Fri Nov 18 15:55:47 2022
State : clean
Active Devices : 2
Working Devices : 3
Failed Devices : 0
Spare Devices : 1
Consistency Policy : resync
Name : localhost.localdomain:1 (local to host localhost.localdomain)
UUID : e47960ec:db6cf4b6:a0480e94:f017eb6f
Events : 22
Number Major Minor RaidDevice State
0 8 33 0 active sync /dev/sdc1
1 8 49 1 active sync /dev/sdd1
2 8 65 - spare /dev/sde1
[root@localhost ~]# mdadm --grow -n 3 /dev/md1
raid_disks for /dev/md1 set to 3
[root@localhost ~]# mdadm -D /dev/md1
/dev/md1:
Version : 1.2
Creation Time : Fri Nov 18 15:48:57 2022
Raid Level : raid1
Array Size : 16766976 (15.99 GiB 17.17 GB)
Used Dev Size : 16766976 (15.99 GiB 17.17 GB)
Raid Devices : 3
Total Devices : 3
Persistence : Superblock is persistent
Update Time : Fri Nov 18 15:57:31 2022
State : clean, degraded, recovering
Active Devices : 2
Working Devices : 3
Failed Devices : 0
Spare Devices : 1
Consistency Policy : resync
Rebuild Status : 14% complete
Name : localhost.localdomain:1 (local to host localhost.localdomain)
UUID : e47960ec:db6cf4b6:a0480e94:f017eb6f
Events : 28
Number Major Minor RaidDevice State
0 8 33 0 active sync /dev/sdc1
1 8 49 1 active sync /dev/sdd1
2 8 65 2 spare rebuilding /dev/sde1
[root@localhost ~]# mdadm --fail /dev/md1 /dev/sdc1
mdadm: set /dev/sdc1 faulty in /dev/md1
[root@localhost ~]# mdadm -D /dev/md1
/dev/md1:
Version : 1.2
Creation Time : Fri Nov 18 15:48:57 2022
Raid Level : raid1
Array Size : 16766976 (15.99 GiB 17.17 GB)
Used Dev Size : 16766976 (15.99 GiB 17.17 GB)
Raid Devices : 3
Total Devices : 3
Persistence : Superblock is persistent
Update Time : Fri Nov 18 15:58:45 2022
State : clean, degraded
Active Devices : 2
Working Devices : 2
Failed Devices : 1
Spare Devices : 0
Consistency Policy : resync
Name : localhost.localdomain:1 (local to host localhost.localdomain)
UUID : e47960ec:db6cf4b6:a0480e94:f017eb6f
Events : 47
Number Major Minor RaidDevice State
- 0 0 0 removed
1 8 49 1 active sync /dev/sdd1
2 8 65 2 active sync /dev/sde1
0 8 33 - faulty /dev/sdc1
[root@localhost ~]# mdadm --remove /dev/md1 /dev/sdc1
mdadm: hot removed /dev/sdc1 from /dev/md1
[root@localhost ~]# mdadm -D /dev/md1
/dev/md1:
Version : 1.2
Creation Time : Fri Nov 18 15:48:57 2022
Raid Level : raid1
Array Size : 16766976 (15.99 GiB 17.17 GB)
Used Dev Size : 16766976 (15.99 GiB 17.17 GB)
Raid Devices : 3
Total Devices : 2
Persistence : Superblock is persistent
Update Time : Fri Nov 18 15:59:57 2022
State : clean, degraded
Active Devices : 2
Working Devices : 2
Failed Devices : 0
Spare Devices : 0
Consistency Policy : resync
Name : localhost.localdomain:1 (local to host localhost.localdomain)
UUID : e47960ec:db6cf4b6:a0480e94:f017eb6f
Events : 48
Number Major Minor RaidDevice State
- 0 0 0 removed
1 8 49 1 active sync /dev/sdd1
2 8 65 2 active sync /dev/sde1
[root@localhost ~]# mdadm --grow -n 2 /dev/md1
raid_disks for /dev/md1 set to 2
[root@localhost ~]# mdadm -D /dev/md1
/dev/md1:
Version : 1.2
Creation Time : Fri Nov 18 15:48:57 2022
Raid Level : raid1
Array Size : 16766976 (15.99 GiB 17.17 GB)
Used Dev Size : 16766976 (15.99 GiB 17.17 GB)
Raid Devices : 2
Total Devices : 2
Persistence : Superblock is persistent
Update Time : Fri Nov 18 16:00:46 2022
State : clean
Active Devices : 2
Working Devices : 2
Failed Devices : 0
Spare Devices : 0
Consistency Policy : resync
Name : localhost.localdomain:1 (local to host localhost.localdomain)
UUID : e47960ec:db6cf4b6:a0480e94:f017eb6f
Events : 51
Number Major Minor RaidDevice State
1 8 49 0 active sync /dev/sdd1
2 8 65 1 active sync /dev/sde1
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 16G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 15G 0 part
├─cs-root 253:0 0 13.4G 0 lvm /
└─cs-swap 253:1 0 1.6G 0 lvm [SWAP]
sdb 8:16 0 16G 0 disk
├─sdb1 8:17 0 1G 0 part
├─sdb2 8:18 0 1G 0 part
├─sdb3 8:19 0 2G 0 part
├─sdb4 8:20 0 1K 0 part
├─sdb5 8:21 0 2G 0 part
├─sdb6 8:22 0 1G 0 part
├─sdb7 8:23 0 1G 0 part
└─sdb8 8:24 0 8G 0 part
sdc 8:32 0 16G 0 disk
└─sdc1 8:33 0 16G 0 part
sdd 8:48 0 16G 0 disk
└─sdd1 8:49 0 16G 0 part
└─md1 9:1 0 16G 0 raid1 /r1
sde 8:64 0 16G 0 disk
└─sde1 8:65 0 16G 0 part
└─md1 9:1 0 16G 0 raid1 /r1
sdf 8:80 0 16G 0 disk
sr0 11:0 1 1024M 0 rom
[root@localhost ~]# umount /r1
[root@localhost ~]# mdadm --stop /dev/md1
mdadm: stopped /dev/md1
[root@localhost ~]# mdadm --zero-superblock /dev/sdc1
[root@localhost ~]# mdadm --zero-superblock /dev/sdd1
[root@localhost ~]# mdadm --zero-superblock /dev/sde1
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 16G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 15G 0 part
├─cs-root 253:0 0 13.4G 0 lvm /
└─cs-swap 253:1 0 1.6G 0 lvm [SWAP]
sdb 8:16 0 16G 0 disk
sdc 8:32 0 16G 0 disk
└─sdc1 8:33 0 16G 0 part
sdd 8:48 0 16G 0 disk
└─sdd1 8:49 0 16G 0 part
sde 8:64 0 16G 0 disk
└─sde1 8:65 0 16G 0 part
sdf 8:80 0 16G 0 disk
sr0 11:0 1 1024M 0 rom