将 IDE 驱动器映射到 /dev/hda

将 IDE 驱动器映射到 /dev/hda

我运行一台小型家庭服务器,配有一个 IDE 驱动器(用于系统)和几个 SATA 驱动器(用于软件 RAID)。

IDE 驱动器曾经位于/dev/hda,SATA 驱动器位于/dev/sd*。断电后,IDE 驱动器声称已损坏/dev/sde,并对我的 RAID 造成严重破坏。

如何让 IDE 驱动器再次正常运行?

答案1

一般来说,依赖驱动器的顺序不是一个好主意。 udev 动态分配它们并且顺序可能会改变。

文件系统最好通过标签或 UUID 来寻址:

/dev/disk/by-label/
/dev/disk/by-uuid/

使用该命令blkid查找有关文件系统的信息。

磁盘按 id 进行地址

/dev/disk/by-id/

如果磁盘 ID 太丑而无法使用,您可以通过 udev 规则将它们符号链接到例如/dev/mainhdd、等。/dev/backupdrive手动符号链接不会持久,因为 /dev它是一种 ram 磁盘。

答案2

您可以添加 udev 规则来为特定设备施加特定设备路径。例如:

KERNEL=="sd*", ATTRS{DRIVER}=="ide*", NAME="hda%n"

该行进入一个名为/etc/udev/rules.d/59-wukerplank-storage.rules.添加设备时生效;你可以告诉 udev 重新应用规则但如果设备正在使用中,这不是一个好主意。

请注意,您不应依赖诸如hda或 之类的名称sda,它们预计不会保持不变。如果您需要设备的持久名称,最好使用 udev 为其创建别名:

KERNEL=="sd*", ATTRS{model}=="ZXQ-500", ATTRS{serial}=="123456", SYMLINK+="disks/by-alias/zxq"

该命令udevadm info -a -n sda显示您可以使用哪些属性来匹配/dev/sda

RAID 配置通常使用唯一标识符 (UUID) 来区分哪个磁盘。这是必要的,例如,如果您将磁盘插入不同的计算机或以不同的顺序。因此,您的 RAID 在设备名称方面会出现问题,这很奇怪。如果您有依赖于设备名称的自定义脚本,请让它们调用mdadm以查询数组的组件。

相关内容