这是关于RHEL5和RHEL6上的Linux存储设备名称的问题
大多数存储设备都可以使用设备名称/ dev / sda,/ dev / sdb等来访问。存储设备是指可以作为常规文件系统进行分区,格式化和装载的设备。
但是,HP服务器使用/ dev / cciss / c0d0,/ dev / cciss / c0d1等作为设备名称,可能是由于历史原因。
这意味着命令或脚本需要特殊情况来处理/ dev / cciss / cxdx而不是/ dev / sdx
据我所知,cciss模块已被RHEL6中的hpsa模块所取代,从而消除了这种不一致性。
但是,这是一个更为普遍的问题 – 是否还有其他非标准的存储设备名称可能导致只查找/ dev / sdx的命令或脚本?
你所说的“存储设备”更一般地被称为“块设备”。 如果你正在编写与块设备交互的脚本,最好的办法就是枚举/sys/class/block东西,然后在/dev/disk使用各种条目(事实上,像RHEL5中的后者可能是更好的select)。 这样你就可以向系统询问可用块设备的列表,而不必在代码中维护一些设备名称表。
在我的头顶上,您可能遇到的其他块设备包括:
virtio块设备( /dev/vda等) /dev/loop0 ) /dev/mapper/...和/dev/dm-0 ) /dev/xvda ) /dev/rbd/... ) 并不是所有的块设备都可以分区,但是它们都可以容纳一个文件系统。