2

我想在 FreeBSD 9 下使用 C 查找硬盘驱动器名称(例如:ada、da 等)。硬盘驱动器未挂载(因此我无法使用 statfs),可以包含不同类型的文件系统并且可以是不同的硬件架构。

此外,如果有一个基于 shell 的解决方案(没有 grepping 到 camcontrol 输出),我会很高兴听到它。

4

1 回答 1

1

如果您只是在查找设备名称,您可以在 /dev 下查找与您要查找的设备匹配的设备。一台机器可以有许多硬盘驱动器,并且别名是可能的。您还可以拥有特定于某种 RAID 控制器的设备名称,例如 /dev/mfid、/dev/aacd、/dev/mfisyspd 或 /dev/twe。

您应该查看 geom 子系统以了解这些东西是如何工作的。要查看的联机帮助页:geom(4)、GEOM(4)、libgeom(3)。

您可以阅读快速 sysctls 以了解系统的配置方式,包括 kern.geom.conftxt 和 kern.geom.confxml,具体取决于您是否希望将文本作为代码的输入。

于 2012-07-15T05:00:39.263 回答