|
|
1.1 root 1: .\" Copyright (c) 1980, 1986, 1988 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: .\" @(#)2.t 6.3 (Berkeley) 3/7/89
17: .\"
18: .ds lq ``
19: .ds rq ''
20: .ds LH "Installing/Operating \*(4B
21: .ds RH Bootstrapping
22: .ds CF \*(DY
23: .bp
24: .nr H1 2
25: .nr H2 0
26: .bp
27: .LG
28: .B
29: .ce
30: 2. BOOTSTRAP PROCEDURE
31: .sp 2
32: .R
33: .NL
34: .PP
35: \fBNote\fP: The \*(4B release contains only Tahoe filesystems and executable
36: images.
37: The procedures in this section cannot be used on the VAX
38: with the \*(4B distribution tape supplied by Berkeley.
39: However, it is possible to make a boot tape that can be used in this way
40: by extracting the sources in the distribution tape on a VAX, compiling,
41: and making a tape using the procedures described in Appendix A.
42: .\" This section explains the bootstrap procedure that can be used
43: .\" to get the kernel supplied with this distribution running on your machine.
44: If you are not currently running 4.2BSD or 4.3BSD you will
45: have to do a full bootstrap using a 4.3BSD tape;
46: to install the \*(4B release, the new sources must then be loaded
47: and compiled.
48: Chapter 3 describes how to upgrade an existing 4.2BSD or 4.3BSD system.
49: programs.
50: An understanding of the operations used in a full bootstrap
51: is very helpful in performing an upgrade as well.
52: In either case, it is highly desirable to read and understand
53: the remainder of this document before proceeding.
54: .NH 2
55: Converting pre-4.2BSD Systems
56: .PP
57: The file system format was changed between 3BSD and 4.0BSD,
58: and again between 4.1BSD and 4.2BSD.
59: At a minimum you will have to dump any old file systems,
60: and then restore them onto the \*(4B file system.
61: Sites running 3BSD or 32/V may be able to modify the \fIrestore\fP
62: program to understand the old 512 byte block file system,
63: but this has never been tried.
64: The dump format used in 4.0BSD and 4.1BSD is backward-compatible
65: with that used in \*(4B (which is unchanged from 4.2BSD).
66: That is, the \*(4B \fIrestore\fP program understands
67: how to read 4.0BSD and 4.1BSD dump tapes, although \*(4B dump tapes cannot
68: be restored under 4.0BSD or 4.1BSD.
69: It is also desirable to make a convenient copy of system configuration
70: files for use as guides when setting up the new system;
71: the list of files to save from 4.2BSD systems in chapter 3
72: may be used as a guideline.
73: .PP
74: The first step is to dump your file systems with \fIdump\fP\|(8).
75: For the utmost of safety this should be done to magtape.
76: However, if you enjoy gambling with your life
77: (or you have a VERY friendly user community)
78: and you have enough disk space, you can try
79: converting your file systems while copying to a new disk partition
80: by piping the output of \fIdump\fP directly into \fIrestore\fP
81: after bringing up \*(4B.
82: If you select the latter tack,
83: a version of the 4.1BSD dump program that runs under \*(4B is
84: provided in \fI/etc/dump.4.1\fP.
85: Beware that file systems created under \*(4B can
86: use about 5-10% more disk space for file system related information
87: than under 4.1BSD. Thus, before dumping each file system it is
88: a good idea to remove any files that may be easily regenerated.
89: Since all programs should be recompiled under the new
90: system, your best bet is to remove any object files. File
91: systems with at least 10% free space on them should restore into
92: an equivalently sized \*(4B file system without problem.
93: .NH 2
94: Booting from tape
95: .PP
96: The tape bootstrap procedure used to create a
97: working system involves the following major
98: steps:
99: .IP 1)
100: Format a disk pack with the \fIformat\fP program.
101: .IP 2)
102: Copy a ``mini root'' file system from the
103: tape onto the swap area of the disk.
104: .IP 3)
105: Boot the UNIX system on the ``mini root''.
106: .IP 4)
107: Restore the full root file system using \fIrestore\fP\|(8).
108: .IP 5)
109: Build a console floppy, cassette, or RL02 pack for bootstrapping.
110: .IP 6)
111: Reboot the completed root file system.
112: .IP 7)
113: Label the disks with the \fIdisklabel\fP(8) program.
114: .IP 8)
115: Build and restore the /usr file system from tape
116: with \fItar\fP\|(1).
117: .IP 9)
118: Extract the system and utility files and contributed software
119: as desired.
120: .PP
121: Certain of these steps are dependent on your hardware
122: configuration. Formatting the disk pack used for the
123: root file system may require using the DEC standard
124: formatting programs. Also, if you are bootstrapping
125: the system on an 11/750, no console cassette is created.
126: .PP
127: Bootstrapping an 8600 is a bit more difficult than bootstrapping
128: the other machines. The procedures for loading the toggle program
129: and reading the tape bootstrap monitor described in Appendix B must be
130: used if you do not have access to a console RL02 pack
131: with a UNIX bootstrap.
132: Such a pack may be made on an 8600 already running UNIX,
133: or on another \*(4B system with an RL02 drive
134: using the procedures in 4.1.1.
135: One may be required to enter the toggle program more than once.
136: After the bootstrap monitor is loaded, device addresses will be the same
137: as if the machine were an 11/780.
138: UNIBUS and MASSBUS adaptors are numbered from zero across both SBIA's
139: (if present).
140: .PP
141: The following sections describe the above steps in detail.
142: In these sections references to disk drives are of the
143: form \fIxx\fP(\fIn\fP,\fIm\fP)
144: and references to files on tape drives are of the form
145: \fIyy\fP(\fIn\fP,\fIm\fP) where \fIxx\fP and \fIyy\fP
146: are names described in section 1.4 and \fIn\fP
147: and \fIm\fP are the unit and offset numbers described in
148: section 1.4. Commands
149: you are expected to type are shown in italics, while that
150: information printed by the system is shown emboldened.
151: Throughout the installation steps the
152: reboot switch on a 780 or 730 should be set to
153: off; on an 8600 or 750 set the power-on action to halt. (In
154: normal operation a 780 or 730 will have the reboot
155: switch on and an 8600 or 750 will have the power-on action set
156: to reboot/restart.)
157: .PP
158: If you encounter problems while following the instructions in
159: this part of the document, refer to Appendix C for help in
160: troubleshooting.
161: .NH 3
162: Step 1: formatting the disk
163: .PP
164: All disks used with \*(4B should be formatted to insure
165: the proper handling of physically corrupted disk sectors.
166: If you have DEC disk drives, you should use the standard
167: DEC formatter to format your disks. If not, the
168: .I format
169: program included in the distribution, or a vendor supplied
170: formatting program, may be used to format disks. The
171: .I format
172: program is capable of formatting
173: any of the following supported distribution devices:
174: .DS
175: .TS
176: lw(1.5i) l.
177: EMULEX MASSBUS: AMPEX Capricorn, 9300, CDC 9766, 9775,
178: FUJITSU 330M, 2351 Eagle
179: EMULEX SC-21V, SC-31 AMPEX 9300, Capricorn, CDC 9730, 9766,
180: UNIBUS: FUJITSU 160M, 330M
181: EMULEX SC-31 UNIBUS: FUJITSU 2351 Eagle
182: .TE
183: .DE
184: .PP
185: If you have run a pre-4.1BSD version of UNIX on the packs you
186: are planning to use for bootstrapping it is likely that the
187: bad sector information on the packs has been destroyed, since
188: it was accessible as normal data in the last several tracks of
189: the disk. You should therefore run the
190: formatter again to make sure the information is valid.
191: .PP
192: On an 11/750, to use a disk pack as a bootstrap device,
193: sectors 0 through 15, the disk sectors in the file
194: ``/boot'' (the program that
195: loads the system image),
196: and the file system indices that lead to this file
197: must not have any errors.
198: On an 8600, 11/780, or 11/730, the ``boot'' program is loaded from
199: the console medium and includes device drivers for the
200: ``hp'' and ``up'' disks that do
201: ECC correction and bad sector forwarding; consequently, on
202: these machines the system may be bootstrapped on these disks
203: even if the disk is not error free in critical locations.
204: In general, if the first 15884 sectors of your disk are
205: clean you are safe; if not you can take your chances.
206: .PP
207: To load the
208: .I format
209: program, insert the distribution TU58 cassette or RX01 floppy
210: disk in the appropriate console device (on the 11/730 use
211: cassette 0) and do the following steps.
212: .PP
213: If you have an 8600 start the bootstrap monitor using the
214: procedure described in Appendix B. Then give the command:
215: .RT
216: .DS
217: \fB=\|\fIformat\fR
218: .DE
219: .PP
220: If you have an 11/780 give the commands:
221: .RT
222: .DS
223: \fB>>>\|\fIHALT\fR
224: \fB>>>\|\fIUNJAM\fR
225: \fB>>>\|\fIINIT\fR
226: \fB>>>\|\fILOAD FORMAT\fR
227: \fB>>>\|\fISTART 2\fR
228: .DE
229: .PP
230: If you have an 11/750 give the commands:
231: .DS
232: \fB>>>\|\fII\fR
233: \fB>>>\|\fIB DDA0\fR
234: \fB=\|\fIformat\fR
235: .DE
236: .PP
237: If you have an 11/730 give the commands:
238: .DS
239: \fB>>>\|\fIH\fR
240: \fB>>>\|\fII\fR
241: \fB>>>\|\fIL DD0:FORMAT\fR
242: \fB>>>\|\fIS 2\fR
243: .DE
244: .PP
245: The
246: .I format
247: program should now be running and awaiting your input:
248: .DS
249: \fBDisk format/check utility\fP
250:
251: \fBEnable debugging (1=bse, 2=ecc, 3=bse+ecc)?\fP
252: .DE
253: .PP
254: If you made a mistake loading the program off the TU58 cassette
255: or using the bootstrap monitor loaded for the 8600
256: the ``='' prompt should reappear and you can retype the program
257: name. If something else happened, you may have a bad distribution
258: cassette or floppy, or your hardware may be broken; refer to
259: Appendix C for help in troubleshooting. If you are unable to
260: load programs off the distributed medium,
261: consult Appendix B for an alternate (more painful) approach.
262: .PP
263: .I Format
264: will create sector headers and verify the integrity of each
265: sector formatted. Remember
266: .I format
267: runs only on the
268: .B up
269: and
270: .B hp
271: drives listed above.
272: .I Format
273: will prompt for the information required as shown below.
274: Questions with default answers appear with the default in parentheses
275: at the prompt; a carriage return will take the default.
276: If you err in answering questions,
277: ``Delete'' erases the last character typed, and ``^U'' erases
278: the current input line.
279: .DS
280: .ta 2i
281: \fBEnable debugging (0=none, 1=bse, 2=ecc, 3=bse+ecc)?\fP \fI0\fP
282: \fBDevice to format?\fP \fIxx(0,0)\fP
283: ...(the old bad sector table is read; ignore any errors that occur here)...
284: \fBFormatting drive \fIxx\fP0 on adaptor 0: verify (yes/no)?\fP \fIyes\fP
285: \fBDevice data: #cylinders=842, #tracks=20, #sectors=48\fP
286: \fBStarting cylinder (0):\fP (hit RETURN to accept the defaults)
287: \fBStarting track (0):\fP
288: \fBEnding cylinder (841):\fP
289: \fBEnding track (19):\fP
290: \fBAvailable test patterns are:\fP
291: .in +1.0i
292: \fB1 - (f00f) RH750 worst case\fP
293: \fB2 - (ec6d) media worst case\fP
294: \fB3 - (a5a5) alternating 1's and 0's\fP
295: \fB4 - (ffff) Severe burnin (up to 48 passes)\fP
296: .in -1.0i
297: \fBPattern (one of the above, other to restart)?\fP \fI2\fP
298: \fBMaximum number of bit errors to allow for soft ECC (3):\fP
299: \fBStart formatting...make sure the drive is online\fP
300: ...(soft ecc's and other errors are reported as they occur)...
301: ...(if 4 write check errors were found, the program terminates like this)...
302: \fBErrors:\fP
303: \fBBad sector: 0\fP
304: \fBWrite check: 4\fP
305: \fBHard ECC: 0\fP
306: \fBOther hard: 0\fP
307: \fBMarked bad: 0\fP
308: \fBSkipped: 0\fP
309: \fBTotal of 4 hard errors revectored.\fP
310: \fBWriting bad sector table at block 524256\fP
311: ...(524256 is the block # of the first block in the bad sector table)...
312: \fBDone\fP
313: .DE
314: Once the root device has been formatted,
315: .I format
316: will prompt for another disk to format. Halt the machine by
317: typing ``control-P'' and ``H'' (the ``H'' is necessary only on
318: the 780 and 8600, but does not hurt on the other machines).
319: .DS
320: \fBEnable debugging (1=bse, 2=ecc, 3=bse+ecc)?\fP\fI^P\fP
321: \fB>>>\|\fIH\fR
322: .DE
323: .PP
324: It may be necessary to format other drives before constructing
325: file systems on them; this can be done at a later time with the
326: steps just performed.
327: .I Format
328: can also be used in an extended test mode (pattern 4)
329: that uses numerous test patterns
330: in up to 48 passes to detect as many disk surface errors as possible;
331: this test may be run for many hours, depending on the CPU and controller.
332: On an 11/780, this can be sped up significantly by
333: setting the clock fast.
334: It may be run for some number of passes, then either terminated or continued
335: according to the errors found to that point.
336: .NH 3
337: Step 2: copying the mini-root file system
338: .PP
339: The second step is to run a simple program,
340: \fIcopy\fP, which copies a small root
341: file system into the second partition of the disk.
342: This file system will serve as the base for creating the actual root
343: file system to be restored. The version of the operating
344: system maintained on the ``mini-root'' file system understands
345: that it should not swap on top of itself, thereby allowing double use
346: of the disk partition. \fICopy\fP is loaded just as the
347: \fIformat\fP program was loaded; for example, on an 8600 or 8200,
348: one must enter the toggle and the bootstrap monitor
349: as described in Appendix B and then:
350: .DS
351: .TS
352: lw(2i) l.
353: (copy mini root file system)
354: \fB=\fP\|\fIcopy\fP
355: \fBFrom:\fP \fIyy(y,1)\fP (unit \fIy\fP, second tape file)
356: \fBTo:\fP \fIxx(x,1)\fP (mini root is on drive \fIx\fP; second partition)
357: \fBCopy completed: 205 records copied\fP
358: \fBFrom:\fP
359: .TE
360: .DE
361: while for an 11/780:
362: .DS
363: .TS
364: lw(2i) l.
365: (copy mini root file system)
366: \fB>>>\fP\|\fILOAD COPY\fP
367: \fB>>>\fP\|\fISTART 2\fP
368: \fBFrom:\fP \fIyy(y,1)\fP (unit \fIy\fP, second tape file)
369: \fBTo:\fP \fIxx(x,1)\fP (mini root is on drive \fIx\fP; second partition)
370: \fBCopy completed: 205 records copied\fP
371: \fBFrom:\fP
372: .TE
373: .DE
374: or for an 11/750:
375: .DS
376: .TS
377: lw(2i) l.
378: (copy mini root file system)
379: \fB>>>\fP\|\fIB DDA0\fP
380: \fB=\fP\|\fIcopy\fP
381: \fBFrom:\fP \fIyy(y,1)\fP (unit \fIy\fP, second tape file)
382: \fBTo:\fP \fIxx(x,1)\fP (mini root is on drive \fIx\fP; second partition)
383: \fBCopy completed: 205 records copied\fP
384: \fBFrom:\fP
385: .TE
386: .DE
387: and for an 11/730:
388: .DS
389: .TS
390: lw(2i) l.
391: (copy mini root file system)
392: \fB>>>\fP\|\fIL DD0:COPY\fP
393: \fB>>>\fP\|\fIS 2\fP
394: \fBFrom:\fP \fIyy(y,1)\fP (unit \fIy\fP, second tape file)
395: \fBTo:\fP \fIxx(x,1)\fP (mini root is on drive \fIx\fP; second partition)
396: \fBCopy completed: 205 records copied\fP
397: \fBFrom:\fP
398: .TE
399: (As above, `delete' erases characters and `^U' erases lines.)
400: .DE
401: .NH 3
402: Step 3: booting from the mini-root file system
403: .PP
404: You now have the minimal set of tools necessary to create a
405: root file system and restore the file system contents from tape.
406: To access this file system load the bootstrap program
407: and boot the version of unix that has been placed in the
408: ``mini-root'':
409: .DS
410: (follow the procedure in Appendix B to load the bootstrap monitor)
411: .TS
412: lw(2i) l.
413: (load bootstrap program)
414: \fB=\fP\|\fIboot\fP
415: \fBBoot\fP
416: \fB:\fP \fIxx(x,1)vmunix\fP (bring in \fIvmunix\fP off mini root)
417: .TE
418: .DE
419: or, on an 11/780:
420: .DS
421: .TS
422: lw(2i) l.
423: (load bootstrap program)
424: \fB>>>\fP\|\fIBOOT ANY\fP
425: \fBBoot\fP
426: \fB:\fP \fIxx(x,1)vmunix\fP (bring in \fIvmunix\fP off mini root)
427: .TE
428: .DE
429: or, on an 11/750:
430: .DS
431: .TS
432: lw(2i) l.
433: (load bootstrap program)
434: \fB>>>\fP\|\fIB DDA0\fP
435: \fB=\fP\|\fIboot\fP
436: \fBBoot\fP
437: \fB:\fP \fIxx(x,1)vmunix\fP (bring in \fIvmunix\fP off mini root)
438: .TE
439: .DE
440: or, on an 11/730:
441: .DS
442: .TS
443: lw(2i) l.
444: (load bootstrap program)
445: \fB>>>\fP\|\fIL DD0:BOOT\fP
446: \fB>>>\fP\|\fID RB 3\fP
447: \fB>>>\fP\|\fIS 2\fP
448: \fBBoot\fP
449: \fB:\fP \fIxx(x,1)vmunix\fP (bring in \fIvmunix\fP off mini root)
450: .TE
451: (As above, `delete' erases characters and `^U' erases lines.)
452: .DE
453: .LP
454: The standalone boot program should then read the system from
455: the mini root file system you just created, and the system should boot:
456: .DS
457: .B
458: 271944+78848+92812 start 0x12e8
459: 4.3 BSD UNIX #1: Wed Apr 9 23:33:59 PST 1988
460: [email protected]:/usr/src/sys/GENERIC
461: real mem = \fIxxx\fP
462: avail mem = \fIyyy\fP
463: \fI\&... information about available devices ...\fP
464: root device?
465: .R
466: .DE
467: .PP
468: The first three numbers are printed out by the bootstrap
469: programs and are the sizes of different
470: parts of the system (text, initialized and uninitialized data). The
471: system also allocates several system data structures after it starts
472: running. The sizes of these structures are based on the amount of available
473: memory and the maximum count of active users expected, as declared in a system
474: configuration description. This will be discussed later.
475: .PP
476: UNIX itself then runs for the first time and begins by printing out a banner
477: identifying the release and
478: version of the system that is in use and the date that it was compiled.
479: .PP
480: Next the
481: .I mem
482: messages give the
483: amount of real (physical) memory and the
484: memory available to user programs
485: in bytes.
486: For example, if your machine has 16 megabytes of memory,
487: \fIxxx\fP will be 16777216.
488: .PP
489: The messages that come out next show what devices were found on
490: the current processor. These messages are described in
491: \fIautoconf\fP\|(4).
492: The distributed system may not have
493: found all the communications devices you have (dh's, dz's, etc.),
494: or all the mass storage peripherals you have especially
495: if you have more than
496: two of anything. You will correct this soon, when you create
497: a description of your machine from which to configure UNIX.
498: The messages printed at boot here contain much of the information
499: that will be used in creating the configuration.
500: In a correctly configured system most of the information
501: present in the configuration description
502: is printed out at boot time as the system verifies that each device
503: is present.
504: .PP
505: The \*(lqroot device?\*(rq prompt was printed by the system
506: and is now asking you for the name of the root file system to use.
507: This happens because the distribution system is a \fIgeneric\fP
508: system. It can be bootstrapped on any VAX cpu and with its root device
509: and paging area on any available disk drive. You should respond
510: to the root device question with \fIxx0*\fP. This response
511: supplies two pieces of information:
512: first, \fIxx0\fP shows that the disk it is running on is drive
513: 0 of type \fIxx\fP, secondly the \*(lq*\*(rq shows that the system is
514: running \*(lqatop\*(rq the paging area. The latter is most important,
515: otherwise the system will attempt to page on top of itself and
516: chaos will ensue.
517: You will later build a system tailored to your configuration that
518: will not ask this question when it is bootstrapped.
519: .DS
520: \fBroot device?\fP \fIxx0*\fP
521: WARNING: preposterous time in file system \-\- CHECK AND RESET THE DATE!
522: \fBerase ^?, kill ^U, intr ^C\fP
523: \fB#\fP
524: .DE
525: .PP
526: The \*(lqerase ...\*(rq message is part of /.profile
527: that was executed by the root shell when it started. This message
528: is present to remind you that the line character erase,
529: line erase, and interrupt characters are set to be what
530: is standard on DEC systems; this insures that things are
531: consistent with the DEC console interface characters.
532: .NH 3
533: Step 4: restoring the root file system
534: .PP
535: UNIX is now running,
536: and the `UNIX Programmer's manual' applies.
537: The `#' is the prompt from the shell,
538: and lets you know that you are the super-user,
539: whose login name is \*(lqroot\*(rq. To complete installation
540: of the bootstrap system two steps remain. First, the root
541: file system must be created, and second a boot floppy or
542: cassette must be constructed.
543: .PP
544: To create the root file system the shell script \*(lqxtr\*(rq
545: should be run as follows:
546: .DS
547: \fB# \fIdisk=xx0 type=tt tape=yy xtr\fR
548: .DE
549: where \fIxx0\fP is the name of the disk on which the root
550: file system is to be restored (unit 0), \fItt\fP is the type of
551: drive on which the root file system is to be restored
552: (see the table below),
553: and \fIyy\fP is the name
554: of the tape drive on which the distribution tape is mounted.
555: .PP
556: If the root file system is to reside on a disk other than
557: unit 0 (as the information printed out
558: during autoconfiguration shows), you will
559: have to create the necessary special files in /dev and use
560: the appropriate value. For example, if the root should be
561: placed on hp1, you must create /dev/rhp1a and /dev/hp1a using
562: the MAKEDEV script in /dev as follows:
563: .DS
564: \fB# \fIcd /dev; MAKEDEV hp1\fR
565: .DE
566: The following table lists the various drive \fItype\fPs.
567: .DS
568: .TS
569: l l | l l.
570: Drive Type Drive Type
571: _
572: DEC RM03 type=rm03 DEC RM05 type=rm05
573: DEC RM80 type=rm80 DEC RP06 type=rp06
574: DEC RP07 type=rp07 DEC RK07 type=rk07
575: DEC RA80 type=ra80 DEC RA60 type=ra60
576: DEC RA81 type=ra81 DEC R80 type=rb80
577: DEC RA70 type=ra70 DEC RA82 type=ra82
578: DEC RD53 type=rd53 DEC RD54 type=rd54
579: CDC 9766 type=9766 CDC 9775 type=9775
580: AMPEX 300M type=9300 AMPEX 330M type=capricorn
581: FUJITSU 160M type=fuji160 FUJITSU 330M type=capricorn
582: FUJITSU 404M type=eagle
583: .TE
584: .DE
585: This will generate many messages regarding the construction
586: of the file system and the restoration of the tape contents,
587: but should eventually stop with the messages:
588: .DS
589: ...
590: \fBRoot filesystem extracted\fP
591:
592: \fBIf this is an 8600, update the console RL02\fP
593: \fBIf this is an 8200, update the floppy\fP
594: \fBIf this is a 780, update the floppy\fP
595: \fBIf this is a 730, update the cassette\fP
596: \fB#\fP
597: .DE
598: .NH 3
599: Step 5: creating a boot floppy or cassette
600: .PP
601: If the machine is an 8600, 8200, 11/780 or 11/730, a boot floppy,
602: cassette, or console RL02 should be constructed according to the
603: instructions in chapter 4. For 11/750's, bootstrapping is performed by
604: using a boot prom and special code located in sectors 0-15 of the
605: root file system. The
606: .I disklabel
607: program installs the needed code.
608: .\" XXX needs thought:
609: Locate the disk name and type from the table in step 7, then
610: run the following command:
611: .DS
612: \fB#\fP \fIdisklabel -rw ${disk}0 $type "optional_pack_name"
613: .DE
614: On an 11/780 with old-style (MS780C) interleaved memory, or other
615: configurations that
616: require alteration of the standard boot files, this step may
617: be left for later.
618: .NH 3
619: Step 6: rebooting the completed root file system
620: .PP
621: With the above work completed, all that is left is to reboot:
622: .DS
623: .ta 3.5i
624: \fB#\|\fIsync\fR (synchronize file system state)
625: \fB#\|\fI^P\fR (halt machine)
626: \fB>>>\|\fIHALT\fR (for 11/780's)
627: \fB>>>\|\fIUNJAM\fR (for 8600's or 11/780's only)
628: \fB>>>\|\fII\fR (initialize processor state)
629: \fB>>>\|\fIB xxS\fR (on an 11/750, use \fIB/2\fP; see below for 8200)
630: \&...(boot program is eventually loaded)...
631: \fBBoot\fP
632: \fB: \fIxx(x,0)vmunix\fR (\fIvmunix\fP brought in off root)
633: \fB271944+78848+92812 start 0x12e8
634: \fB4.3 BSD UNIX #1: Wed Apr 9 23:33:59 PST 1988
635: \fB [email protected]:/usr/src/sys/GENERIC
636: \fBreal mem = \fIxxx\fR
637: \fBavail mem = \fIyyy\fR
638: \fI\&... information about available devices ...\fP
639: \fBroot on xx0\fP
640: WARNING: preposterous time in file system \-\- CHECK AND RESET THE DATE!
641: \fBerase ^?, kill ^U, intr ^C\fP
642: \fB#\fP
643:
644: .DE
645: .PP
646: On an 8200,
647: or if the root device selected by the kernel is not correct,
648: it is necessary to boot using the option to ask for the root
649: device.
650: On the 8200, use \fIB/R5:800\fP followed by \[email protected]\fP;
651: on the 11/750, use \fIB/3\fP; on the other processors, use \fIBOOT ANY\fP.
652: At the prompt from the bootstrap, use the same device specification
653: above: \fIxx(x,0)vmunix\fP.
654: Then, to the question ``root device?,''
655: respond with \fIxx\fP0.
656: See section 6.1 and appendix C if the system does not reboot properly.
657: .PP
658: The system is now running single user on the installed
659: root file system. The next section tells how to complete
660: the installation of distributed software on the /usr file system.
661: .NH 3
662: Step 7: placing labels on the disks
663: .PP
664: First set up shell variables, so that
665: the commands we give will work regardless of the disk you have.
666: You might wish to review the disk configuration information in section 4.3
667: before continuing; the partitions used below are those most appropriate
668: in size.
669: Find the disk you have in the following table and execute
670: the commands in the right hand portion of the table:
671: .DS
672: .TS
673: l l.
674: DEC RM03 \fB#\fI disk=hp; name=hp0g; type=rm03\fR
675: DEC RM05 \fB#\fI disk=hp; name=hp0g; type=rm05\fR
676: DEC RM80 \fB#\fI disk=hp; name=hp0g; type=rm80\fR
677: DEC RP06 \fB#\fI disk=hp; name=hp0g; type=rp06\fR
678: DEC RP07 \fB#\fI disk=hp; name=hp0h; type=rp07\fR
679: DEC RK07 \fB#\fI disk=hk; name=hk0g; type=rk07\fR
680: DEC RA60 \fB#\fI disk=ra; name=ra0h; type=ra60\fR
681: DEC RA70 \fB#\fI disk=ra; name=ra0h; type=ra70\fR
682: DEC RA80 \fB#\fI disk=ra; name=ra0h; type=ra80\fR
683: DEC RA81 \fB#\fI disk=ra; name=ra0h; type=ra81\fR
684: DEC RA82 \fB#\fI disk=ra; name=ra0h; type=ra82\fR
685: DEC R80 \fB#\fI disk=rb; name=rb0h; type=rb80\fR
686: UNIBUS CDC 9766 \fB#\fI name=up0g; type=9766\fR
687: UNIBUS AMPEX 300M \fB#\fI disk=up; name=up0g; type=9300\fR
688: UNIBUS AMPEX 330M \fB#\fI disk=up; name=up0g; type=capricorn\fR
689: UNIBUS FUJITSU 160M \fB#\fI disk=up; name=up0g; type=fuji160\fR
690: UNIBUS FUJITSU 330M \fB#\fI disk=up; name=up0g; type=capricorn\fR
691: UNIBUS FUJITSU 404M \fB#\fI disk=up; name=up0h; type=eagle\fR
692: MASSBUS CDC 9766 \fB#\fI disk=up; name=hp0g; type=9766\fR
693: MASSBUS AMPEX 300M \fB#\fI disk=up; name=hp0g; type=9300\fR
694: MASSBUS AMPEX 330M \fB#\fI disk=up; name=hp0g; type=capricorn\fR
695: MASSBUS FUJITSU 330M \fB#\fI disk=up; name=hp0g; type=capricorn\fR
696: MASSBUS FUJITSU 404M \fB#\fI disk=up; name=hp0h; type=eagle\fR
697: .TE
698: .DE
699: If you have a DEC RA disk, but it is on a KDB50, insert a `k':
700: .DS
701: \fB#\fP \fIdisk=k$disk; name=k$name
702: .DE
703: Next find the tape you have in the following table and execute the
704: commands in the right hand portion of the table:
705: .DS
706: .TS
707: l l.
708: DEC TE16/TU45/TU77 \fB#\fI cd /dev; MAKEDEV ht0; sync\fR
709: DEC TU78 \fB#\fI cd /dev; MAKEDEV mt0; sync\fR
710: DEC TS11 \fB#\fI cd /dev; MAKEDEV ts0; sync\fR
711: DEC TK50/TK70/TA80/TA81 \fB#\fI cd /dev; MAKEDEV tmscp0; sync\fR
712: EMULEX TC11 \fB#\fI cd /dev; MAKEDEV tm0; sync\fR
713: SI 9700 \fB#\fI cd /dev; MAKEDEV ut0; sync\fR
714: .TE
715: .DE
716: .PP
717: On hp and ra disks (excluding those on the KDB50),
718: \*(4B uses disk labels in the first sector of each disk to contain
719: information about the geometry of the drive and the partition layout.
720: This information is written with \fIdisklabel\fP\|(8).
721: To label the disk containing the root file system,
722: run the following command:
723: .DS
724: \fB#\fP \fIdisklabel -rw ${disk}0 $type "optional_pack_name"
725: .DE
726: This sets up the default partition table. \fIType\fP can
727: be any name listed in /etc/disktab; if you want something other
728: than the default tables, you can edit /etc/disktab and add
729: a new name: e.g., ``ra81-local.'' Alternatively, you can
730: use the \fI\-e\fP option to edit the label;
731: you will have to set the ``EDITOR'' environment variable to /bin/ed:
732: .DS
733: \fB#\fP \fIEDITOR=/bin/ed; export EDITOR\fP
734: .DE
735: .PP
736: You should label all your disks as soon as possible, but you
737: \fImust\fP label the root pack on a VAX-11/750,
738: even if labels are not supported (e.g., on ``up'' disks),
739: as this also creates the boot block.
740: As a general rule, it is always safe to run \fIdisklabel\fP:
741: if labels are not supported on some disk,
742: nothing of consequence will happen.
743: .NH 3
744: Step 8: setting up the /usr file system
745: .PP
746: The next thing to do is to extract the rest of the data from
747: the tape:
748: .br
749: .ne 5
750: .sp
751: .DS
752: .TS
753: lw(2i) l.
754: \fB#\fI date \fRyymmddhhmm (set date, see \fIdate\fP\|(1))
755: \&....
756: \fB#\fI passwd root\fR (set password for super-user)
757: \fBNew password:\fP (password will not echo)
758: \fBRetype new password:\fP
759: \fB#\fI hostname \fRmysitename (set your hostname)
760: \fB#\fI newfs ${name} ${type}\fR (create empty user file system)
761: (this takes a few minutes)
762: \fB#\fI mount /dev/${name} /usr\fR (mount the usr file system)
763: \fB#\fI cd /usr\fR (make /usr the current directory)
764: \fB#\fI mt fsf\fR
765: \fB#\fI tar xpbf 20 /dev/rmt12\fR (extract all of usr except usr/src)
766: (this takes about 15-20 minutes)
767: .TE
768: .DE
769: If the tape had been rewound or positioned incorrectly before the \fItar\fP,
770: it may be repositioned by the following commands.
771: .DS
772: \fB#\fI mt rew\fR
773: \fB#\fI mt fsf 3\fR
774: .DE
775: The data on the fourth tape file has now been extracted.
776: If you are using 1600bpi tapes,
777: the first reel of the distribution is no longer needed;
778: the remainder of the installation procedure uses the second
779: reel of tape that should be mounted in place of the first.
780: The first instruction below is ignored if using 1600bpi tapes.
781: The installation procedure continues from this point on the 6250bpi tape.
782: .DS
783: .TS
784: lw(2i) l.
785: \fB#\fI mt fsf\fR (do not do on 1600bpi tapes)
786: \fB#\fI mkdir src\fR (make directory for source)
787: \fB#\fI mkdir src/sys\fR (make directory for system source)
788: \fB#\fI cd src/sys\fR (make /usr/sys the current directory)
789: \fB#\fI tar xpbf 20 /dev/rmt12 \fR (extract the system source)
790: (this takes about 5-10 minutes)
791: \fB#\fI cd /\fR (back to root)
792: \fB#\fI chmod 755 / /usr /usr/src /usr/src/sys\fR
793: \fB#\fI rm \-f sys\fR
794: \fB#\fI ln \-s usr/src/sys sys\fR (make a symbolic link to the system source)
795: \fB#\fI umount /dev/${name}\fR (unmount /usr)
796: .TE
797: .DE
798: .PP
799: You can check the consistency of the /usr file system by doing
800: .DS
801: \fB#\fI fsck /dev/r${name}\fR
802: .DE
803: The output from
804: .I fsck
805: should look something like:
806: .DS
807: .B
808: ** /dev/r\fIxx\fP0h
809: ** Last Mounted on /usr
810: ** Phase 1 - Check Blocks and Sizes
811: ** Phase 2 - Check Pathnames
812: ** Phase 3 - Check Connectivity
813: ** Phase 4 - Check Reference Counts
814: ** Phase 5 - Check Cyl groups
815: 671 files, 3497 used, 137067 free (75 frags, 34248 blocks)
816: .R
817: .DE
818: .PP
819: If there are inconsistencies in the file system, you may be prompted
820: to apply corrective action; see the document describing
821: .I fsck
822: for information.
823: .PP
824: To use the /usr file system, you should now remount it by
825: saying
826: .DS
827: \fB#\fI /etc/mount /dev/${name} /usr\fR
828: .DE
829: You can then extract the source code for the commands
830: (except on RK07's and RM03's this will fit in the /usr file system):
831: .DS
832: \fB#\fI cd /usr/src\fR
833: \fB#\fI mt fsf\fR
834: \fB#\fI tar xpb 20\fR
835: .DE
836: If you get an error at this point, most likely it was
837: a problem with tape positioning.
838: You can reposition the tape by rewinding it and
839: then skipping over the files already read (see \fImt\fP\|(1)).
840: .NH 3
841: Additional software
842: .PP
843: There is one additional tape file on the distribution tape(s)
844: which has not been installed to this point;
845: it contains user contributed software in \fItar\fP\|(1) format.
846: On the 1600bpi tape set, this file is the sole file on the third tape.
847: It can be installed by positioning the tape
848: using \fImt\fP\|(1) and reading
849: in the files as was done for /usr/src above.
850: As distributed, the user contributed software should be placed in /usr/src/new.
851: It may be extracted by mounting the appropriate tape (if not already mounted),
852: positioning the tape at the beginning of this file (for 6250bpi),
853: and extracting with
854: .IR tar :
855: .DS
856: \fB#\fP \fIcd /usr/src\fP
857: \fB#\fP \fImkdir new\fP
858: \fB#\fP \fIchmod 755 new\fP
859: \fB#\fP \fIcd new\fP
860: \fB#\fP \fItar xpb 20\fP
861: .DE
862: Several of the directories for large contributed software subsystems
863: have been placed in a single archive file and compressed to allow
864: .NH 2
865: Additional conversion information
866: .PP
867: After setting up the new \*(4B filesystems,
868: you may restore the user files that were saved on tape before beginning
869: the conversion.
870: Note that the \*(4B \fIrestore\fP program does
871: its work on a mounted file system using normal system operations
872: (unlike the older \fIrestor\fP that accessed the raw file
873: system device and deposited inodes in the appropriate locations
874: on disk). This means that file system dumps may be restored even
875: if the characteristics of the file system changed. To restore
876: a dump tape for, say, the /a file system something like the following
877: would be used:
878: .DS
879: \fB#\fI mkdir /a\fR
880: \fB#\fI disklabel -rw hp1 eagle\fR
881: \fB#\fI newfs hp1g\fR
882: \fB#\fI mount /dev/hp1g /a\fR
883: \fB#\fI cd /a\fR
884: \fB#\fI restore r\fR
885: .DE
886: If you chose to convert 4.1BSD filesystems while copying to a new disk area,
887: do so by piping the output of \fIdump.4.1\fP directly into \fIrestore\fP
888: after bringing up \*(4B.
889: .PP
890: If \fItar\fP images were written instead of doing a dump, you should
891: be sure to use the `p' option when reading the files back.
892: No matter how you restore a file system, be sure and check its
893: integrity with \fIfsck\fP when the job is complete.
894: .PP
895: To convert a compiler from 4.1BSD
896: to \*(4B you should simply have to recompile and relink the
897: various parts. If the processor is written in itself, for instance
898: a P\s-2ASCAL\s0 compiler written in P\s-2ASCAL\s0, the important step in
899: converting is to save a working copy of the 4.1BSD binary before
900: converting to \*(4B. Then, once the system has been changed over,
901: the 4.1BSD binary should be used in the rebuilding process.
902: To do this, you should enable the 4.1 compatibility
903: option when you configure the kernel (see section 4.3).
904: .PP
905: If no working 4.1BSD binary exists, or the language processor
906: uses some nonstandard system call, you will likely have to compile
907: the language processor into an intermediate form, such as assembly
908: language, on a 4.1BSD system, then bring the intermediate form
909: to \*(4B for assembly and loading.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.