delphij's Chaos

选择chaos这个词是因为~~实在很难找到一个更合适的词来形容这儿了……

05 Nov 2009

用hints固定硬盘设备名

今天听 Doug White 大牛说有这个功能,于是查了一下资料,先记一笔,不一定对,有机会找机器测试一下。

首先要定义SCSI/SAS总线所在的位置。通常它是由某个SCSI接口卡提供的,也就是类似这样:

hint.scbus.0.at=“mpt0”

这表示 scbus0 是 mpt0。如果一块卡支持多个 SCSI 总线,则还应额外指定 bus 参数。

接下来是每块硬盘的位置。SCSI/SAS设备可以由3个参数来唯一定位:总线、目标(target)和单元(LUN)。例如总线0、目标0、单元0上的设备应该叫做da0,则配置如下:

hint.da.0.at=“scbus0”
hint.da.0.target=“0”
hint.da.0.unit=“0”

可以使用简单的awk或python甚至shell来成批生成。这种定位方式与Solaris的c0t0d0类似,但用户可以自己指定名字(配置 devd.conf 应该可以更进一步创建设备对应的 c0t0d0 这样的符号连接,改天再看看)。配好之后写到 /boot/device.hints 就好。