首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Debian10,RAID :自从Debian9之后,它改变了吗?

Debian10,RAID :自从Debian9之后,它改变了吗?
EN

Server Fault用户
提问于 2019-12-21 11:55:54
回答 1查看 246关注 0票数 1

我正在安装一个备份服务器,其中安装了一个Debian10并在其NVMe磁盘上运行。它还有4x6TB的SATA硬盘驱动器,我正在尝试将它们设置为RAID0数组。

我通常遵循下面的解释:https://www.digitalocean.com/community/tutorials/how-to-create-raid-arrays-with-mdadm-on-debian-9,它总是在Debian9中为我工作。

其症状是,当我重新启动服务器时,我的RAID0数组就消失了。

/var/log/syslog中的错误如下:

代码语言:javascript
复制
dev-md3.device: Job dev-md3.device/start timed out.
Timed out waiting for device /dev/md3.
Dependency failed for /mnt/md3.
mnt-md3.mount: Job mnt-md3.mount/start failed with result 'dependency'.
dev-md3.device: Job dev-md3.device/start failed with result 'timeout'.

我的RAID0设置过程如下所示:

$ sudo mdadm --版本

mdadm - v4.1 - 2018-10-01

$ sudo lsblk -o名称、大小、FSTYPE、类型、MOUNTPOINT

代码语言:javascript
复制
NAME         SIZE FSTYPE  TYPE MOUNTPOINT
sda          5.5T         disk
sdb          5.5T         disk
sdc          5.5T         disk
sdd          5.5T         disk
nvme0n1      477G         disk
├─nvme0n1p1  511M vfat    part /boot/efi
├─nvme0n1p2  476G ext4    part /
├─nvme0n1p3  511M swap    part [SWAP]
└─nvme0n1p4    1M iso9660 part

<#>$ sudo mdadm --创建--详细/dev/md3 --级别=0--raid-设备=4 /dev/sda /dev/sdb /dev/sdc /dev/sdd

代码语言:javascript
复制
mdadm: chunk size defaults to 512K
mdadm: partition table exists on /dev/sda
mdadm: partition table exists on /dev/sda but will be lost or
       meaningless after creating array
mdadm: partition table exists on /dev/sdb
mdadm: partition table exists on /dev/sdb but will be lost or
       meaningless after creating array
mdadm: partition table exists on /dev/sdc
mdadm: partition table exists on /dev/sdc but will be lost or
       meaningless after creating array
mdadm: partition table exists on /dev/sdd
mdadm: partition table exists on /dev/sdd but will be lost or
       meaningless after creating array
Continue creating array? y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md3 started.

$ sudo /proc/mdstat

代码语言:javascript
复制
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md3 : active raid0 sdd[3] sdc[2] sdb[1] sda[0]
      23441561600 blocks super 1.2 512k chunks

unused devices: 

$ sudo mkfs.ext4 -F /dev/md3

代码语言:javascript
复制
mke2fs 1.44.5 (15-Dec-2018)
/dev/md3 contains a ext4 file system
        last mounted on Sat Dec 21 10:42:04 2019
Creating filesystem with 5860390400 4k blocks and 366274560 inodes
Filesystem UUID: f8f61563-66ab-4cc6-9876-7f6160c43853
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
        4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968,
        102400000, 214990848, 512000000, 550731776, 644972544, 1934917632,
        2560000000, 3855122432, 5804752896

Allocating group tables: done
Writing inode tables: done
Creating journal (262144 blocks): done
Writing superblocks and filesystem accounting information: done

$ sudo mkdir -p /mnt/md3

$ sudo挂载/dev/md3 /mnt/md3

$ sudo df -h -x devtmpfs -x tmpfs

代码语言:javascript
复制
Filesystem      Size  Used Avail Use% Mounted on
/dev/nvme0n1p2  469G  2.5G  443G   1% /
/dev/nvme0n1p1  510M  5.1M  505M   1% /boot/efi
/dev/md3         22T   24K   21T   1% /mnt/md3

此时,我的RAID0是实时的,我可以使用它。现在(尝试)将上述内容保存到永久设置中:

# mdadm -a /etc /etc/mdadm/mdadm.conf

代码语言:javascript
复制
ARRAY /dev/md3 metadata=1.2 name=xxxxx:3 UUID=71ca2d63:66f64678:02822188:2c2881ba

# echo '/dev/md3 /mnt/md3 ext4默认值,nofail,丢弃0‘\ sudo tee -a /etc/fstab

代码语言:javascript
复制
/dev/md3 /mnt/md3 ext4 defaults,nofail,discard 0 0

/etc/mdadm/mdadm.conf的实际内容(无评论):

代码语言:javascript
复制
HOMEHOST 
MAILADDR root
ARRAY /dev/md3 metadata=1.2 name=xxxxx:3 UUID=71ca2d63:66f64678:02822188:2c2881ba

现在,如果我重新启动RAID0数组,并且我将错误放在syslog文章的顶部

<#>更新

使用RAID10 --level=10进行相同的尝试,结果是相同的

EN

回答 1

Server Fault用户

发布于 2019-12-22 14:40:56

你所做的一切看起来都是完全正确的。不过,这些partition table exists on /dev/sd[abcd] but will be lost or meaningless after creating array消息是值得关注的。

这是一个猜测--但我认为可能发生的事情是,这些驱动器上有一个GUID分区表。当您创建RAID 0时,MD元数据位于驱动器的前面,吹走了那里的分区表。但是,有一个存储在驱动器末尾的分区表的备份副本。我的猜测是系统正在从每次引导的备份副本中恢复。对于RAID 0,没有初始同步。它只接受驱动器上的数据。

先尝试用wipefs -a /dev/sd[abcd]清除驱动器上的分区表。然后用您的过程创建数组。

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/996388

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档