|
|
1.1 root 1: #! /bin/sh
2: # @(#)MAKEDEV 4.16 7/23/83
3: #
4: # Device "make" file. Valid arguments:
5: # std standard devices
6: # local configuration specific devices
7: # Tapes:
8: # cy* Cipher
9: # Disks:
10: # fsd* VDDC 160Mb FSD
11: # smd* VDDC 300Mb SMD
12: # xfd* VDDC 340Mb XFSD
13: # fuj* VDDC 360Mb Fujitsu
14: # xsd* VDDC 515Mb XFSD
15: # Terminal multiplexors:
16: # vx* VIOC
17: # Pseudo terminals:
18: # pty* set of 32 master and slave pseudo terminals
19: # Printers:
20: # Call units:
21: # Special purpose devices:
22: umask 77
23: for i
24: do
25: case $i in
26:
27: std)
28: /etc/mknod CP c 0 0
29: /etc/mknod console c 0 1
30: /etc/mknod remote c 0 2
31: /etc/mknod drum c 8 0 ; chmod 644 drum
32: /etc/mknod vmem c 3 3 ; chmod 644 vmem
33: /etc/mknod kmem c 3 1 ; chmod 644 kmem
34: /etc/mknod mem c 3 0 ; chmod 644 mem
35: /etc/mknod null c 3 2 ; chmod 666 null
36: /etc/mknod tty c 2 0 ; chmod 666 tty
37: ;;
38:
39: cy*)
40: umask 0 ; unit=`expr $i : '..\(.*\)'`
41: case $i in
42: cy*) blk=3; chr=7 ;;
43: esac
44: case $unit in
45: 0|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15)
46: u8=`expr $unit + 128`
47: /etc/mknod cy"$unit"s b $blk $unit; ln cy"$unit"s mt$unit
48: /etc/mknod ncy"$unit"s b $blk $u8; ln ncy"$unit"s nmt$unit
49: /etc/mknod rcy"$unit"s c $chr $unit; ln rcy"$unit"s rmt$unit
50: /etc/mknod rncy"$unit"s c $chr $u8; ln rncy"$unit"s nrmt$unit
51: umask 77
52: ;;
53: *)
54: echo bad unit for tape in: $1
55: ;;
56: esac
57: ;;
58:
59: fsd*|smd*|xfd*|fuj*|xsd*)
60: unit=`expr $i : '...\(.*\)'`
61: case $i in
62: fsd*) name=fsd; blk=1; chr=5;;
63: smd*) name=smd; blk=1; chr=5;;
64: xfd*) name=xfd; blk=1; chr=5;;
65: fuj*) name=fuj; blk=1; chr=5;;
66: xsd*) name=xsd; blk=1; chr=5;;
67: esac
68: case $unit in
69: 0|1|2|3|4|5|6|7|8|9|a|b|c|d|e|f)
70: case $unit in
71: a) u=10 ;;
72: b) u=11 ;;
73: c) u=12 ;;
74: d) u=13 ;;
75: e) u=14 ;;
76: f) u=15 ;;
77: *) u=$unit ;;
78: esac
79:
80: /etc/mknod ${name}${unit}a b $blk `expr $u '*' 8 + 0`
81: /etc/mknod ${name}${unit}b b $blk `expr $u '*' 8 + 1`
82: /etc/mknod ${name}${unit}c b $blk `expr $u '*' 8 + 2`
83: /etc/mknod ${name}${unit}d b $blk `expr $u '*' 8 + 3`
84: /etc/mknod ${name}${unit}e b $blk `expr $u '*' 8 + 4`
85: /etc/mknod ${name}${unit}f b $blk `expr $u '*' 8 + 5`
86: /etc/mknod r${name}${unit}a c $chr `expr $u '*' 8 + 0`
87: /etc/mknod r${name}${unit}b c $chr `expr $u '*' 8 + 1`
88: /etc/mknod r${name}${unit}c c $chr `expr $u '*' 8 + 2`
89: /etc/mknod r${name}${unit}d c $chr `expr $u '*' 8 + 3`
90: /etc/mknod r${name}${unit}e c $chr `expr $u '*' 8 + 4`
91: /etc/mknod r${name}${unit}f c $chr `expr $u '*' 8 + 5`
92:
93: chmod 644 ${name}${unit}a
94: chmod 644 ${name}${unit}b
95: chmod 644 ${name}${unit}c
96: chmod 644 ${name}${unit}d
97: chmod 644 ${name}${unit}e
98: chmod 644 ${name}${unit}f
99: chmod 644 r${name}${unit}a
100: chmod 644 r${name}${unit}b
101: chmod 644 r${name}${unit}c
102: chmod 644 r${name}${unit}d
103: chmod 644 r${name}${unit}e
104: chmod 644 r${name}${unit}f
105: ;;
106: *)
107: echo bad unit for disk in: $i
108: ;;
109: esac
110: ;;
111:
112: vx*)
113: unit=`expr $i : 'vx\(.*\)'`
114: case $unit in
115: 0|1|2|3|4|5|6|7|8|9|a|b|c|d|e|f)
116: case $unit in
117: a) un=10 ;;
118: b) un=11 ;;
119: c) un=12 ;;
120: d) un=13 ;;
121: e) un=14 ;;
122: f) un=15 ;;
123: *) un=$unit ;;
124: esac
125: eval `echo $un | awk ' { u = $1 } END {
126: for (i = 0; i < 16; i++)
127: printf("/etc/mknod tty%02x c 1 %d; ",u*16+i,u*16+i); }'`
128: ls -1 tty?? | grep [A-F] | while read x; do
129: y=`echo $x | tr [A-F] [a-f]`
130: mv $x $y
131: done
132: ;;
133: *)
134: echo bad unit for vx in: $i
135: ;;
136: esac
137: ;;
138:
139: pty*)
140: class=`expr $i : 'pty\(.*\)'`
141: case $class in
142: 0) offset=0 name=p;;
143: 1) offset=16 name=q;;
144: 2) offset=32 name=r;;
145: *) echo bad unit for pty in: $i;;
146: esac
147: case $class in
148: 0|1|2)
149: umask 0
150: eval `echo $offset $name | awk ' { b=$1; n=$2 } END {
151: for (i = 0; i < 16; i++)
152: printf("/etc/mknod tty%s%x c 9 %d; \
153: /etc/mknod pty%s%x c 10 %d; ", \
154: n, i, b+i, n, i, b+i); }'`
155: ls -1 tty?? | grep [A-F] | while read x; do
156: y=`echo $x | tr [A-F] [a-f]`
157: mv $x $y
158: done
159: ls -1 pty?? | grep [A-F] | while read x; do
160: y=`echo $x | tr [A-F] [a-f]`
161: mv $x $y
162: done
163: umask 77
164: ;;
165: esac
166: ;;
167:
168: lock)
169: /etc/mknod iilock c 14 0
170: chmod 600 iilock
171: ;;
172:
173: local)
174: sh MAKEDEV.local
175: ;;
176: esac
177: done
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.