linux编译安装madam,linux 下 使用 mdadm 创建阵列
发布日期:2021-06-24 13:15:27 浏览次数:2 分类:技术文章

本文共 3464 字,大约阅读时间需要 11 分钟。

首先安装madam 各个系统命令不同正常, 一般 *** install/add mdadm就可

目前我们硬件环境是

/dev/sda 8Gb数据盘

/dev/sdb 8Gb数据盘

/dev/sdc 系统盘

需要把/dev/sda和/dev/sdb组成raid1阵列 保障数据安全

第一步 分区

/dev/sda和/dev/sdb分别分区,设置一个主分区,并且类型设置为阵列

具体操作如下

fdisk /dev/sda

d # 删除已有的所有分区,如果没有回提示没有分区

n # 创建新分区

p # 分区类型为主分区

1 # 分区号为1

{回车} # 磁道起始位置默认最前

{回车} # 磁道结束位置默认最后

t # 设置分区类型

fd # 类型为raid阵列类型

p # 输出分区类型

w # 操作写入硬盘

q # 退出fdisk

ls /dev/sd* # 查看应该出现了 /dev/sdb1 分区了

如果报错,或者分区没有生效,不需要重启,只要运行partprobe重新加载一下分区表即可

p的时候可以看到结果是这样的

Disk /dev/sdb: 8192 MB, 8589934592 bytes, 16777216 sectors

1044 cylinders, 255 heads, 63 sectors/track

Units: sectors of 1 * 512 = 512 bytes

Device Boot StartCHS EndCHS StartLBA EndLBA Sectors Size Id Type

/dev/sdb1 0,1,1 1023,254,63 63 16777215 16777153 8191M fd Linux raid autodetect

mdadm -E /dev/sd* 可以看到分区情况了, /dev/sda和/dev/sdb已经有一个分区,并且type是fd

/dev/sda:

MBR Magic : aa55

Partition[0] : 16777153 sectors at 63 (type fd)

mdadm: No md superblock detected on /dev/sda1.

/dev/sdb:

MBR Magic : aa55

Partition[0] : 16777153 sectors at 63 (type fd)

mdadm: No md superblock detected on /dev/sdb1.

/dev/sdc:

MBR Magic : aa55

Partition[0] : 204800 sectors at 2048 (type 83)

Partition[1] : 3002368 sectors at 206848 (type 82)

Partition[2] : 38733824 sectors at 3209216 (type 83)

/dev/sdc1:

MBR Magic : aa55

Partition[0] : 432871117 sectors at 3224498923 (type 07)

Partition[1] : 1953460034 sectors at 3272020941 (type 16)

Partition[3] : 924335794 sectors at 50200576 (type 00)

mdadm: No md superblock detected on /dev/sdc2.

mdadm: No md superblock detected on /dev/sdc3.

第一步(大于2TB硬盘)

fdisk仅支持2TB以内硬盘,大于2TB的硬盘,需要使用parted转换为gpt格式

具体方法如下

parted /dev/sda

mklabel gpt # 设置分区类型为gpt

mkpart extended 0 -1 # (扩展分区extended,主分区primary,并使用整个硬盘,建议用扩展分区,主分区会多出一个小分区)

print (查看一下)

两个盘同样设置,只不过 fdisk 中设置分区类型为fd 那一步不成功,设置前后都是ee没变化,不过貌似不影响组建阵列。

第二步 创建阵列

mdadm -C -v /dev/md0 -l 1 -n 2 /dev/sda1 /dev/sdb1

参数说明

-C # 创建阵列

-v /dev/md0 # 创建名为/dev/md0 的虚拟设备

-l 1 # 阵列类型是 raid1

-n 2 /dev/sda1 /dev/sdb1 # 使用两个分区来创建,分区名称是/dev/sda1 /dev/sdb1 注意后面的 1 这是是选择分区不是硬盘

-x 1 /dev/xxxx1 # 使用1个热备盘,如果阵列失效会自动用热备盘顶替

输入y确认

然后记得一定要保存配置好的结果mdadm –detail –scan > /etc/mdadm.conf

接着把mdadm-raid加到启动项里面 rc-update add mdadm-raid sysinit

因为service里面定义了在checkfs fsck swap之前运行,所以是先加载阵列再挂载

depend() {

before checkfs fsck swap

after modules

}

这里我们可以输入mdadm -D /dev/md0查看分区情况

/dev/md0:

Version : 1.2

Creation Time : Fri Oct 18 04:56:34 2019

Raid Level : raid1

Array Size : 8383424 (8.00 GiB 8.58 GB)

Used Dev Size : 8383424 (8.00 GiB 8.58 GB)

Raid Devices : 2

Total Devices : 2

Persistence : Superblock is persistent

Update Time : Fri Oct 18 04:56:49 2019

State : clean, resyncing

Active Devices : 2

Working Devices : 2

Failed Devices : 0

Spare Devices : 0

Consistency Policy : resync

Resync Status : 42% complete (注意这里进度,进度满了才能用吧)

Name : docker:0 (local to host docker)

UUID : 2bb4165b:168c41b7:25ffaa41:96e33615

Events : 6

Number Major Minor RaidDevice State

0 8 1 0 active sync /dev/sda1

1 8 17 1 active sync /dev/sdb1

第三步 创建分区

至此我们可以把/dev/md0当成一个分区来格式化, 并且挂载了

mkfs.ext4 /dev/md0

mkdir /data

mount /dev/md0 /data

在/etc/fstab中添加自动挂载信息

/dev/md0 /data ext4 defaults 0 0

测试一下性能,alpine之类精简系统可能不显示速度

# 测试写入

dd if=/dev/zero of=file bs=1M count=1024

# 测试读取

dd if=file of=/dev/null

删除 raid 中分区

# 取消挂载

umount /dev/md0

# 停止使用分区

mdadm -S /dev/md0

# 删除分区

fdisk # 用d命令删除

# 在/etc/fstab 中删除挂载信息

阵列未保存恢复

如果创建好设备后没有保存配置,重启后会丢失配置,这时候我们用

mdadm -A /dev/md0 /dev/sd[a-b]1

即可恢复,如果缺少设备,也可用此方法利用剩余设备恢复阵列

如果/etc/mdadm.conf中有记录.直接mdadm -As即可恢复

参考文章:https://pch18.cn/archives/263.html

转载地址:https://blog.csdn.net/weixin_33045961/article/details/116685876 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:linux 权限属性,linux 文件或目录的权限和属性
下一篇:linux时间非法,linux获取系统时间

发表评论

最新留言

很好
[***.229.124.182]2024年04月04日 20时47分43秒