|
|
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: .\" @(#)1.t 1.4 (Berkeley) 3/7/89 ! 17: .\" ! 18: .ds lq `` ! 19: .ds rq '' ! 20: .ds LH "Installing/Operating \*(4B ! 21: .ds RH Introduction ! 22: .ds CF \*(DY ! 23: .LP ! 24: .nr H1 1 ! 25: .bp ! 26: .LG ! 27: .B ! 28: .ce ! 29: 1. INTRODUCTION ! 30: .sp 2 ! 31: .R ! 32: .NL ! 33: .PP ! 34: This document explains how to install the Berkeley ! 35: version of UNIX for the Tahoe on your system. While this is the first ! 36: release from Berkeley for the Tahoe, the version of ! 37: .UX ! 38: distributed by Computer Consoles Inc. (CCI) was derived from 4.2BSD. ! 39: Consequently, the filesystem ! 40: format is compatible and it will only be necessary for you to perform ! 41: a full bootstrap procedure if you are installing the release on a new ! 42: machine. ! 43: The System V UNIX systems distributed by CCI, Unisys (Sperry) and Harris ! 44: are also derived from 4.2BSD, but only the network and filesystem ! 45: remain compatible with \*(4B. ! 46: The object file formats are completely different in the System V ! 47: releases. ! 48: Thus, the most straightforward procedure for upgrading a System V ! 49: system is to perform a full bootstrap. ! 50: .PP ! 51: The full bootstrap procedure ! 52: is outlined in chapter 2; the process includes booting standalone ! 53: utilities from tape to format a disk, if necessary, and then copying ! 54: a small root filesystem image onto a swap area. This filesystem is ! 55: then booted and used to extract a dump of a standard root filesystem. ! 56: Finally, that root filesystem is booted, and the remainder of the system ! 57: binaries and sources are read from the archives on the tape(s). ! 58: .PP ! 59: The technique for upgrading a 4.2 or beta-release 4.3BSD system is described ! 60: in chapter 3 of this document. ! 61: As \*(4B is completely compatible with the beta release, ! 62: and sufficiently compatible with the vendor-supplied 4.2BSD releases, ! 63: the upgrade procedure involves extracting a new set of system binaries ! 64: onto new root and /usr filesystems. ! 65: The sources are then extracted, and local configuration files are merged ! 66: into the new system. User filesystems may be upgraded in place. ! 67: All 4.3BSD-beta binaries may be used with \*(4B in the course ! 68: of the conversion. ! 69: It is desirable to recompile local sources after the conversion, ! 70: as the compilers have had many fixes installed. ! 71: However, due to significant incompatibilities between ! 72: the vendor-derived versions of 4.2BSD and the Berkeley \*(4B release, many ! 73: 4.2BSD binary images will not function properly. For such programs it ! 74: will be both necessary and desirable to recompile this software after ! 75: the conversion. Consult section 3 for a description of the differences ! 76: between \*(4B and the previous vendor-supplied systems for the Tahoe. ! 77: .NH 2 ! 78: Hardware supported ! 79: .PP ! 80: This distribution can be booted on a CCI Power 6/32, Harris HCX-7, ! 81: Unisys (Sperry) 7000/40, or ICL Clan 7 with any disks supported on the VERSAbus ! 82: disk controllers sold by these vendors (SMD/E or VDDC). ! 83: The new CCI SMD/E controller with working scatter-gather I/O ! 84: is supported as well. ! 85: In particular, the following drives are supported: ! 86: .DS ! 87: .TS ! 88: l l. ! 89: FUJITSU 160M CDC 9766 300M ! 90: FUJITSU 330M CDC 340M ! 91: FUJITSU 2351 Eagle CDC 515M ! 92: Maxtor 340M ! 93: .TE ! 94: .DE ! 95: .PP ! 96: The only tape drives supported by this distribution are the ! 97: ones attached to the Ciprico Tapemaster tape controller. ! 98: .NH 2 ! 99: Distribution format ! 100: .PP ! 101: The distribution comes in two formats: ! 102: .DS ! 103: (3)\0\0 1600bpi 2400' 9-track magnetic tapes, or ! 104: (1)\0\0 6250bpi 2400' 9-track magnetic tape ! 105: .DE ! 106: Installation from scratch on any machine requires a tape unit. If your ! 107: machine is currently running 4.2 or 4.3BSD-beta and has a network connection ! 108: to a 4.2 or 4.3BSD machine with a tape drive, it is a simple matter to ! 109: install the software from a remote tape drive. ! 110: .PP ! 111: If you have the facilities, we \fBstrongly\fP recommend copying the ! 112: magnetic tape(s) in the distribution kit to guard against disaster. ! 113: The tapes contain some 1024-byte records followed by many ! 114: 10240-byte records. There are interspersed tape marks; ! 115: end-of-tape is signaled by a double end-of-file. The first file ! 116: on the tape is a very small file system containing ! 117: preliminary bootstrapping programs. This is followed by a binary image ! 118: of an approximately 2 megabyte ``mini root'' file system. Following ! 119: the mini root file is a full dump of the root file system ! 120: (see \fIdump\fP\|(8)*). ! 121: .FS ! 122: \ * References of the form \fIX\fP(Y) mean the entry named ! 123: \fIX\fP in section Y of the ! 124: .UX ! 125: programmer's manual. ! 126: .FE ! 127: Additional files on the tape(s) ! 128: contain tape archive images of the system binaries and sources (see ! 129: \fItar\fP\|(1)). See Appendix A for a description of the contents ! 130: and format of the tape(s). ! 131: One file contains software ! 132: contributed by the user community; refer to the accompanying ! 133: documentation for a description of its contents and an ! 134: explanation of how it should be installed. ! 135: .NH 2 ! 136: Hardware terminology ! 137: .PP ! 138: This section gives a short discussion of hardware terminology ! 139: to help you get your bearings. ! 140: .PP ! 141: The Power 6/32 (and most related machines being shipped) use a VERSAbus ! 142: for all I/O peripherals. The console processor used for bootstrap and ! 143: diagnostic purposes is also located on the VERSAbus. The device naming ! 144: conventions described here apply to the console processor; under UNIX ! 145: device naming is considerably simpler. ! 146: .PP ! 147: The VERSAbus is a 32-bit bus that supports devices which ! 148: use 16-bit, 24-bit, or 32-bit addresses (or some combination). ! 149: The type of each address placed on the VERSAbus is indicated ! 150: by an accompanying \fIaddress modifier\fP. In addition to the ! 151: width of the ! 152: address present on the bus, VERSAbus address modifiers ! 153: may be used to indicate the privileges of the requesting ! 154: program (.e.g the program is executing in supervisory mode). ! 155: The 6/32's VERSAbus adapter accepts device requests with either ! 156: 16, 24, or 32-bit address modifiers. ! 157: 16-bit addresses are used to access control registers ! 158: for VERSAbus devices. ! 159: 24-bit addresses are used to access up to one megabyte of VERSAbus ! 160: local memory or device shared memory ! 161: as well as the first 15Mb of main memory. ! 162: 24-bit addresses are used for DMA by some peripherals, ! 163: interpreting the address ! 164: as an absolute physical address in referencing main memory. ! 165: Other devices use 32-bit addressing, allowing them to access all ! 166: of main memory. ! 167: This means that the address space for 24-bit devices overlaps ! 168: that of 32-bit devices. ! 169: Devices which do not support full 32-bit ! 170: addressing can be difficult to work with as their limited addressing ! 171: restricts the placement of I/O buffers in main memory. Unfortunately, ! 172: because the VERSAbus has had limited acceptance, there are ! 173: very few good VERSAbus device controllers available; this has ! 174: resulted in several non-VERSAbus devices being attached to the ! 175: VERSAbus through bus-adapter cards. Devices of this sort often ! 176: support only 20-bit or 24-bit addressing. ! 177: .PP ! 178: From the Tahoe side of the VERSAbus adaptor, ! 179: the three address spaces are mapped so as to avoid ! 180: overlaps. Physical addresses in the range 0xffff0000 to 0xfffffff are ! 181: used to access VERSAbus devices which use 16-bit addresses. References ! 182: to this region of the Tahoe address space result in a VERSAbus ! 183: transfer with a 16-bit address generated from the lower order 16 ! 184: bits of the memory address and a ``short addressing non-privileged I/O ! 185: access'' address modifier (0x10). Addresses in the range 0xff000000 to ! 186: 0xffff0000 are used to access 24-bit VERSAbus devices, generating a 24-bit ! 187: address and a ``standard addressing non-privileged data access'' ! 188: address modifier (0x01). ! 189: Within this range, addresses from 0xfff00000 to 0xffff0000 refer ! 190: to VERSAbus local memory used by devices (such as the VIOC) ! 191: for shared communication areas. ! 192: Finally, any other address in the ! 193: the primary I/O adapter space, 0xc0000000 to 0xff000000, generates ! 194: a 32-bit VERSAbus address with an ``extended addressing non-privileged ! 195: data access'' address modifier (0xf1). Note, however, that 32-bit ! 196: addresses generated by references to this region result in a VERSAbus ! 197: address with bits 31-30 set to 0. Thus, for example, a reference to ! 198: a device located at 0xfe000000 would result in a VERSAbus transfer ! 199: with the address set to 0x3e000000. A complete list of the characteristics ! 200: of the devices supported in the system may be found in Appendix A. ! 201: .PP ! 202: The console processor has a set of names for devices: ! 203: .DS ! 204: .TS ! 205: l l. ! 206: FUJITSU 160M disk drives fsd ! 207: FUJITSU 330M disk drives fuj ! 208: FUJITSU 450M disk drives egl** ! 209: CDC 300M disk drives smd ! 210: CDC 340M disk drives xfd ! 211: CDC 515M disk drives xsd ! 212: MXD Maxtor 340M disk drives mxd ! 213: Cipher tape drives cyp ! 214: .TE ! 215: .FS ! 216: **\|Eagle drives are not supported by the console processor on all tahoe ! 217: machines. ! 218: .FE ! 219: .DE ! 220: Devices are fully specified to the console processor with: ! 221: .DS ! 222: xxx(y,z) ! 223: .DE ! 224: where \fIxxx\fP is one of the above names (e.g. \fIxfd\fP). ! 225: The value \fIy\fP specifies a controller to use and also ! 226: the device; it is computed as ! 227: .DS ! 228: 8 * \fIcontroller\fP + \fIdevice\fP ! 229: .DE ! 230: Thus, controller 0 (by convention the controller located at VERSAbus ! 231: address 0xfff2400), drive 0 would have a \fIy\fP value of 0 ! 232: while controller 1 (address of 0xfff2800) drive 0 would have a \fIy\fP ! 233: value of 4*. ! 234: .FS ! 235: *\|Note that this means you can not reference drives 4-15 on a ! 236: controller; as a result we expect the console interface to ! 237: change soon. ! 238: .FE ! 239: The \fIz\fP value is interpreted differently for tapes and disks; ! 240: for disks it is a disk block, and for tapes it is a file number ! 241: on the tape. ! 242: .PP ! 243: The console processor has the notion of a \fIdefault device\fP ! 244: to use with file related commands. The default device is specified ! 245: according to the form shown above. Further, the console processor, ! 246: by default, interprets certain system files on the default disk to discover ! 247: information about disk drives in the system. As ! 248: .UX ! 249: device names are decidedly different from the names used by the ! 250: console processor this can lead to serious confusion. We will ! 251: return to this problem later in section 4; for now you should ! 252: simply be aware of the difference in naming conventions. ! 253: .NH 2 ! 254: UNIX device naming ! 255: .PP ! 256: UNIX has a set of names for devices which are different ! 257: from the CCI names for the devices, viz.: ! 258: .DS ! 259: .TS ! 260: l l. ! 261: VERSAbus disk drives dk ! 262: Cipher tape drives cy ! 263: .TE ! 264: .DE ! 265: .PP ! 266: The standalone system, used to bootstrap the full UNIX system, ! 267: uses device names of the form: ! 268: .DS ! 269: xx(c,d,p) ! 270: .DE ! 271: where \fIxx\fP is the device type, normally \fIdk\fP or \fIcy\fP. The ! 272: value \fIc\fP specifies the controller to use, and \fId\fP specifies ! 273: the device. The \fIp\fP value is interpreted differently for tapes ! 274: and disks: for disks it is a disk \fIpartition\fP (in the range 0-7), ! 275: and for tapes it is a file number offset on the tape. Thus, partition ! 276: 1 of a ``dk'' type disk drive on controller vd0 at drive 0 would be ! 277: ``dk(0,0,1)''. Normally the controller will be controller 0; it ! 278: may therefore be omitted from the device specification, and most of ! 279: the examples in this document reflect this. When not running ! 280: standalone, this partition would normally be available as ``/dev/dk0b''. ! 281: Here the prefix ``/dev'' is the name of the directory where all ! 282: ``special files'' normally live, the ``dk'' serves the obvious purpose, ! 283: the ``0'' identifies this as a partition of dk drive number ``0'' and ! 284: the ``b'' identifies this as the second partition. ! 285: .PP ! 286: In all simple cases, where only a single controller is present, a drive ! 287: with unit number 0 (determined by its unit plug on the front of the drive) ! 288: will be called unit 0 in its UNIX file name. This is not, however, strictly ! 289: necessary, since the system has a level of indirection in this naming. ! 290: If there are multiple controllers, the disk unit numbers will normally ! 291: be counted sequentially across controllers. This can be taken ! 292: advantage of to make the system less dependent on the interconnect ! 293: topology, and to make reconfiguration after hardware failure extremely ! 294: easy. ! 295: .PP ! 296: Each UNIX physical disk is divided into at most 8 logical disk partitions, ! 297: each of which may occupy any consecutive cylinder range on the physical ! 298: device. The cylinders occupied by the 8 partitions for each drive type ! 299: are specified initially in the disk description file /etc/disktab ! 300: (c.f. \fIdisktab\fP(5)). The partition information and description of the ! 301: drive geometry are written in the first sector of each disk with the ! 302: \fIdisklabel\|\fP(8) program. Each partition may be used for either a ! 303: raw data area such as a paging area or to store a UNIX file system. ! 304: It is conventional for the first partition on a disk to be used ! 305: to store a root file system, from which UNIX may be bootstrapped. ! 306: The second partition is traditionally used as a paging area, and the ! 307: rest of the disk is divided into spaces for additional ``mounted ! 308: file systems'' by use of one or more additional partitions. ! 309: .PP ! 310: Returning to the discussion of the standalone system, we recall ! 311: that tapes also took three integer parameters. In the normal case ! 312: where the Cipher tape drive is unit 0 on the first controller, the ! 313: files on the tape have names ``cy(0, 0)'', ``cy(0, 1)'', etc. ! 314: Here ``file'' means a tape file containing a single data stream. ! 315: The distribution tape(s) have data structures in the tape ! 316: files and though the tape(s) contain only 9 tape files, they contain ! 317: several thousand UNIX files. ! 318: .NH 2 ! 319: UNIX devices: block and raw ! 320: .PP ! 321: UNIX makes a distinction between ``block'' and ``raw'' (character) ! 322: devices. Each disk has a block device interface where ! 323: the system makes the device byte addressable and you can write ! 324: a single byte in the middle of the disk. The system will read ! 325: out the data from the disk sector, insert the byte you gave it ! 326: and put the modified data back. The disks with the names ! 327: ``/dev/xx0[a-h]'', etc., are block devices. ! 328: There are also raw devices available. ! 329: These have names like ``/dev/rxx0[a-h]'', the ! 330: ``r'' here standing for ``raw''. ! 331: Raw devices bypass the buffer cache and use DMA directly to/from ! 332: the program's I/O buffers; ! 333: they are normally restricted to full-sector transfers. ! 334: In the bootstrap procedures we ! 335: will often suggest using the raw devices, because these tend ! 336: to work faster. ! 337: Raw devices are used when making new filesystems, ! 338: when checking unmounted filesystems, ! 339: or for copying quiescent filesystems. ! 340: The block devices are used to mount file systems, ! 341: or when operating on a mounted filesystem such as the root. ! 342: .PP ! 343: You should be aware that it is sometimes important whether to use ! 344: the character device (for efficiency) or not (because it wouldn't ! 345: work, e.g. to write a single byte in the middle of a sector). ! 346: Don't change the instructions by using the wrong type of device ! 347: indiscriminately.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.