我可以使用整个驱动器作为软件团队成员吗?

Kau*_*rin 8 linux raid software-raid mdadm

我可以使用/dev/sda/dev/sdb用于我的 RADI1 配置吗?

还是我首先必须用一个 Linux raid 分区对两者进行分区?

Der*_*ler 9

是的,您可以这样做,但它可能会导致烦人的副作用。

我旁边有一个系统,我将整个设备用作 md RAID 成员。每次启动时,它都会抱怨这些设备上的分区损坏。

这是因为数据将写入驱动器的最开始,而它是 RAID 组的一部分。然后,系统会在检查设备时尝试将该数据解释为启动时的分区表。

到目前为止,这还没有给我带来问题。它只是延迟了启动过程,看起来真的很可怕。


我只是拉起日志来显示我在说什么。这是我启动服务器时通过我的控制台运行的内容。

请注意,/dev/sda通过/dev/sdd/dev/sdf通过的设备/dev/sdj都是 RAID 阵列的一部分。/dev/sde包含系统根分区。

11 月 24 日 11:41:52 转储内核:[49.717165] sd 0:0:0:0:[sda] 2930277168 512 字节硬件扇区 (1500302 MB)
11 月 24 日 11:41:52 转储内核:[49.717172] sd 0:0:0:0:[sda] 写保护关闭
11 月 24 日 11:41:52 转储内核:[49.717173] sd 0:0:0:0:[sda] 模式感知:00 3a 00 00
11 月 24 日 11:41:52 转储内核:[49.717182] sd 0:0:0:0: [sda] 写缓存:启用,读缓存:启用,不支持 DPO 或 FUA
11 月 24 日 11:41:52 转储内核:[49.717209] sd 0:0:0:0:[sda] 2930277168 512 字节硬件扇区 (1500302 MB)
11 月 24 日 11:41:52 转储内核:[49.717213] sd 0:0:0:0:[sda] 写保护关闭
11 月 24 日 11:41:52 转储内核:[49.717214] sd 0:0:0:0:[sda] 模式感知:00 3a 00 00
11 月 24 日 11:41:52 转储内核:[49.717221] sd 0:0:0:0: [sda] 写缓存:启用,读缓存:启用,不支持 DPO 或 FUA
11 月 24 日 11:41:52 转储内核:[49.717222] sda:未知分区表
11 月 24 日 11:41:52 转储内核:[49.724463] sd 0:0:0:0:[sda] 附加的 SCSI 磁盘
11 月 24 日 11:41:52 转储内核:[49.724504] sd 1:0:0:0:[sdb] 2930277168 512 字节硬件扇区 (1500302 MB)
11 月 24 日 11:41:52 转储内核:[49.724510] sd 1:0:0:0:[sdb] 写保护关闭
11 月 24 日 11:41:52 转储内核:[49.724512] sd 1:0:0:0:[sdb] 模式感知:00 3a 00 00
11 月 24 日 11:41:52 转储内核:[49.724519] sd 1:0:0:0:[sdb] 写缓存:启用,读缓存:启用,不支持 DPO 或 FUA
11 月 24 日 11:41:52 转储内核:[49.724547] sd 1:0:0:0:[sdb] 2930277168 512 字节硬件扇区 (1500302 MB)
11 月 24 日 11:41:52 转储内核:[49.724551] sd 1:0:0:0:[sdb] 写保护关闭
11 月 24 日 11:41:52 转储内核:[49.724552] sd 1:0:0:0:[sdb] 模式感知:00 3a 00 00
11 月 24 日 11:41:52 转储内核:[49.724559] sd 1:0:0:0:[sdb] 写缓存:启用,读缓存:启用,不支持 DPO 或 FUA
11 月 24 日 11:41:52 转储内核:[49.724561] sdb:Driver 'sr' 需要更新 - 请使用 bus_type 方法
11 月 24 日 11:41:52 转储内核:[49.734320] 未知分区表

这只是 RAID 阵列中的前两个驱动器。你已经可以看到unknown partition table那里的错误了。所有 RAID 成员都将打印相同的错误。

一旦完成。这开始:

11 月 24 日 11:41:52 转储内核:[50.145507] 尝试访问超出设备端
11 月 24 日 11:41:52 转储内核:[50.145513] sdc:rw=0,想要=7018997372,限制=2930277168
11 月 24 日 11:41:52 转储内核:[50.145515] 设备 sdc3 上的缓冲区 I/O 错误,逻辑块 4250167552
11 月 24 日 11:41:52 转储内核:[50.145626] 尝试访问超出设备末端
11 月 24 日 11:41:52 转储内核:[50.145627] sdc:rw=0,想要=7018997373,限制=2930277168
11 月 24 日 11:41:52 转储内核:[50.145628] 设备 sdc3 上的缓冲区 I/O 错误,逻辑块 4250167553

您会看到它抱怨sdc3哪个实际上并不存在(因为整个sdc设备都用作 RAID 成员。

下次我启动机器时,它可能是一个不同的驱动器,它抱怨或根本没有。取决于下次启动时设备上存在哪些数据而不是分区表。

最糟糕的部分是什么?我现在无法移动到分区,因为我必须将每个 RAID 成员磁盘缩小一小部分(这样我才能分区),这需要重新创建整个 RAID 阵列。


Sup*_*ous 6

是的,如果您将 md 用于 RAID,您可以使用整个块设备而无需对其进行分区。有关详细信息,请参阅mdadm 手册页