|
|
1.1 ! root 1: .\" Copyright (c) 1988 The Regents of the University of California. ! 2: .\" All rights reserved. ! 3: .\" ! 4: .\" Redistribution and use in source and binary forms are permitted ! 5: .\" provided that the above copyright notice and this paragraph are ! 6: .\" duplicated in all such forms and that any documentation, ! 7: .\" advertising materials, and other materials related to such ! 8: .\" distribution and use acknowledge that the software was developed ! 9: .\" by the University of California, Berkeley. The name of the ! 10: .\" University may not be used to endorse or promote products derived ! 11: .\" from this software without specific prior written permission. ! 12: .\" THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR ! 13: .\" IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED ! 14: .\" WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. ! 15: .\" ! 16: .\" @(#)a.t 1.5 (Berkeley) 3/7/89 ! 17: .\" ! 18: .de IR ! 19: \fI\\$1\fP\|\\$2 ! 20: .. ! 21: .ds LH "Installing/Operating \*(4B ! 22: .nr H1 6 ! 23: .nr H2 0 ! 24: .ds RH "Appendix A \- bootstrap details ! 25: .ds CF \*(DY ! 26: .bp ! 27: .LG ! 28: .B ! 29: .ce ! 30: APPENDIX A \- BOOTSTRAP DETAILS ! 31: .sp 2 ! 32: .R ! 33: .NL ! 34: .PP ! 35: This appendix contains pertinent files and numbers regarding the ! 36: bootstrapping procedure for \*(4B. You should never have to ! 37: look at this appendix. However, if there are problems in installing ! 38: the distribution on your machine, the material contained here may ! 39: prove useful. ! 40: .SH ! 41: Contents of the distribution tape(s) ! 42: .PP ! 43: The distribution normally consists of three 1600bpi 2400' magnetic ! 44: tapes or one 6250bpi 2400' magnetic tape. ! 45: The layout of the 1600bpi tapes is listed below. The 6250bpi ! 46: tape is in the same order, but on a single tape. ! 47: The first tape contains the following files on it: ! 48: .DS ! 49: .TS ! 50: l l l l. ! 51: Tape file Block size Records* Contents ! 52: _ ! 53: one 1024 600 file system containing \fIboot\fP, \fIvdformat\fP, and \fIcopy\fP ! 54: two 10240 205 ``mini root'' file system ! 55: three 10240 578 \fIdump\fP\|(8) of distribution root file system ! 56: four 20480 1489 \fItar\fP\|(1) image of binaries and libraries in /usr ! 57: .TE ! 58: .DE ! 59: The second tape contains the following file: ! 60: .DS ! 61: .TS ! 62: l l l l. ! 63: Tape file Block size # Records Contents ! 64: _ ! 65: one 20480 1911 \fItar\fP\|(1) image of /usr/src ! 66: .\"three 580 \fItar\fP\|(1) image of /usr/lib/vfont ! 67: .TE ! 68: .DE ! 69: The third tape contains the following files: ! 70: .DS ! 71: .TS ! 72: l l l l. ! 73: Tape file Block size # Records Contents ! 74: _ ! 75: one 20480 415 \fItar\fP\|(1) image of /sys, including GENERIC system ! 76: two 20480 1577 \fItar\fP\|(1) image of user contributed software ! 77: .\"two 250 \fItar\fP\|(1) image of /usr/ingres ! 78: .TE ! 79: .DE ! 80: .KS ! 81: .PP ! 82: The distribution tape is made with the shell scripts located ! 83: in the directory /sys/tahoedist. To build a distribution tape ! 84: one must first create a mini root file system with the \fIbuildmini\fP ! 85: shell script, and a boot file system with the \fIbuildboot\fP ! 86: shell script. ! 87: .de DS ! 88: .ne 2i ! 89: .nf ! 90: .in .5i ! 91: .. ! 92: .de DE ! 93: .fi ! 94: .in ! 95: .. ! 96: .DS ! 97: #!/bin/sh - ! 98: # ! 99: # Copyright (c) 1988 Regents of the University of California. ! 100: # All rights reserved. ! 101: # ! 102: # Redistribution and use in source and binary forms are permitted ! 103: # provided that the above copyright notice and this paragraph are ! 104: # duplicated in all such forms and that any documentation, ! 105: # advertising materials, and other materials related to such ! 106: # distribution and use acknowledge that the software was developed ! 107: # by the University of California, Berkeley. The name of the ! 108: # University may not be used to endorse or promote products derived ! 109: # from this software without specific prior written permission. ! 110: # THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR ! 111: # IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED ! 112: # WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. ! 113: # ! 114: # @(#)buildboot 1.4 (Berkeley) 7/29/88 ! 115: # ! 116: boot=dk2b ! 117: boottype=xfd ! 118: bootmnt=/tmp/mini ! 119: DISTROOT=/nbsd ! 120: ! 121: date ! 122: umount /dev/${boot} ! 123: newfs -s 1200 ${boot} ${boottype} ! 124: fsck /dev/r${boot} ! 125: mount /dev/${boot} ${bootmnt} ! 126: cp $DISTROOT/stand/copy ${bootmnt} ! 127: #cp $DISTROOT/stand/vdformat ${bootmnt} ! 128: cp $DISTROOT/boot ${bootmnt} ! 129: cp $DISTROOT/wcs ${bootmnt} ! 130: cp $DISTROOT/fppwcs ${bootmnt} ! 131: #cp $DISTROOT/poc ${bootmnt} ! 132: #cp $DISTROOT/poc1 ${bootmnt} ! 133: #cp $DISTROOT/poc2 ${bootmnt} ! 134: #cp $DISTROOT/fppoc ${bootmnt} ! 135: sync ! 136: umount /dev/${boot} ! 137: fsck /dev/${boot} ! 138: date ! 139: .DE ! 140: .KE ! 141: .DS ! 142: #!/bin/sh - ! 143: # ! 144: # Copyright (c) 1988 Regents of the University of California. ! 145: # All rights reserved. ! 146: # ! 147: # Redistribution and use in source and binary forms are permitted ! 148: # provided that the above copyright notice and this paragraph are ! 149: # duplicated in all such forms and that any documentation, ! 150: # advertising materials, and other materials related to such ! 151: # distribution and use acknowledge that the software was developed ! 152: # by the University of California, Berkeley. The name of the ! 153: # University may not be used to endorse or promote products derived ! 154: # from this software without specific prior written permission. ! 155: # THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR ! 156: # IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED ! 157: # WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. ! 158: # ! 159: # @(#)buildmini 1.5 (Berkeley) 7/28/88 ! 160: # ! 161: dist=/sys/tahoedist ! 162: miniroot=dk4a ! 163: minimnt=/tmp/mini ! 164: # ! 165: date ! 166: umount /dev/${miniroot} ! 167: newfs -s 4096 ${miniroot} ! 168: fsck /dev/r${miniroot} ! 169: mount /dev/${miniroot} ${minimnt} ! 170: cd ${minimnt}; sh ${dist}/get ! 171: cd ${dist}; sync ! 172: umount /dev/${miniroot} ! 173: fsck /dev/${miniroot} ! 174: date ! 175: .DE ! 176: .PP ! 177: .DS ! 178: The \fIbuildmini\fP script uses the \fIget\fP script to build the file system. ! 179: ! 180: #!/bin/sh - ! 181: # ! 182: # Copyright (c) 1988 Regents of the University of California. ! 183: # All rights reserved. ! 184: # ! 185: # Redistribution and use in source and binary forms are permitted ! 186: # provided that the above copyright notice and this paragraph are ! 187: # duplicated in all such forms and that any documentation, ! 188: # advertising materials, and other materials related to such ! 189: # distribution and use acknowledge that the software was developed ! 190: # by the University of California, Berkeley. The name of the ! 191: # University may not be used to endorse or promote products derived ! 192: # from this software without specific prior written permission. ! 193: # THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR ! 194: # IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED ! 195: # WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. ! 196: # ! 197: # @(#)get 1.5 (Berkeley) 7/7/88 ! 198: # ! 199: # Shell script to build a mini-root file system in preparation for building ! 200: # a distribution tape. The file system created here is image copied onto ! 201: # tape, then image copied onto disk as the "first" step in a cold boot of ! 202: # 4.3BSD systems. ! 203: # ! 204: DISTROOT=/nbsd ! 205: # ! 206: if [ `pwd` = '/' ] ! 207: then ! 208: echo You just '(almost)' destroyed the root ! 209: exit ! 210: fi ! 211: ! 212: # copy in kernel ! 213: cp $DISTROOT/sys/GENERIC/vmunix . ! 214: ! 215: # create necessary directories ! 216: DIRLIST="bin dev etc a tmp stand" ! 217: rm -rf $DIRLIST ! 218: mkdir $DIRLIST ! 219: ! 220: # copy in files from /etc ! 221: ETCFILE="disklabel disktab fsck ifconfig init mknod mount newfs restore \e ! 222: rrestore umount" ! 223: for i in $ETCFILE; do ! 224: cp $DISTROOT/etc/$i etc/$i ! 225: done ! 226: ! 227: # copy in files from /bin ! 228: BINFILE="[ awk cat cp dd echo ed expr ls make mkdir mt mv rcp rm sh stty \e ! 229: sync" ! 230: for i in $BINFILE; do ! 231: cp $DISTROOT/bin/$i bin/$i ! 232: done ! 233: ln bin/stty bin/STTY ! 234: ! 235: # copy in files from /stand ! 236: STANDFILE="copy vdformat" ! 237: for i in $STANDFILE; do ! 238: cp $DISTROOT/stand/$i stand/$i ! 239: done ! 240: ! 241: # copy in files from / ! 242: #DOTFILE=".profile boot fppoc fppwcs poc poc1 poc2 wcs" ! 243: DOTFILE=".profile boot wcs" ! 244: for i in $DOTFILE; do ! 245: cp $DISTROOT/$i $i ! 246: done ! 247: ! 248: # initialize /dev ! 249: cp $DISTROOT/dev/MAKEDEV dev/MAKEDEV ! 250: chmod +x dev/MAKEDEV ! 251: cp /dev/null dev/MAKEDEV.local ! 252: (cd dev; ./MAKEDEV std dk0; ./MAKEDEV cy0; mv rmt12 cy0; rm *mt*) ! 253: ! 254: # initialize /etc/passwd ! 255: cat >etc/passwd <<EOF ! 256: root::0:10::/:/bin/sh ! 257: EOF ! 258: ! 259: # initialize /etc/group ! 260: cat >etc/group <<EOF ! 261: wheel:*:0: ! 262: staff:*:10: ! 263: EOF ! 264: ! 265: # initialize /etc/fstab ! 266: cat >etc/fstab <<EOF ! 267: /dev/xfd0a:/a:xx:1:1 ! 268: /dev/dk0a:/a:xx:1:1 ! 269: EOF ! 270: ! 271: # create xtr script ! 272: cat >xtr <<'EOF' ! 273: #!/bin/sh -e ! 274: : ${disk?'Usage: disk=xx0 tape=yy xtr'} ! 275: : ${tape?'Usage: disk=xx0 tape=yy xtr'} ! 276: echo 'Build root file system' ! 277: newfs ${disk}a ! 278: sync ! 279: echo 'Check the file system' ! 280: fsck /dev/r${disk}a ! 281: mount /dev/${disk}a /a ! 282: cd /a ! 283: echo 'Rewind tape' ! 284: mt -f /dev/${tape}0 rew ! 285: echo 'Restore the dump image of the root' ! 286: restore rsf 3 /dev/${tape}0 ! 287: cd / ! 288: sync ! 289: umount /dev/${disk}a ! 290: sync ! 291: fsck /dev/r${disk}a ! 292: echo 'Root filesystem extracted' ! 293: EOF ! 294: ! 295: # make xtr script executable ! 296: chmod +x xtr ! 297: ! 298: sync ! 299: .DE ! 300: .DS ! 301: Once a mini root file system is constructed, the \fImaketape\fP script makes a distribution tape. ! 302: ! 303: #!/bin/sh - ! 304: # ! 305: # Copyright (c) 1988 Regents of the University of California. ! 306: # All rights reserved. ! 307: # ! 308: # Redistribution and use in source and binary forms are permitted ! 309: # provided that the above copyright notice and this paragraph are ! 310: # duplicated in all such forms and that any documentation, ! 311: # advertising materials, and other materials related to such ! 312: # distribution and use acknowledge that the software was developed ! 313: # by the University of California, Berkeley. The name of the ! 314: # University may not be used to endorse or promote products derived ! 315: # from this software without specific prior written permission. ! 316: # THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR ! 317: # IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED ! 318: # WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. ! 319: # ! 320: # @(#)maketape 5.5 (Berkeley) 7/29/88 ! 321: # ! 322: ! 323: # maketape [ 6250 | 1600 [ tapename [ remotetapemachine ] ] ] ! 324: miniroot=dk4a ! 325: bootroot=dk2b ! 326: nbsd=dk1a ! 327: nbsdusr=dk2c ! 328: tape=/dev/rmt20 ! 329: type=6250 ! 330: block=40 ! 331: tflag=cbf ! 332: bprog="/usr/local/20b 20480" ! 333: ! 334: if [ $# -gt 0 ]; then type=$1; fi ! 335: if [ $# -gt 1 ]; then tape=$2; fi ! 336: tartape=$tape ! 337: if [ $# -gt 2 ]; then remote=$3; tartape='-'; fi ! 338: ! 339: $remote mt -t ${tape} rew ! 340: date ! 341: umount /dev/$nbsdusr ! 342: umount /dev/$nbsd ! 343: mount -r /dev/$nbsd /nbsd ! 344: mount -r /dev/$nbsdusr /nbsd/usr ! 345: cd /nbsd ! 346: sync ! 347: ! 348: if [ $type = '1600a' ] ! 349: then ! 350: type=1600 ! 351: fi ! 352: ! 353: echo "Add image of bootstrap file system" ! 354: eval dd if=/dev/r${bootroot} count=600 bs=1024 conv=sync ${remote+"| rsh"} \e ! 355: ${remote-"of=$tape"} ${remote+'/usr/local/20b 1024 ">" $tape'} ! 356: ! 357: echo "Add image of mini-root file system" ! 358: eval dd if=/dev/r${miniroot} count=205 bs=10240 conv=sync ${remote+"| rsh"} \e ! 359: ${remote-"of=$tape"} ${remote+'/usr/local/20b ">" $tape'} ! 360: ! 361: echo "Add full dump of real file system" ! 362: /etc/${remote+r}dump 0uf $remote${remote+:}${tape} /nbsd ! 363: echo "Add tar image of /usr" ! 364: cd /nbsd/usr; eval tar ${tflag} ${block} ${tartape} adm bin dict doc games \e ! 365: guest hosts include lib local man msgs new \e ! 366: preserve pub spool tmp ucb \e ! 367: ${remote+'| $remote ${bprog} ">" $tape'} ! 368: if [ ${type} != '6250' ] ! 369: then ! 370: echo "Done, rewinding first tape" ! 371: $remote mt -t ${tape} rew & ! 372: echo "Mount second tape and hit return when ready" ! 373: echo "(or type name of next tape drive)" ! 374: read x ! 375: if [ "$x" != "" ] ! 376: then tape=$x ! 377: fi ! 378: fi ! 379: ! 380: : tape2: ! 381: echo "Add user source code" ! 382: cd /nbsd/usr/src; eval tar ${tflag} ${block} ${tartape} Makefile bin cci \e ! 383: etc games include lib local man old ucb undoc usr.bin usr.lib \e ! 384: ${remote+'| $remote ${bprog} ">" $tape'} ! 385: ! 386: #echo "Add varian fonts" ! 387: #cd /usr/lib/vfont; eval tar ${tflag} ${block} ${tartape} . \e ! 388: # ${remote+'| $remote ${bprog} ">" $tape'} ! 389: if [ ${type} != '6250' ] ! 390: then ! 391: echo "Done, rewinding second tape" ! 392: $remote mt -t ${tape} rew & ! 393: echo "Mount third tape and hit return when ready" ! 394: echo "(or type name of next tape drive)" ! 395: read x ! 396: if [ "$x" != "" ] ! 397: then tape=$x ! 398: fi ! 399: fi ! 400: ! 401: : tape3: ! 402: echo "Add tar image of system sources" ! 403: cd /nbsd/sys; eval tar ${tflag} ${block} ${tartape} . \e ! 404: ${remote+'| $remote ${bprog} ">" $tape'} ! 405: ! 406: echo "Add user contributed software" ! 407: # standard (always uncompressed) directories: ! 408: new="README Makefile B X ansi apl bib courier cpm dipress dsh \e ! 409: enet help hyper jove kermit mkmf news notes nntp np100 \e ! 410: patch pathalias rcs rn spms sunrpc tac tools umodem xns" ! 411: uncompress="emacs icon mh mmdf sumacc pup" ! 412: compress="emacs.tar.Z icon.tar.Z mh.tar.Z mmdf.tar.Z sumacc.tar.Z pup.tar.Z" ! 413: cd /nbsd/usr/src/new; eval tar ${tflag} ${block} ${tartape} ${new} \e ! 414: ${compress} ${remote+'| $remote ${bprog} ">" $tape'} ! 415: ! 416: #echo "Add ingres source" ! 417: #cd /nbsd/usr/ingres; eval tar ${tflag} ${block} ${tartape} . \e ! 418: # ${remote+'| $remote ${bprog} ">" $tape'} ! 419: ! 420: echo "Done, rewinding tape" ! 421: $remote mt -t ${tape} rew & ! 422: .DE ! 423: .SH ! 424: Control status register addresses ! 425: .PP ! 426: The distribution uses standalone device drivers ! 427: that presume the location of a VERSAbus device's control status ! 428: register (CSR). ! 429: The following table summarizes these values. ! 430: .DS ! 431: .TS ! 432: l l l. ! 433: Device name Controller CSR address (hex) ! 434: _ ! 435: dk CCI VDDC or SMDE ffff2000, ffff2100, ffff2200, ..., ffff2700 ! 436: cy Cipher ffff4000 ! 437: .TE ! 438: .DE ! 439: .SH ! 440: Generic system control status register addresses ! 441: .PP ! 442: The ! 443: .I generic ! 444: version of the operating system supplied with the distribution ! 445: contains the VERSAbus devices listed below. ! 446: These devices will be recognized ! 447: if the appropriate control status registers respond at any of the ! 448: listed VERSAbus addresses. ! 449: .DS ! 450: .TS ! 451: l l l. ! 452: Device name Controller CSR addresses (hex) ! 453: _ ! 454: dk CCI VDDC or SMDE ffff2000, ffff2100, ..., ffff2700 ! 455: cy Cipher ffff4000, ffff6000 ! 456: vx CCI VIOC fffe0000, fffe4000, ..., fffbc000 ! 457: ace ACC Ethernet ffff0000, ffff0100 ! 458: enp CMC Ethernet fff41000, fff61000 ! 459: dr IKON DR11W ffff7000 ! 460: ik IKON DR11W w/ E&S PS300 ffff8000 ! 461: .TE ! 462: .DE ! 463: If devices other than the above are located at any ! 464: of the addresses listed, the system may not bootstrap ! 465: properly.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.