6 from Exceptions import *
10 # locations of boot os version files
11 BOOT_VERSION_2X_FILE='/usr/bootme/ID'
12 BOOT_VERSION_3X_FILE='/pl_version'
14 # minimium version of the boot os we need to run, as a (major,minor) tuple
15 MINIMUM_BOOT_VERSION= (2,0)
17 # minimum version of python required to run the boot manager
18 MINIMUM_PYTHON_VERSION= (2,2,0)
23 Setup the boot manager so it can run, do any extra necessary
24 hardware setup (to fix old cd problems)
26 Sets the following variables:
27 BOOT_CD_VERSION A two number tuple of the boot cd version
30 log.write( "\n\nStep: Initializing the BootManager.\n" )
33 log.write( "Opening connection to API server\n" )
35 api_inst= xmlrpclib.Server( vars['BOOT_API_SERVER'], verbose=0 )
37 raise BootManagerException, \
38 "configuration file does not specify API server URL"
40 vars['API_SERVER_INST']= api_inst
42 if not __check_boot_version( vars, log ):
43 raise BootManagerException, \
44 "Boot CD version insufficient to run the Boot Manager"
46 log.write( "Running on boot cd version: %s\n" %
47 str(vars['BOOT_CD_VERSION']) )
49 BOOT_CD_VERSION= vars['BOOT_CD_VERSION']
51 # old cds need extra modules loaded for compaq smart array
52 if BOOT_CD_VERSION[0] == 2:
54 has_smartarray= utils.sysexec_noerr(
55 'lspci | egrep "0e11:b178|0e11:4070|0e11:4080|0e11:4082|0e11:4083"')
58 log.write( "Loading support for Compaq smart array\n" )
59 utils.sysexec_noerr( "modprobe cciss", log )
60 _create_cciss_dev_entries()
63 has_fusion= utils.sysexec_noerr('lspci | egrep "1000:0030"')
66 log.write( "Loading support for Fusion MPT SCSI controllers\n" )
67 utils.sysexec_noerr( "modprobe mptscsih", log )
69 # for anything that needs to know we are running under the boot cd and
71 os.environ['PL_BOOTCD']= "1"
77 def __check_boot_version( vars, log ):
79 identify which version of the boot os we are running on, and whether
80 or not we can run at all on the given version. later, this will be
81 used to identify extra packages to download to enable the boot manager
82 to run on any supported version.
84 2.x cds have the version file in /usr/bootme/ID, which looked like:
85 'PlanetLab BootCD v2.0.3'
87 3.x cds have the version file in /pl_version, which lookes like:
88 'PlanetLab BootCD 3.0-beta0.3'
90 All current known version strings that we support:
92 PlanetLab BootCD 3.0-beta0.1
93 PlanetLab BootCD 3.0-beta0.3
95 PlanetLab BootCD v2.0.1
96 PlanetLab BootCD v2.0.2
97 PlanetLab BootCD v2.0.3
99 Returns 1 if the boot os version is identified and will work
100 to run the boot manager. Two class variables are set:
101 BOOT_OS_MAJOR_VERSION
102 BOOT_OS_MINOR_VERSION
103 version strings with three parts parts to the version ignore the
104 middle number (so 2.0.3 is major 2, minor 3)
106 Returns 0 if the boot os is insufficient to run the boot manager
110 # check for a 3.x version first
111 version_file= file(BOOT_VERSION_3X_FILE,'r')
112 full_version= string.strip(version_file.read())
115 version_parts= string.split(full_version)
116 version= version_parts[-1]
118 version_numbers= string.split(version,".")
119 if len(version_numbers) == 2:
120 BOOT_OS_MAJOR_VERSION= int(version_numbers[0])
121 BOOT_OS_MINOR_VERSION= int(version_numbers[1])
123 # for 3.x cds, if there are more than two parts
124 # separated by a ., its one of the beta cds.
125 # hardcode as a 3.0 cd
126 BOOT_OS_MAJOR_VERSION= 3
127 BOOT_OS_MINOR_VERSION= 0
129 vars['BOOT_CD_VERSION']= (BOOT_OS_MAJOR_VERSION,BOOT_OS_MINOR_VERSION)
131 if (BOOT_OS_MAJOR_VERSION,BOOT_OS_MINOR_VERSION) >= \
132 MINIMUM_BOOT_VERSION:
137 except IndexError, e:
144 # check for a 2.x version first
145 version_file= file(BOOT_VERSION_2X_FILE,'r')
146 full_version= string.strip(version_file.read())
149 version_parts= string.split(full_version)
150 version= version_parts[-1]
151 if version[0] == 'v':
154 version_numbers= string.split(version,".")
155 if len(version_numbers) == 2:
156 BOOT_OS_MAJOR_VERSION= int(version_numbers[0])
157 BOOT_OS_MINOR_VERSION= int(version_numbers[1])
159 BOOT_OS_MAJOR_VERSION= int(version_numbers[0])
160 BOOT_OS_MINOR_VERSION= int(version_numbers[2])
162 vars['BOOT_CD_VERSION']= (BOOT_OS_MAJOR_VERSION,BOOT_OS_MINOR_VERSION)
164 if (BOOT_OS_MAJOR_VERSION,BOOT_OS_MINOR_VERSION) >= \
165 MINIMUM_BOOT_VERSION:
170 except IndexError, e:
180 def _create_cciss_dev_entries():
181 utils.sysexec_noerr( "mknod /dev/cciss/c0d0 b 104 0" )
182 utils.sysexec_noerr( "mknod /dev/cciss/c0d0p1 b 104 1" )
183 utils.sysexec_noerr( "mknod /dev/cciss/c0d0p2 b 104 2" )
184 utils.sysexec_noerr( "mknod /dev/cciss/c0d0p3 b 104 3" )
185 utils.sysexec_noerr( "mknod /dev/cciss/c0d0p4 b 104 4" )
186 utils.sysexec_noerr( "mknod /dev/cciss/c0d0p5 b 104 5" )
187 utils.sysexec_noerr( "mknod /dev/cciss/c0d0p6 b 104 6" )
188 utils.sysexec_noerr( "mknod /dev/cciss/c0d0p7 b 104 7" )
189 utils.sysexec_noerr( "mknod /dev/cciss/c0d0p8 b 104 8" )
190 utils.sysexec_noerr( "mknod /dev/cciss/c0d0p9 b 104 9" )
191 utils.sysexec_noerr( "mknod /dev/cciss/c0d0p10 b 104 10" )
192 utils.sysexec_noerr( "mknod /dev/cciss/c0d0p11 b 104 11" )
193 utils.sysexec_noerr( "mknod /dev/cciss/c0d0p12 b 104 12" )
194 utils.sysexec_noerr( "mknod /dev/cciss/c0d0p13 b 104 13" )
195 utils.sysexec_noerr( "mknod /dev/cciss/c0d0p14 b 104 14" )
196 utils.sysexec_noerr( "mknod /dev/cciss/c0d0p15 b 104 15" )
197 utils.sysexec_noerr( "mknod /dev/cciss/c0d1 b 104 16" )
198 utils.sysexec_noerr( "mknod /dev/cciss/c0d1p1 b 104 17" )
199 utils.sysexec_noerr( "mknod /dev/cciss/c0d1p2 b 104 18" )
200 utils.sysexec_noerr( "mknod /dev/cciss/c0d1p3 b 104 19" )
201 utils.sysexec_noerr( "mknod /dev/cciss/c0d1p4 b 104 20" )
202 utils.sysexec_noerr( "mknod /dev/cciss/c0d1p5 b 104 21" )
203 utils.sysexec_noerr( "mknod /dev/cciss/c0d1p6 b 104 22" )
204 utils.sysexec_noerr( "mknod /dev/cciss/c0d1p7 b 104 23" )
205 utils.sysexec_noerr( "mknod /dev/cciss/c0d1p8 b 104 24" )
206 utils.sysexec_noerr( "mknod /dev/cciss/c0d1p9 b 104 25" )
207 utils.sysexec_noerr( "mknod /dev/cciss/c0d1p10 b 104 26" )
208 utils.sysexec_noerr( "mknod /dev/cciss/c0d1p11 b 104 27" )
209 utils.sysexec_noerr( "mknod /dev/cciss/c0d1p12 b 104 28" )
210 utils.sysexec_noerr( "mknod /dev/cciss/c0d1p13 b 104 29" )
211 utils.sysexec_noerr( "mknod /dev/cciss/c0d1p14 b 104 30" )
212 utils.sysexec_noerr( "mknod /dev/cciss/c0d1p15 b 104 31" )
213 utils.sysexec_noerr( "mknod /dev/cciss/c0d2 b 104 32" )
214 utils.sysexec_noerr( "mknod /dev/cciss/c0d2p1 b 104 33" )
215 utils.sysexec_noerr( "mknod /dev/cciss/c0d2p2 b 104 34" )
216 utils.sysexec_noerr( "mknod /dev/cciss/c0d2p3 b 104 35" )
217 utils.sysexec_noerr( "mknod /dev/cciss/c0d2p4 b 104 36" )
218 utils.sysexec_noerr( "mknod /dev/cciss/c0d2p5 b 104 37" )
219 utils.sysexec_noerr( "mknod /dev/cciss/c0d2p6 b 104 38" )
220 utils.sysexec_noerr( "mknod /dev/cciss/c0d2p7 b 104 39" )
221 utils.sysexec_noerr( "mknod /dev/cciss/c0d2p8 b 104 40" )
222 utils.sysexec_noerr( "mknod /dev/cciss/c0d2p9 b 104 41" )
223 utils.sysexec_noerr( "mknod /dev/cciss/c0d2p10 b 104 42" )
224 utils.sysexec_noerr( "mknod /dev/cciss/c0d2p11 b 104 43" )
225 utils.sysexec_noerr( "mknod /dev/cciss/c0d2p12 b 104 44" )
226 utils.sysexec_noerr( "mknod /dev/cciss/c0d2p13 b 104 45" )
227 utils.sysexec_noerr( "mknod /dev/cciss/c0d2p14 b 104 46" )
228 utils.sysexec_noerr( "mknod /dev/cciss/c0d2p15 b 104 47" )
229 utils.sysexec_noerr( "mknod /dev/cciss/c0d3 b 104 48" )
230 utils.sysexec_noerr( "mknod /dev/cciss/c0d3p1 b 104 49" )
231 utils.sysexec_noerr( "mknod /dev/cciss/c0d3p2 b 104 50" )
232 utils.sysexec_noerr( "mknod /dev/cciss/c0d3p3 b 104 51" )
233 utils.sysexec_noerr( "mknod /dev/cciss/c0d3p4 b 104 52" )
234 utils.sysexec_noerr( "mknod /dev/cciss/c0d3p5 b 104 53" )
235 utils.sysexec_noerr( "mknod /dev/cciss/c0d3p6 b 104 54" )
236 utils.sysexec_noerr( "mknod /dev/cciss/c0d3p7 b 104 55" )
237 utils.sysexec_noerr( "mknod /dev/cciss/c0d3p8 b 104 56" )
238 utils.sysexec_noerr( "mknod /dev/cciss/c0d3p9 b 104 57" )
239 utils.sysexec_noerr( "mknod /dev/cciss/c0d3p10 b 104 58" )
240 utils.sysexec_noerr( "mknod /dev/cciss/c0d3p11 b 104 59" )
241 utils.sysexec_noerr( "mknod /dev/cciss/c0d3p12 b 104 60" )
242 utils.sysexec_noerr( "mknod /dev/cciss/c0d3p13 b 104 61" )
243 utils.sysexec_noerr( "mknod /dev/cciss/c0d3p14 b 104 62" )
244 utils.sysexec_noerr( "mknod /dev/cciss/c0d3p15 b 104 63" )
245 utils.sysexec_noerr( "mknod /dev/cciss/c0d4 b 104 64" )
246 utils.sysexec_noerr( "mknod /dev/cciss/c0d4p1 b 104 65" )
247 utils.sysexec_noerr( "mknod /dev/cciss/c0d4p2 b 104 66" )
248 utils.sysexec_noerr( "mknod /dev/cciss/c0d4p3 b 104 67" )
249 utils.sysexec_noerr( "mknod /dev/cciss/c0d4p4 b 104 68" )
250 utils.sysexec_noerr( "mknod /dev/cciss/c0d4p5 b 104 69" )
251 utils.sysexec_noerr( "mknod /dev/cciss/c0d4p6 b 104 70" )
252 utils.sysexec_noerr( "mknod /dev/cciss/c0d4p7 b 104 71" )
253 utils.sysexec_noerr( "mknod /dev/cciss/c0d4p8 b 104 72" )
254 utils.sysexec_noerr( "mknod /dev/cciss/c0d4p9 b 104 73" )
255 utils.sysexec_noerr( "mknod /dev/cciss/c0d4p10 b 104 74" )
256 utils.sysexec_noerr( "mknod /dev/cciss/c0d4p11 b 104 75" )
257 utils.sysexec_noerr( "mknod /dev/cciss/c0d4p12 b 104 76" )
258 utils.sysexec_noerr( "mknod /dev/cciss/c0d4p13 b 104 77" )
259 utils.sysexec_noerr( "mknod /dev/cciss/c0d4p14 b 104 78" )
260 utils.sysexec_noerr( "mknod /dev/cciss/c0d4p15 b 104 79" )
261 utils.sysexec_noerr( "mknod /dev/cciss/c0d5 b 104 80" )
262 utils.sysexec_noerr( "mknod /dev/cciss/c0d5p1 b 104 81" )
263 utils.sysexec_noerr( "mknod /dev/cciss/c0d5p2 b 104 82" )
264 utils.sysexec_noerr( "mknod /dev/cciss/c0d5p3 b 104 83" )
265 utils.sysexec_noerr( "mknod /dev/cciss/c0d5p4 b 104 84" )
266 utils.sysexec_noerr( "mknod /dev/cciss/c0d5p5 b 104 85" )
267 utils.sysexec_noerr( "mknod /dev/cciss/c0d5p6 b 104 86" )
268 utils.sysexec_noerr( "mknod /dev/cciss/c0d5p7 b 104 87" )
269 utils.sysexec_noerr( "mknod /dev/cciss/c0d5p8 b 104 88" )
270 utils.sysexec_noerr( "mknod /dev/cciss/c0d5p9 b 104 89" )
271 utils.sysexec_noerr( "mknod /dev/cciss/c0d5p10 b 104 90" )
272 utils.sysexec_noerr( "mknod /dev/cciss/c0d5p11 b 104 91" )
273 utils.sysexec_noerr( "mknod /dev/cciss/c0d5p12 b 104 92" )
274 utils.sysexec_noerr( "mknod /dev/cciss/c0d5p13 b 104 93" )
275 utils.sysexec_noerr( "mknod /dev/cciss/c0d5p14 b 104 94" )
276 utils.sysexec_noerr( "mknod /dev/cciss/c0d5p15 b 104 95" )
277 utils.sysexec_noerr( "mknod /dev/cciss/c0d6 b 104 96" )
278 utils.sysexec_noerr( "mknod /dev/cciss/c0d6p1 b 104 97" )
279 utils.sysexec_noerr( "mknod /dev/cciss/c0d6p2 b 104 98" )
280 utils.sysexec_noerr( "mknod /dev/cciss/c0d6p3 b 104 99" )
281 utils.sysexec_noerr( "mknod /dev/cciss/c0d6p4 b 104 100" )
282 utils.sysexec_noerr( "mknod /dev/cciss/c0d6p5 b 104 101" )
283 utils.sysexec_noerr( "mknod /dev/cciss/c0d6p6 b 104 102" )
284 utils.sysexec_noerr( "mknod /dev/cciss/c0d6p7 b 104 103" )
285 utils.sysexec_noerr( "mknod /dev/cciss/c0d6p8 b 104 104" )
286 utils.sysexec_noerr( "mknod /dev/cciss/c0d6p9 b 104 105" )
287 utils.sysexec_noerr( "mknod /dev/cciss/c0d6p10 b 104 106" )
288 utils.sysexec_noerr( "mknod /dev/cciss/c0d6p11 b 104 107" )
289 utils.sysexec_noerr( "mknod /dev/cciss/c0d6p12 b 104 108" )
290 utils.sysexec_noerr( "mknod /dev/cciss/c0d6p13 b 104 109" )
291 utils.sysexec_noerr( "mknod /dev/cciss/c0d6p14 b 104 110" )
292 utils.sysexec_noerr( "mknod /dev/cciss/c0d6p15 b 104 111" )
293 utils.sysexec_noerr( "mknod /dev/cciss/c0d7 b 104 112" )
294 utils.sysexec_noerr( "mknod /dev/cciss/c0d7p1 b 104 113" )
295 utils.sysexec_noerr( "mknod /dev/cciss/c0d7p2 b 104 114" )
296 utils.sysexec_noerr( "mknod /dev/cciss/c0d7p3 b 104 115" )
297 utils.sysexec_noerr( "mknod /dev/cciss/c0d7p4 b 104 116" )
298 utils.sysexec_noerr( "mknod /dev/cciss/c0d7p5 b 104 117" )
299 utils.sysexec_noerr( "mknod /dev/cciss/c0d7p6 b 104 118" )
300 utils.sysexec_noerr( "mknod /dev/cciss/c0d7p7 b 104 119" )
301 utils.sysexec_noerr( "mknod /dev/cciss/c0d7p8 b 104 120" )
302 utils.sysexec_noerr( "mknod /dev/cciss/c0d7p9 b 104 121" )
303 utils.sysexec_noerr( "mknod /dev/cciss/c0d7p10 b 104 122" )
304 utils.sysexec_noerr( "mknod /dev/cciss/c0d7p11 b 104 123" )
305 utils.sysexec_noerr( "mknod /dev/cciss/c0d7p12 b 104 124" )
306 utils.sysexec_noerr( "mknod /dev/cciss/c0d7p13 b 104 125" )
307 utils.sysexec_noerr( "mknod /dev/cciss/c0d7p14 b 104 126" )
308 utils.sysexec_noerr( "mknod /dev/cciss/c0d7p15 b 104 127" )
309 utils.sysexec_noerr( "mknod /dev/cciss/c0d8 b 104 128" )
310 utils.sysexec_noerr( "mknod /dev/cciss/c0d8p1 b 104 129" )
311 utils.sysexec_noerr( "mknod /dev/cciss/c0d8p2 b 104 130" )
312 utils.sysexec_noerr( "mknod /dev/cciss/c0d8p3 b 104 131" )
313 utils.sysexec_noerr( "mknod /dev/cciss/c0d8p4 b 104 132" )
314 utils.sysexec_noerr( "mknod /dev/cciss/c0d8p5 b 104 133" )
315 utils.sysexec_noerr( "mknod /dev/cciss/c0d8p6 b 104 134" )
316 utils.sysexec_noerr( "mknod /dev/cciss/c0d8p7 b 104 135" )
317 utils.sysexec_noerr( "mknod /dev/cciss/c0d8p8 b 104 136" )
318 utils.sysexec_noerr( "mknod /dev/cciss/c0d8p9 b 104 137" )
319 utils.sysexec_noerr( "mknod /dev/cciss/c0d8p10 b 104 138" )
320 utils.sysexec_noerr( "mknod /dev/cciss/c0d8p11 b 104 139" )
321 utils.sysexec_noerr( "mknod /dev/cciss/c0d8p12 b 104 140" )
322 utils.sysexec_noerr( "mknod /dev/cciss/c0d8p13 b 104 141" )
323 utils.sysexec_noerr( "mknod /dev/cciss/c0d8p14 b 104 142" )
324 utils.sysexec_noerr( "mknod /dev/cciss/c0d8p15 b 104 143" )
325 utils.sysexec_noerr( "mknod /dev/cciss/c0d9 b 104 144" )
326 utils.sysexec_noerr( "mknod /dev/cciss/c0d9p1 b 104 145" )
327 utils.sysexec_noerr( "mknod /dev/cciss/c0d9p2 b 104 146" )
328 utils.sysexec_noerr( "mknod /dev/cciss/c0d9p3 b 104 147" )
329 utils.sysexec_noerr( "mknod /dev/cciss/c0d9p4 b 104 148" )
330 utils.sysexec_noerr( "mknod /dev/cciss/c0d9p5 b 104 149" )
331 utils.sysexec_noerr( "mknod /dev/cciss/c0d9p6 b 104 150" )
332 utils.sysexec_noerr( "mknod /dev/cciss/c0d9p7 b 104 151" )
333 utils.sysexec_noerr( "mknod /dev/cciss/c0d9p8 b 104 152" )
334 utils.sysexec_noerr( "mknod /dev/cciss/c0d9p9 b 104 153" )
335 utils.sysexec_noerr( "mknod /dev/cciss/c0d9p10 b 104 154" )
336 utils.sysexec_noerr( "mknod /dev/cciss/c0d9p11 b 104 155" )
337 utils.sysexec_noerr( "mknod /dev/cciss/c0d9p12 b 104 156" )
338 utils.sysexec_noerr( "mknod /dev/cciss/c0d9p13 b 104 157" )
339 utils.sysexec_noerr( "mknod /dev/cciss/c0d9p14 b 104 158" )
340 utils.sysexec_noerr( "mknod /dev/cciss/c0d9p15 b 104 159" )
341 utils.sysexec_noerr( "mknod /dev/cciss/c0d10 b 104 160" )
342 utils.sysexec_noerr( "mknod /dev/cciss/c0d10p1 b 104 161" )
343 utils.sysexec_noerr( "mknod /dev/cciss/c0d10p2 b 104 162" )
344 utils.sysexec_noerr( "mknod /dev/cciss/c0d10p3 b 104 163" )
345 utils.sysexec_noerr( "mknod /dev/cciss/c0d10p4 b 104 164" )
346 utils.sysexec_noerr( "mknod /dev/cciss/c0d10p5 b 104 165" )
347 utils.sysexec_noerr( "mknod /dev/cciss/c0d10p6 b 104 166" )
348 utils.sysexec_noerr( "mknod /dev/cciss/c0d10p7 b 104 167" )
349 utils.sysexec_noerr( "mknod /dev/cciss/c0d10p8 b 104 168" )
350 utils.sysexec_noerr( "mknod /dev/cciss/c0d10p9 b 104 169" )
351 utils.sysexec_noerr( "mknod /dev/cciss/c0d10p10 b 104 170" )
352 utils.sysexec_noerr( "mknod /dev/cciss/c0d10p11 b 104 171" )
353 utils.sysexec_noerr( "mknod /dev/cciss/c0d10p12 b 104 172" )
354 utils.sysexec_noerr( "mknod /dev/cciss/c0d10p13 b 104 173" )
355 utils.sysexec_noerr( "mknod /dev/cciss/c0d10p14 b 104 174" )
356 utils.sysexec_noerr( "mknod /dev/cciss/c0d10p15 b 104 175" )
357 utils.sysexec_noerr( "mknod /dev/cciss/c0d11 b 104 176" )
358 utils.sysexec_noerr( "mknod /dev/cciss/c0d11p1 b 104 177" )
359 utils.sysexec_noerr( "mknod /dev/cciss/c0d11p2 b 104 178" )
360 utils.sysexec_noerr( "mknod /dev/cciss/c0d11p3 b 104 179" )
361 utils.sysexec_noerr( "mknod /dev/cciss/c0d11p4 b 104 180" )
362 utils.sysexec_noerr( "mknod /dev/cciss/c0d11p5 b 104 181" )
363 utils.sysexec_noerr( "mknod /dev/cciss/c0d11p6 b 104 182" )
364 utils.sysexec_noerr( "mknod /dev/cciss/c0d11p7 b 104 183" )
365 utils.sysexec_noerr( "mknod /dev/cciss/c0d11p8 b 104 184" )
366 utils.sysexec_noerr( "mknod /dev/cciss/c0d11p9 b 104 185" )
367 utils.sysexec_noerr( "mknod /dev/cciss/c0d11p10 b 104 186" )
368 utils.sysexec_noerr( "mknod /dev/cciss/c0d11p11 b 104 187" )
369 utils.sysexec_noerr( "mknod /dev/cciss/c0d11p12 b 104 188" )
370 utils.sysexec_noerr( "mknod /dev/cciss/c0d11p13 b 104 189" )
371 utils.sysexec_noerr( "mknod /dev/cciss/c0d11p14 b 104 190" )
372 utils.sysexec_noerr( "mknod /dev/cciss/c0d11p15 b 104 191" )
373 utils.sysexec_noerr( "mknod /dev/cciss/c0d12 b 104 192" )
374 utils.sysexec_noerr( "mknod /dev/cciss/c0d12p1 b 104 193" )
375 utils.sysexec_noerr( "mknod /dev/cciss/c0d12p2 b 104 194" )
376 utils.sysexec_noerr( "mknod /dev/cciss/c0d12p3 b 104 195" )
377 utils.sysexec_noerr( "mknod /dev/cciss/c0d12p4 b 104 196" )
378 utils.sysexec_noerr( "mknod /dev/cciss/c0d12p5 b 104 197" )
379 utils.sysexec_noerr( "mknod /dev/cciss/c0d12p6 b 104 198" )
380 utils.sysexec_noerr( "mknod /dev/cciss/c0d12p7 b 104 199" )
381 utils.sysexec_noerr( "mknod /dev/cciss/c0d12p8 b 104 200" )
382 utils.sysexec_noerr( "mknod /dev/cciss/c0d12p9 b 104 201" )
383 utils.sysexec_noerr( "mknod /dev/cciss/c0d12p10 b 104 202" )
384 utils.sysexec_noerr( "mknod /dev/cciss/c0d12p11 b 104 203" )
385 utils.sysexec_noerr( "mknod /dev/cciss/c0d12p12 b 104 204" )
386 utils.sysexec_noerr( "mknod /dev/cciss/c0d12p13 b 104 205" )
387 utils.sysexec_noerr( "mknod /dev/cciss/c0d12p14 b 104 206" )
388 utils.sysexec_noerr( "mknod /dev/cciss/c0d12p15 b 104 207" )
389 utils.sysexec_noerr( "mknod /dev/cciss/c0d13 b 104 208" )
390 utils.sysexec_noerr( "mknod /dev/cciss/c0d13p1 b 104 209" )
391 utils.sysexec_noerr( "mknod /dev/cciss/c0d13p2 b 104 210" )
392 utils.sysexec_noerr( "mknod /dev/cciss/c0d13p3 b 104 211" )
393 utils.sysexec_noerr( "mknod /dev/cciss/c0d13p4 b 104 212" )
394 utils.sysexec_noerr( "mknod /dev/cciss/c0d13p5 b 104 213" )
395 utils.sysexec_noerr( "mknod /dev/cciss/c0d13p6 b 104 214" )
396 utils.sysexec_noerr( "mknod /dev/cciss/c0d13p7 b 104 215" )
397 utils.sysexec_noerr( "mknod /dev/cciss/c0d13p8 b 104 216" )
398 utils.sysexec_noerr( "mknod /dev/cciss/c0d13p9 b 104 217" )
399 utils.sysexec_noerr( "mknod /dev/cciss/c0d13p10 b 104 218" )
400 utils.sysexec_noerr( "mknod /dev/cciss/c0d13p11 b 104 219" )
401 utils.sysexec_noerr( "mknod /dev/cciss/c0d13p12 b 104 220" )
402 utils.sysexec_noerr( "mknod /dev/cciss/c0d13p13 b 104 221" )
403 utils.sysexec_noerr( "mknod /dev/cciss/c0d13p14 b 104 222" )
404 utils.sysexec_noerr( "mknod /dev/cciss/c0d13p15 b 104 223" )
405 utils.sysexec_noerr( "mknod /dev/cciss/c0d14 b 104 224" )
406 utils.sysexec_noerr( "mknod /dev/cciss/c0d14p1 b 104 225" )
407 utils.sysexec_noerr( "mknod /dev/cciss/c0d14p2 b 104 226" )
408 utils.sysexec_noerr( "mknod /dev/cciss/c0d14p3 b 104 227" )
409 utils.sysexec_noerr( "mknod /dev/cciss/c0d14p4 b 104 228" )
410 utils.sysexec_noerr( "mknod /dev/cciss/c0d14p5 b 104 229" )
411 utils.sysexec_noerr( "mknod /dev/cciss/c0d14p6 b 104 230" )
412 utils.sysexec_noerr( "mknod /dev/cciss/c0d14p7 b 104 231" )
413 utils.sysexec_noerr( "mknod /dev/cciss/c0d14p8 b 104 232" )
414 utils.sysexec_noerr( "mknod /dev/cciss/c0d14p9 b 104 233" )
415 utils.sysexec_noerr( "mknod /dev/cciss/c0d14p10 b 104 234" )
416 utils.sysexec_noerr( "mknod /dev/cciss/c0d14p11 b 104 235" )
417 utils.sysexec_noerr( "mknod /dev/cciss/c0d14p12 b 104 236" )
418 utils.sysexec_noerr( "mknod /dev/cciss/c0d14p13 b 104 237" )
419 utils.sysexec_noerr( "mknod /dev/cciss/c0d14p14 b 104 238" )
420 utils.sysexec_noerr( "mknod /dev/cciss/c0d14p15 b 104 239" )
421 utils.sysexec_noerr( "mknod /dev/cciss/c0d15 b 104 240" )
422 utils.sysexec_noerr( "mknod /dev/cciss/c0d15p1 b 104 241" )
423 utils.sysexec_noerr( "mknod /dev/cciss/c0d15p2 b 104 242" )
424 utils.sysexec_noerr( "mknod /dev/cciss/c0d15p3 b 104 243" )
425 utils.sysexec_noerr( "mknod /dev/cciss/c0d15p4 b 104 244" )
426 utils.sysexec_noerr( "mknod /dev/cciss/c0d15p5 b 104 245" )
427 utils.sysexec_noerr( "mknod /dev/cciss/c0d15p6 b 104 246" )
428 utils.sysexec_noerr( "mknod /dev/cciss/c0d15p7 b 104 247" )
429 utils.sysexec_noerr( "mknod /dev/cciss/c0d15p8 b 104 248" )
430 utils.sysexec_noerr( "mknod /dev/cciss/c0d15p9 b 104 249" )
431 utils.sysexec_noerr( "mknod /dev/cciss/c0d15p10 b 104 250" )
432 utils.sysexec_noerr( "mknod /dev/cciss/c0d15p11 b 104 251" )
433 utils.sysexec_noerr( "mknod /dev/cciss/c0d15p12 b 104 252" )
434 utils.sysexec_noerr( "mknod /dev/cciss/c0d15p13 b 104 253" )
435 utils.sysexec_noerr( "mknod /dev/cciss/c0d15p14 b 104 254" )
436 utils.sysexec_noerr( "mknod /dev/cciss/c0d15p15 b 104 255" )