1#!/bin/sh 2# Script to create device nodes for SMART array controllers 3# Usage: 4# mkdev.cciss [num controllers] [num log volumes] [num partitions] 5# 6# With no arguments, the script assumes 1 controller, 16 logical volumes, 7# and 16 partitions/volume, which is adequate for most configurations. 8# 9# If you had 5 controllers and were planning on no more than 4 logical volumes 10# each, using a maximum of 8 partitions per volume, you could say: 11# 12# mkdev.cciss 5 4 8 13# 14# Of course, this has no real benefit over "mkdev.cciss 5" except that it 15# doesn't create so many device nodes in /dev/cciss. 16 17NR_CTLR=${1-1} 18NR_VOL=${2-16} 19NR_PART=${3-16} 20 21if [ ! -d /dev/cciss ]; then 22 mkdir -p /dev/cciss 23fi 24 25C=0; while [ $C -lt $NR_CTLR ]; do 26 MAJ=`expr $C + 104` 27 D=0; while [ $D -lt $NR_VOL ]; do 28 P=0; while [ $P -lt $NR_PART ]; do 29 MIN=`expr $D \* 16 + $P` 30 if [ $P -eq 0 ]; then 31 mknod /dev/cciss/c${C}d${D} b $MAJ $MIN 32 else 33 mknod /dev/cciss/c${C}d${D}p${P} b $MAJ $MIN 34 fi 35 P=`expr $P + 1` 36 done 37 D=`expr $D + 1` 38 done 39 C=`expr $C + 1` 40done 41