#!/bin/sh # Script to create device nodes for SMART array controllers # Usage: # mkdev.ida [num controllers] [num log volumes] [num partitions] # # With no arguments, the script assumes 1 controller, 16 logical volumes, # and 16 partitions/volume, which is adequate for most configurations. # # If you had 5 controllers and were planning on no more than 4 logical volumes # each, using a maximum of 8 partitions per volume, you could say: # # mkdev.ida 5 4 8 # # Of course, this has no real benefit over "mkdev.ida 5" except that it # doesn't create so many device nodes in /dev/ida. NR_CTLR=${1-1} NR_VOL=${2-16} NR_PART=${3-16} if [ ! -d /dev/ida ]; then mkdir -p /dev/ida fi C=0; while [ $C -lt $NR_CTLR ]; do MAJ=`expr $C + 72` D=0; while [ $D -lt $NR_VOL ]; do P=0; while [ $P -lt $NR_PART ]; do MIN=`expr $D \* 16 + $P` if [ $P -eq 0 ]; then mknod /dev/ida/c${C}d${D} b $MAJ $MIN else mknod /dev/ida/c${C}d${D}p${P} b $MAJ $MIN fi P=`expr $P + 1` done D=`expr $D + 1` done C=`expr $C + 1` done