Linux cciss磁盘设备文件的说明

在某些机器上安装Linux后,发现在/dev目录下找不到hda、hdb、sda等磁盘设备文件,那么挂接的磁盘

在哪里呢?使用mount命令查看挂接设备情况,发现磁盘文件在、dev\cciss目录下,并以c0d0p1的名字表示。

cciss何方神圣? -原来是 HP Smart Array block driver,是一个比较旧的HP RAID控制器块驱动,在Linux

中以module的方式提供和使用,可以使用modprobe进行加载或卸载,支持的设备包括:

Smart Array 5300
Smart Array 5i
Smart Array 532
Smart Array 5312
Smart Array 641
Smart Array 642
Smart Array 6400
Smart Array 6400 EM
Smart Array 6i
Smart Array P600
Smart Array P400i
Smart Array E200i
Smart Array E200
Smart Array E200i
Smart Array E200i
Smart Array E200i
Smart Array E500

其设备命名规则如下:

Major numbers:
    104     cciss0
    105     cciss1
    106     cciss2
    105     cciss3
    108     cciss4
    109     cciss5
    110     cciss6
    111     cciss7
Minor numbers:
    b7 b6 b5 b4 b3 b2 b1 b0
    |----+----| |----+----|
         |           |
         |           +-------- Partition ID (0=wholedev, 1-15 partition)
         |
         +-------------------- Logical Volume number
例如在两个控制器情况下:
/dev/cciss/c0d0         Controller 0, disk 0, 磁盘1
/dev/cciss/c0d0p1       Controller 0, disk 0, partition 1
/dev/cciss/c0d0p2       Controller 0, disk 0, partition 2
/dev/cciss/c0d0p3       Controller 0, disk 0, partition 3
/dev/cciss/c1d1         Controller 1, disk 1, 磁盘2
/dev/cciss/c1d1p1       Controller 1, disk 1, partition 1
/dev/cciss/c1d1p2       Controller 1, disk 1, partition 2
/dev/cciss/c1d1p3       Controller 1, disk 1, partition 3

其中:

c0:表示第一块控制器

d0:表示第一块磁盘

p1:表示第一块分区

在目录 /proc/driver/cciss/ 中包含关于每个控制器的信息,例如:

# cd /proc/driver/cciss
# ls -l
total 0
-rw-r--r-- 1 root root 0 2012-06-10 10:38 cciss0
-rw-r--r-- 1 root root 0 2012-06-10 10:38 cciss1
-rw-r--r-- 1 root root 0 2012-06-10 10:38 cciss2
# cat cciss2
cciss2: HP Smart Array P800 Controller
Board ID: 0x3223103c
Firmware Version: 7.14
IRQ: 16
Logical drives: 1
Current Q depth: 0
Current # commands on controller: 0
Max Q depth since init: 1
Max # commands on controller since init: 2
Max SG entries since init: 32
Sequential access devices: 0
cciss/c2d0:   36.38GB       RAID 0
对此类磁盘的操作与IDE或直接连接在SCSI卡上的磁盘相同,如分区、格式化等操作,区别是
操作的设备文件路径不同:
fdisk /dev/cciss/c0d0
mkfs -t ext3 /dev/cciss/c0d0p1