| 1 | FreeBSD 1.0 |
| 2 | INSTALLATION NOTES <1.00, 8 September 1993> |
| 3 | |
| 4 | These notes have been prepared from those written originally for NetBSD |
| 5 | 0.9. The conversion was done by someone who has had experience with |
| 6 | installing and upgrading 386bsd, but who is not a unix guru, so there |
| 7 | will be slant towards this experience. Corrections/updates are |
| 8 | welcomed, it is difficult/impossible to test every last hardware |
| 9 | combination. |
| 10 | |
| 11 | Be sure to read _ALL_ of this document before you try to install |
| 12 | FreeBSD. FreeBSD probably looks a bit similar to things that you've |
| 13 | seen before (perhaps 386BSD), but the installation procedures are quite |
| 14 | different. |
| 15 | |
| 16 | |
| 17 | FreeBSD 1.0 Release Contents: |
| 18 | ------- --- ------- -------- |
| 19 | |
| 20 | The FreeBSD 1.0 Release consists of the following elements: |
| 21 | |
| 22 | Bootable Kernel-copy floppies |
| 23 | |
| 24 | These disks contain file systems, are bootable, and |
| 25 | have enough utilities on board to copy a new kernel |
| 26 | to your hard disk once you have it partitioned |
| 27 | for FreeBSD. They make upgrading to a new kernel |
| 28 | easy, because all you have to do is get a new |
| 29 | kernel-copy floppy with a new kernel, boot from it, |
| 30 | and confirm that you want to have the kernel copied |
| 31 | to your disk. |
| 32 | |
| 33 | There are currently two different kernel copy floppy |
| 34 | images, "kcopy-ah-floppy", and "kcopy-bt-floppy". The |
| 35 | first has the driver for the Adaptec 154x and 1742 host |
| 36 | adapter, the second has the drivers for the Bustek 742 |
| 37 | and Ultrastore host adapter. Either floppy can be used |
| 38 | for systems with MFM/RLL/IDE disk drives. |
| 39 | |
| 40 | Installation floppies |
| 41 | |
| 42 | These are currently two disks which contain the |
| 43 | software necessary to prepare your hard drive |
| 44 | for FreeBSD and install the FreeBSD distribution. |
| 45 | They are not bootable and must be used in |
| 46 | conjunction with one of the kernel-copy floppies. |
| 47 | These floppies are named "filesystem-floppy" and |
| 48 | "cpio-floppy". |
| 49 | |
| 50 | Upgrade floppies |
| 51 | |
| 52 | There is work being done on upgrading from 386bsd to |
| 53 | FreeBSD. Presumably an announcement will be made on |
| 54 | one of the comp.os.386bsd newsgroups in due course. |
| 55 | This document ignores the existence of such floppies. |
| 56 | |
| 57 | FreeBSD distribution sets |
| 58 | |
| 59 | These are collections of software, and include |
| 60 | both the binaries necessary to run the system |
| 61 | and the sources to the entire system. |
| 62 | |
| 63 | FreeBSD 1.0 is split up into three different |
| 64 | distribution sets, one of which contains FreeBSD |
| 65 | binaries, one of which contains the FreeBSD source, |
| 66 | and the last of which contains the tools which |
| 67 | are needed for a ``secure'' system. This last set |
| 68 | replaces certain binaries in the base binary distribution |
| 69 | with binaries that contain the DES crypt(3) code. |
| 70 | |
| 71 | The binary distribution set can be found in |
| 72 | the "binarydist" subdirectory of the distribution, |
| 73 | and is named bin.tar.gz.aa to bin.tar.gz.db (ie 80 |
| 74 | files all told), plus file CKSUMS. |
| 75 | |
| 76 | The source distribution sets can be found in |
| 77 | under "sourcedist" subdirectory of the distribution, |
| 78 | and is named src.tar.gz.aa to src.tar.gz.cp (ie 68 |
| 79 | files all told), plus file CKSUMS. |
| 80 | |
| 81 | Finally, the security distribution set contains |
| 82 | usr/src/libcrypt/*, the source files for the DES encryption |
| 83 | algorithm, and the binaries which depend on it. |
| 84 | It can be found in the "securedist" subdirectory on |
| 85 | sites which choose to carry the complete FreeBSD |
| 86 | distribution. The GAMMA release included more binaries in |
| 87 | this distribution than actually contain DES, this was an |
| 88 | error and will be corrected for the next release. |
| 89 | |
| 90 | All of the files except the last files for each set |
| 91 | are 240,640 bytes long. (The last file is just long |
| 92 | enough to contain the rest of the data for that |
| 93 | distribution set.) |
| 94 | |
| 95 | Put together, the files for a set comprise a |
| 96 | gzipped tar file. If you don't want to |
| 97 | go through the install process, but want to |
| 98 | look at the contents of the files, you could use |
| 99 | the command, say for the binarydist files, |
| 100 | |
| 101 | cat bin* | gunzip | tar tvf - | more |
| 102 | |
| 103 | or to extract the files themselves use |
| 104 | |
| 105 | cat bin* | gunzip | tar xvfp - |
| 106 | |
| 107 | Using this method, the files are extracted, |
| 108 | "below" the current directory. That is, if you |
| 109 | want to extract the binaries "into" your system, |
| 110 | i.e. replace the system binaries with them, you have |
| 111 | to run the "tar xvfp" from /. |
| 112 | |
| 113 | In each of the distribution directories, there is |
| 114 | a file named "CKSUMS" which contains the checksums |
| 115 | of the files in that directory, as generated |
| 116 | by the cksum(1) command. You can use cksum to |
| 117 | check the integrity of the archives, if you suspect |
| 118 | one of the files is corrupt and have access to a |
| 119 | cksum binary. Note that the CKSUMS files are produced |
| 120 | using the BSD 4.4 version of cksum which is POSIX |
| 121 | compliant. The values in this file will probably not |
| 122 | match with cksums from other systems. FreeBSD uses the |
| 123 | new BSD 4.4 cksum routine. A copy of the new cksum |
| 124 | binary that will run on 386bsd/Netbsd/FreeBSD can be |
| 125 | found in the "tools" subdirectory of the distribution. |
| 126 | |
| 127 | |
| 128 | System Requirements and Supported Devices: |
| 129 | ------ ------------ --- --------- ------- |
| 130 | |
| 131 | FreeBSD 1.0 runs on ISA (AT-Bus) and EISA systems, with 386 and 486 |
| 132 | processors, with or without math coprocessors. It does NOT support |
| 133 | Micro-channel systems, such as some IBM PS/2 systems. The minimal |
| 134 | configuration includes 4Meg of RAM, and a 60Meg hard disk, but to |
| 135 | install the entire system you'll need much more disk space, and to run |
| 136 | X or compile the system more RAM is recommended. (4Meg will actually |
| 137 | allow you to run X and/or compile, but it's extremely slow.) |
| 138 | |
| 139 | Supported devices include: |
| 140 | |
| 141 | Standard floppy controllers |
| 142 | Standard hard disk controllers: |
| 143 | MFM |
| 144 | ESDI |
| 145 | IDE |
| 146 | RLL |
| 147 | SCSI hard disk controllers: |
| 148 | Adaptec AHA-1542{A,B,C}, -1742 [kcopy-ah-floppy] |
| 149 | Bustek 742 (EISA) Ultrastor 14f and 34f [kcopy-bt-floppy] |
| 150 | Display Adaptors: |
| 151 | MDA |
| 152 | CGA |
| 153 | VGA (and SVGA) |
| 154 | HGC |
| 155 | Serial communications ports |
| 156 | 8250 |
| 157 | 16450 |
| 158 | 16550A |
| 159 | Ethernet controllers |
| 160 | SMC/WD 8003, 8013, and equivalents |
| 161 | (including the SMC "Elite" series) |
| 162 | Novell NE1000, NE2000 |
| 163 | 3COM 3c503 |
| 164 | ISOLAN ISOLink |
| 165 | Tape drives: |
| 166 | QIC-02 format tape drives |
| 167 | most SCSI tape drives should work |
| 168 | _NO_ QIC-40 or QIC-80 tape drives will work |
| 169 | CD-ROM drives: |
| 170 | most SCSI CD-ROM drives should work |
| 171 | _NO_ non-SCSI CD-ROM drives will work |
| 172 | |
| 173 | To be detected by the distributed kernels, the devices must |
| 174 | be configured as follows: (Note: IRQ 9 is the same as IRQ 2 |
| 175 | on ISA/EISA based machines) |
| 176 | |
| 177 | Device Name Port IRQ DRQ Misc |
| 178 | ------ ---- ---- --- --- ---- |
| 179 | Floppy Cntlr. fdc0 0x3f0 6 2 |
| 180 | |
| 181 | Std. Hard Disk Cntlr. |
| 182 | wdc0 0x1f0 14 |
| 183 | |
| 184 | AHA-154x SCSI Cntlr. 0x330 11 5 [kcopy-ah-floppy] |
| 185 | |
| 186 | AHA-174x SCSI Cntlr. automagically configured [kcopy-ah-floppy] |
| 187 | |
| 188 | BT742 SCSI Cntlr. 0x330 12 [kcopy-bt-floppy] |
| 189 | |
| 190 | UHA-14f SCSI Cntlr. or |
| 191 | UHA-34f SCSI Cntlr. 0x330 11 5 [kcopy-bt-floppy] |
| 192 | |
| 193 | SCSI Disks sd[0-2] automagically configured |
| 194 | |
| 195 | SCSI Tapes st[01] automagically configured |
| 196 | |
| 197 | SCSI CD-ROMs cd0 automagically configured |
| 198 | |
| 199 | Serial Ports com0 0x3f8 4 |
| 200 | com1 0x2f8 3 |
| 201 | com2 0x3e8 5 |
| 202 | com3 0x3f8 9 |
| 203 | |
| 204 | SMC/WD Ethernet or |
| 205 | 3COM 3c503 ed0 0x280 5 iomem 0xd8000 |
| 206 | |
| 207 | NOTE for 386bsd users:- the we0 device for the WD80xxyy card has been |
| 208 | replaced with an ed0 device. The default settings of 2/280/d000 have |
| 209 | been changed to 5/280/d800 as this address accomdates all of the boards. |
| 210 | |
| 211 | Novell Ethernet ne0 0x300 9 |
| 212 | |
| 213 | ISOLAN ISOLink is0 0x280 10 7 |
| 214 | |
| 215 | QIC-02 Tape wt0 0x300 5 1 |
| 216 | |
| 217 | Parallel (Printer) Port |
| 218 | lpt0 0x3BC 7 |
| 219 | |
| 220 | Interruptless Parallel (Printer) Port |
| 221 | lpa0 0x378 |
| 222 | lpa1 0x278 |
| 223 | |
| 224 | NOTE you MUST disable the interrupt on the board or you will |
| 225 | have problems using these drivers. |
| 226 | |
| 227 | |
| 228 | Getting the System on to Useful Media: |
| 229 | ------- --- ------ -- -- ------ ----- |
| 230 | |
| 231 | Installation is supported from several media types, including: |
| 232 | |
| 233 | MS-DOS floppies |
| 234 | Tape |
| 235 | NFS partitions |
| 236 | FTP |
| 237 | |
| 238 | No matter what you do, however, you'll need to have three disks (1.2M |
| 239 | or 1.44M) handy, on which you will put the kernel-copy image and the |
| 240 | install (or upgrade) floppy images. |
| 241 | |
| 242 | The images are available from the directory "floppies", under the root |
| 243 | of the FreeBSD/FreeBSD-1.0-GAMMA tree at your favorite archive site. |
| 244 | They're available both as raw disk images, and gzipped, to save time |
| 245 | downloading. |
| 246 | |
| 247 | If you are using an AHA-154x or AHA-1742 SCSI host adapter, you need |
| 248 | the kcopy-ah-floppy image. If you're using a BT-742 SCSI host adapter |
| 249 | or an Ultrastor adaptor, then you'll need the kcopy-bt-floppy image. |
| 250 | If you're using MFM/RLL/IDE disk controllers, you can use either |
| 251 | kernel-copy floppy image. |
| 252 | |
| 253 | If you are using UNIX to make the floppies, you should use the command |
| 254 | dd(1) to write the raw floppy images (ie kcopy-ah-floppy or |
| 255 | kcopy-bt-floppy, filesystem-floppy and cpio-floppy) to the floppies. Use |
| 256 | "man dd" or ask your system administrator for details on the correct |
| 257 | set of arguments to use; it will be slightly different from system to |
| 258 | system, and the exact set of necessary arguments to dd is beyond the |
| 259 | scope of this document. |
| 260 | |
| 261 | If you are using DOS to make the floppies, you should use the rawrite |
| 262 | utility. This can be found in the "tools" subdirectory of the distribution. |
| 263 | It will write a raw image file to a disk, and the operation instructions |
| 264 | are self-evident. Such files are 1228800 bytes in size. You can rawrite |
| 265 | the images to either 1.2MB or 1.44MB floppies. |
| 266 | |
| 267 | The steps necessary to prepare the distribution sets for installation |
| 268 | depend on which method of installation you choose. The various methods |
| 269 | are explained below. |
| 270 | |
| 271 | To prepare for installing via MS-DOS floppies: |
| 272 | (NOTE: At this stage you can only prepare to install these files, you |
| 273 | cannot do the installation using "load_fd" as the mread program is not |
| 274 | on the installation disks, nor will the "load_fd" allow itself to be |
| 275 | terminated neatly and cleanly. No doubt this will be fixed in due |
| 276 | course, watch the newsgroups inside comp.os.386bsd.) Work is already |
| 277 | in process to fix this. |
| 278 | |
| 279 | To prepare FreeBSD for installaton from MS-DOS floppies, you |
| 280 | need to do the following: |
| 281 | |
| 282 | Count the number of "<set>.tar.gz.xx" files |
| 283 | you have. Call this number N. You will |
| 284 | need N/6 1.44M floppies, or N/5 1.2M |
| 285 | floppies to install the distribution |
| 286 | in this manner. For the set of bin files |
| 287 | (ie 80 files) and 1.2 Mb floppies you will |
| 288 | need 16 disks. |
| 289 | |
| 290 | Format all of the floppies, with MS-DOS. |
| 291 | Don't make any of them MS-DOS bootable |
| 292 | floppies. (i.e. don't use "format /s"!) |
| 293 | (If you use "format /u" then the format |
| 294 | will run a tad faster). |
| 295 | |
| 296 | Place all of the "<set>.tar.gz.xx" files on |
| 297 | the DOS disks. (How you do this is up to |
| 298 | you. You could, for instance, use a DOS |
| 299 | terminal program to download them on to |
| 300 | the floppies, or perhaps use a UNIX machine |
| 301 | capable of reading and writing DOS filesystems |
| 302 | to place the files on the disk. The |
| 303 | possibilities are almost endless.) (If you are |
| 304 | working off a 386bsd or related system, you can |
| 305 | use "mwrite" to write the files to floppies - |
| 306 | this is tedious but it does work. Use commands |
| 307 | like this:- |
| 308 | |
| 309 | for i in aa ab ac ad ae; do |
| 310 | mwrite bin.tar.gz.$i a:bintargz.$i; done |
| 311 | |
| 312 | Unfortunately, when/if you can retrieve these |
| 313 | files back onto the new FreeBSD system, they |
| 314 | will have the wrong filenames and the filenames |
| 315 | will be in upper case. How you fix this is |
| 316 | currently "left as an exercise for the reader") |
| 317 | |
| 318 | (One suggestion is to use "tar" rather than "mwrite" |
| 319 | when writing the floppies, and to modify the "load_fd" |
| 320 | definition in the /.profile file to use "tar" rather |
| 321 | than "mread" to get the files back). |
| 322 | |
| 323 | Once you have the files on DOS disks, you can proceed to the |
| 324 | next step in the installation process, viz preparing your hard |
| 325 | disk. |
| 326 | |
| 327 | To prepare for installing via a tape: |
| 328 | |
| 329 | To install FreeBSD from a tape, you need to be somehow |
| 330 | to get the FreeBSD filesets you wish to install on |
| 331 | your system on to the appropriate kind of tape, |
| 332 | in tar format. |
| 333 | |
| 334 | If you're making the tape on a UN*X system, the easiest |
| 335 | way to do so is: |
| 336 | |
| 337 | tar cvf <tape_device> <files> |
| 338 | |
| 339 | where "<tape_device>" is the name of the tape device |
| 340 | that describes the tape drive you're using (possibly |
| 341 | something like /dev/nrst0, but we make no guarantees 8-). |
| 342 | If you can't figure it out, ask your system administrator. |
| 343 | "<files>" are the names of the "<set>.tar.gz.xx" files |
| 344 | which you want to be placed on the tape. |
| 345 | |
| 346 | To prepare for installing via an NFS partition: |
| 347 | |
| 348 | NOTE: this method of installation is recommended |
| 349 | only for those already familiar with using |
| 350 | the BSD network-manipulation commands and |
| 351 | interfaces. If you aren't, this documentation |
| 352 | should help, but is not intended to be |
| 353 | all-encompassing. |
| 354 | |
| 355 | Place the FreeBSD software you wish to install into |
| 356 | a directory on an NFS server, and make that directory |
| 357 | mountable by the machine which you will be installing |
| 358 | FreeBSD on. This will probably require modifying the |
| 359 | /etc/exports file of the NFS server and resetting |
| 360 | mountd, acts which will require superuser privileges. |
| 361 | Make a note of the numeric IP address of the NFS server |
| 362 | and make a note of the router closest to the the new |
| 363 | FreeBSD machine if the NFS server is not on a network |
| 364 | which is directly attached to the FreeBSD machine. |
| 365 | |
| 366 | Once you have done this, you can proceed to the next |
| 367 | step in the installation process, preparing your hard disk. |
| 368 | |
| 369 | To prepare for installing via FTP: |
| 370 | |
| 371 | NOTE: this method of installation is recommended |
| 372 | only for those already familiar with using |
| 373 | the BSD network-manipulation commands and |
| 374 | interfaces. If you aren't, this documentation |
| 375 | should help, but is not intended to be |
| 376 | all-encompassing. |
| 377 | |
| 378 | The preparations for this method of installation |
| 379 | are easy: all you have to do is make sure that |
| 380 | there's some FTP site from which you can retrieve |
| 381 | the FreeBSD installation when it's time to do |
| 382 | the install. You should know the numeric IP |
| 383 | address of that site, and the numeric IP address of |
| 384 | your nearest router if the new FreeBSD computer is |
| 385 | not on the same net or subnet as the FTP site. |
| 386 | |
| 387 | Once you have done this, you can proceed to the next |
| 388 | step in the installation process, preparing your hard disk. |
| 389 | |
| 390 | To upgrade: |
| 391 | |
| 392 | (This is still to be tested.) |
| 393 | |
| 394 | Preparing your Hard Disk for FreeBSD Installation: |
| 395 | --------- ---- ---- ---- --- ------ ------------ |
| 396 | |
| 397 | NOTE: If you wish to install FreeBSD on your whole drive, (i.e. you do |
| 398 | not want DOS or any other operating system on your hard disk), you can |
| 399 | skip this section, and go on to "Installing the FreeBSD System." |
| 400 | |
| 401 | Firstly, be sure you have a reliable backup of any data which you may |
| 402 | want to keep; repartitioning your hard drive is an excellent way to |
| 403 | destroy important data. |
| 404 | |
| 405 | WARNING: If you are using a disk controller which supports disk |
| 406 | geometry translation, BE SURE TO USE THE SAME PARAMETERS FOR FreeBSD AS |
| 407 | FOR DOS! If you do not, FreeBSD will not be able to properly coexist |
| 408 | with DOS. |
| 409 | |
| 410 | Secondly, using the DOS "fdisk" program, repartition your hard drive to |
| 411 | create a new FreeBSD partition of at least 60 Mbyte in size. Note the |
| 412 | starting location and size of this new partition; you will need this |
| 413 | information when you install FreeBSD. Once you have created the new |
| 414 | partition, using a partition editor mark the new FreeBSD partition as |
| 415 | having a type of 0xA5. |
| 416 | |
| 417 | Thirdly, using fdisk, set the other (ie non-FreeBSD) partition to be |
| 418 | "active", then, after leaving fdisk, do whatever is necessary to |
| 419 | restore order to that partition. (If that partition used to contain |
| 420 | DOS, this will probably involve invoking the DOS "format" command, |
| 421 | probably in the manner of "format c:/s". You will then have to restore |
| 422 | your backed-up data to the partition.) |
| 423 | |
| 424 | You are now set to install FreeBSD on your hard drive. |
| 425 | |
| 426 | |
| 427 | Installing the FreeBSD System: |
| 428 | ---------- --- ------ ------ |
| 429 | |
| 430 | Installing FreeBSD is a relatively complex process, but, if you have |
| 431 | this document in hand and are careful to read and remember the |
| 432 | information which is presented to you by the install program, it |
| 433 | shouldn't be too much trouble. |
| 434 | |
| 435 | Before you begin, you must know several of your hard disk's |
| 436 | parameters. You must know the number of sectors per track, the number |
| 437 | of tracks per cylinder (i.e. the number of heads), the number of bytes |
| 438 | per sector, and the number of cylinders on the disk. |
| 439 | |
| 440 | If you are installing FreeBSD into a partition on your hard disk, you |
| 441 | should have completed the section regarding the preparation of your |
| 442 | hard disk, and you should know the size and offset from the beginning |
| 443 | of the disk of the FreeBSD partition. |
| 444 | |
| 445 | (NOTE: The DOS fdisk counts in Megabytes or in percentage of disk |
| 446 | space, but the FreeBSD system counts in cylinders, so you need to |
| 447 | calculate carefully how many bytes there are to a cylinder, ie |
| 448 | |
| 449 | bytes/sector * heads(=trks/cyl) * (sectors/trk) |
| 450 | |
| 451 | You are advised to align the FreeBSD partition on a cylinder boundary |
| 452 | and to round down the megabyte size of DOS) |
| 453 | |
| 454 | Once you know the above information then you should be ready to proceed |
| 455 | with the FreeBSD installation. It is essential to have a pencil, |
| 456 | paper, and calculator handy. |
| 457 | |
| 458 | That all being said, it's finally time to install the system! |
| 459 | |
| 460 | The following is a walk-through of the steps necessary to get FreeBSD |
| 461 | installed on your hard disk. If you wish to stop the installation, you |
| 462 | may hit Control-C at any prompt, but if you do, you'll have to begin |
| 463 | again from scratch. |
| 464 | |
| 465 | Insert the kcopy-ah-floppy or kcopy-bt-floppy (as |
| 466 | appropriate) into the boot drive. Boot from it. It will |
| 467 | take a while to load the kernel from the floppy, probably |
| 468 | on the order of a minute or two. After it is loaded, |
| 469 | it will present the message: |
| 470 | |
| 471 | "Insert file system floppy" |
| 472 | |
| 473 | If you do not see this message after a reasonable period of |
| 474 | time, reboot and try it again. If it doesn't work, try |
| 475 | disabling your CPU's internal and external caches, and then |
| 476 | try to boot again. If you still don't see it, then you can't |
| 477 | install FreeBSD on your hardware. If you were able to |
| 478 | install 386bsd, this is definitely a bug in our software; |
| 479 | please report it! Please include your system configuration, |
| 480 | and any other relevant information in your bug report. |
| 481 | |
| 482 | Once you have reached that prompt, remove the kcopy-xx-floppy |
| 483 | from the drive. Make sure that the first installation |
| 484 | disk (ie the filesystem-floppy) is writable, insert it into |
| 485 | the disk drive, and hit any key. |
| 486 | |
| 487 | You will then be presented with a copyright notice and a list |
| 488 | of the hardware that FreeBSD recognizes as being in your |
| 489 | machine. It would be sensible to make a note of the disk |
| 490 | values for cylinders, heads, sectors etc for later use. |
| 491 | |
| 492 | After a short while (approximately 30 to 60 seconds), you |
| 493 | should see a welcome message and a prompt, asking if you |
| 494 | wish to proceed with the installation. |
| 495 | |
| 496 | If you wish to proceed, enter "y" and then return. |
| 497 | |
| 498 | You will then be asked what type of disk drive you have. |
| 499 | The valid options are listed on the screen (eg SCSI, ESDI). |
| 500 | |
| 501 | You will then be asked for a label name for your disk. |
| 502 | This should be a short, one-word name for your disk, |
| 503 | e.g. "cp3100-mine" for a Conner Peripherals "3100" disk. |
| 504 | You needn't remember this name. |
| 505 | |
| 506 | Next, you will be prompted for the geometry information you |
| 507 | were supposed to remember about your disk. Enter it when the |
| 508 | install program asks for it. |
| 509 | |
| 510 | When asked for the size of the FreeBSD portion of the disk, |
| 511 | either input the number listed as the total size of your |
| 512 | disk, or multiply the number of cylinders in the FreeBSD |
| 513 | portion of your disk by the number of sectors per cylinder |
| 514 | (also listed by the install program) and input the result. |
| 515 | |
| 516 | If you are not installing on the whole disk, you will be |
| 517 | asked for the offset of the FreeBSD partition from the |
| 518 | beginning of the disk. Again, calculate this number from |
| 519 | the information you recorded when partitioning your disk |
| 520 | with fdisk, and input the result. |
| 521 | |
| 522 | You will then be asked for the size of your root partition, |
| 523 | in cylinders. The suggested maximum size is 15 Mbytes - so |
| 524 | you must divide 15,000,000 by the number that you get by |
| 525 | calculating |
| 526 | |
| 527 | (bytes/sector)*(sectors/trk)*(trks/cyl) |
| 528 | |
| 529 | Next, you will be asked for the size of your swap partition |
| 530 | - again, you must calculate this in cylinders. You should |
| 531 | probably allocate around twice as much swap space as you |
| 532 | have real memory. If you wish the system to save crash dumps |
| 533 | when it panics, you will need at least as much swap as you |
| 534 | have RAM. |
| 535 | |
| 536 | The install program will then ask you for information about |
| 537 | the rest of the partitions you want on your disk. For the |
| 538 | purposes of this document, you only want one more: /usr. |
| 539 | Therefore, at the prompt, when in asks you to enter the size |
| 540 | of the next partition, enter the number of cylinders remaining |
| 541 | in the FreeBSD portion of the disk. When it asks you for the |
| 542 | mount point for this partition, say "/usr". |
| 543 | |
| 544 | YOU ARE NOW AT THE POINT OF NO RETURN. |
| 545 | |
| 546 | If you confirm that you want to install FreeBSD, your hard |
| 547 | drive will be modified, and perhaps it contents scrambled at |
| 548 | the whim of the install program. This is especially likely |
| 549 | if you gave the install program incorrect information. |
| 550 | |
| 551 | If you are sure you want to proceed, enter "yes" at the prompt. |
| 552 | |
| 553 | The install program will now make the filesystems you |
| 554 | specified. There should be no errors in this section of the |
| 555 | installation. If there are, restart from the the beginning |
| 556 | of the installation process. |
| 557 | |
| 558 | After the installation program prompts you to see if you'd |
| 559 | like to be told about all of the files it's going to copy |
| 560 | to your hard drive, it will spend a few minutes copying these |
| 561 | files and then will print out an informative message and |
| 562 | place you at a "#" prompt. |
| 563 | |
| 564 | Read the message and note which partition (eg sd0a or wd0a) |
| 565 | you need to copy a kernel to. Reboot the machine off the |
| 566 | kcopy-xx-floppy disk, but this time at the prompt asking |
| 567 | you to insert a file system floppy, do _not_ replace the |
| 568 | floppy, just press <enter>. |
| 569 | |
| 570 | At the "kc>" prompt, enter "copy" to prepare to copy the |
| 571 | kernel on the floppy to your hard disk. |
| 572 | |
| 573 | At the next "kc>" prompt, enter the disk partition to which |
| 574 | you want to copy the kernel. (eg sd0a or wd0a). |
| 575 | |
| 576 | It will work for a minute or two, then present you with |
| 577 | another "#" prompt. Follow the instructions given, (ie |
| 578 | halt the system) and reboot from the hard disk. You will |
| 579 | probably have to do a hardware reset or else your ethernet |
| 580 | card might not be recognised at reboot (eg if you have a |
| 581 | WD8003EP card). |
| 582 | |
| 583 | When the machine boots, a three-line banner should appear at |
| 584 | the top of the screen. In a few seconds, a series of |
| 585 | messages will appear, describing the hardware in your machine. |
| 586 | Once again, this stage can take up to two minutes, so DO NOT |
| 587 | PANIC! |
| 588 | |
| 589 | You will be asked to insert the cpio-floppy into a floppy |
| 590 | drive, and enter that drive's number. "0" corresponds to |
| 591 | DOS's "A:" drive, "1" corresponds to DOS's "B:" drive. |
| 592 | |
| 593 | After you enter the number it will ask you if you'd like to |
| 594 | watch its progress, and after you answer this question it |
| 595 | will begin installing still more files on your hard disk. |
| 596 | This should take no more than 3 minutes. |
| 597 | |
| 598 | You will be given (more) instructions, (eg to halt the |
| 599 | system) and you should reboot the machine again, from the |
| 600 | hard drive and probably with a hardware reset to kick your |
| 601 | ethernet card back into life. |
| 602 | |
| 603 | CONGRATULATIONS: You now have the minimum base of FreeBSD |
| 604 | files on your hard disk! Now you get to install the |
| 605 | distribution file sets. Remember that, at minimum, you must |
| 606 | install the bin.tar.gz.xx file set (see below for |
| 607 | instructions). |
| 608 | |
| 609 | After the machine is done booting, you will be presented |
| 610 | with a screenful of information about what to do next. |
| 611 | |
| 612 | What you do from this point on depends on which media you're |
| 613 | using to install FreeBSD. Follow the appropriate |
| 614 | instructions, given below. |
| 615 | |
| 616 | To install from tape or floppy: |
| 617 | |
| 618 | The first thing you should do is to choose a temporary |
| 619 | directory where the distribution files can be stored. |
| 620 | To do this, use the command "set_tmp_dir" and enter |
| 621 | your choice. The default is /usr/distrib. |
| 622 | |
| 623 | After you have chosen a temporary directory, |
| 624 | you should issue the appropriate load command: |
| 625 | |
| 626 | load_fd if you're loading from floppies |
| 627 | (NOTE: as of time of writing these notes, |
| 628 | this does not work). |
| 629 | |
| 630 | load_qic_tape if loading from QIC-02 tape |
| 631 | |
| 632 | load_scsi_tape if you're loading from the first |
| 633 | SCSI tape drive in the system. |
| 634 | |
| 635 | You will then be prompted for information as to which |
| 636 | floppy drive to load from, if you choose that |
| 637 | method of installation. |
| 638 | |
| 639 | Next, you will be told to insert the media into |
| 640 | the appropriate drive, and hit return. Continue |
| 641 | to follow instructions until you are returned to |
| 642 | the "#" prompt. |
| 643 | |
| 644 | Go to the directory which contains the first |
| 645 | distribution set you wish to install. This is |
| 646 | either the directory you specified above, if loading |
| 647 | from floppy, or possibly a subdirectory of that |
| 648 | directory, if you loaded from tape. |
| 649 | |
| 650 | When there, run "set_tmp_dir" again, and choose |
| 651 | the default temporary directory, by hitting |
| 652 | return at the prompt. |
| 653 | |
| 654 | Run the "extract" command, giving it as its sole |
| 655 | argument the name of the distribution set you |
| 656 | wish to extract. For example, to extract the binary |
| 657 | distribution, use the command: |
| 658 | |
| 659 | extract bin |
| 660 | |
| 661 | and to extract the source distribution: |
| 662 | |
| 663 | extract src |
| 664 | |
| 665 | After the extraction is complete, go to the location |
| 666 | of the next set you want to extract, "set_tmp_dir" |
| 667 | again, and once again issue the appropriate |
| 668 | extract command. Continue this process until |
| 669 | you've finished installing all of the sets which you |
| 670 | desire to have on your hard disk. |
| 671 | |
| 672 | After each set is finished, if you know that you |
| 673 | are running low on space you can remove the |
| 674 | distribution files for that set by saying: |
| 675 | |
| 676 | rm <set>* |
| 677 | |
| 678 | For example, if you wish to remove the distribution |
| 679 | files for the binarydist set, after the "extract bin" |
| 680 | command has completed, issue the command: |
| 681 | |
| 682 | rm bin* |
| 683 | |
| 684 | Once you have extracted all sets and are at the "#" prompt |
| 685 | again, proceed to the section "Configuring Your System," |
| 686 | below. |
| 687 | |
| 688 | To install via FTP or NFS: |
| 689 | |
| 690 | First you must decide on a temporary directory to hold |
| 691 | the <set>.tar.gz.xx files. The directory /usr/distrib |
| 692 | is suggested. You should cd to it, if necessary do |
| 693 | a mkdir first. Use set_tmp_dir to identify this |
| 694 | directory to the install process. |
| 695 | |
| 696 | Configure the appropriate ethernet interface (e.g. ed0, |
| 697 | ne0, etc.) up, with a command like: |
| 698 | |
| 699 | ifconfig <ifname> <ipaddr> [netmask <netmask>] |
| 700 | |
| 701 | where <ifname> is the interface name (e.g. ed0, etc.), |
| 702 | and <ipaddr> is the numeric IP address of the interface. |
| 703 | If the interface has a special netmask, supply |
| 704 | the word "netmask" and that netmask at the end of the |
| 705 | command line. For instance, without a special netmask: |
| 706 | |
| 707 | ifconfig ed0 129.133.10.10 |
| 708 | |
| 709 | or with a special netmask |
| 710 | |
| 711 | ifconfig ed0 128.32.240.167 netmask 0xffffff00 |
| 712 | |
| 713 | or the equivalent |
| 714 | |
| 715 | ifconfig ed0 128.32.240.167 netmask 255.255.255.0 |
| 716 | |
| 717 | If you are using the AUI connector on a 3C503 card, you |
| 718 | must also set the LLC0 flag (the default is to use the BNC |
| 719 | connector): |
| 720 | |
| 721 | ifconfig ed0 130.252.23.86 llc0 |
| 722 | |
| 723 | If the NFS server or FTP server is not on a directly- |
| 724 | connected network, you should set up a route to it |
| 725 | with the command: |
| 726 | |
| 727 | route add default <gate_ipaddr> |
| 728 | |
| 729 | where <gate_ipaddr> is your gateway's numeric IP address. |
| 730 | |
| 731 | If you are NFS-mounting the distribution sets, |
| 732 | mount them on the temporary directory with the command: |
| 733 | |
| 734 | mount -t nfs <serv_ipaddr>:<dist_dir> <tmp_dir> |
| 735 | |
| 736 | where <serv_ipaddr> is the server's numeric IP address, |
| 737 | <dist_dir> is the path to the distribution files on |
| 738 | the server, and <tmp_dir> is the name of the local |
| 739 | temporary directory (eg /usr/distrib). Proceed as if |
| 740 | you had loaded the |
| 741 | files from tape, "cd"ing to the appropriate directories |
| 742 | and running "set_tmp_dir" and "extract" as appropriate. |
| 743 | |
| 744 | If you are retrieving the distribution sets using ftp, |
| 745 | cd into the temp directory, and execute the command: |
| 746 | |
| 747 | ftp <serv_ipaddr> |
| 748 | |
| 749 | where <serv_ipaddr> is the server's |
| 750 | numeric IP address. Get the files with FTP, |
| 751 | taking care to use binary mode to transfer |
| 752 | all files. A simple set of commands is |
| 753 | |
| 754 | ftp <serv_ipaddr> |
| 755 | cd <where/the/binarydist/files/are> |
| 756 | hash |
| 757 | binary |
| 758 | mget * |
| 759 | quit |
| 760 | |
| 761 | Once you have all of the files for the distribution sets |
| 762 | that you wish to install, you can proceed using the |
| 763 | instructions above as if you had installed the files |
| 764 | from a floppy. |
| 765 | |
| 766 | You might wish to install the binarydist first, get that |
| 767 | working, and then at a later point in time have a go at |
| 768 | installing the sourcedist. BEFORE YOU REBOOT AFTER INSTALLING |
| 769 | THE BINARYDIS, you must preserve the commands that do the |
| 770 | extracting. They are kept in the single-user-mode .profile |
| 771 | file called /.profile. Proceed like this:- |
| 772 | |
| 773 | mv /.profile /.profile.install |
| 774 | ln /root/.profile /.profile |
| 775 | |
| 776 | When you are ready to install the sourcedist at some time |
| 777 | in the future, get into multi-user mode (ie the normal |
| 778 | means of running FreeBSD) and issue these commands:- |
| 779 | |
| 780 | cp /.profile.install /.profile |
| 781 | shutdown now |
| 782 | |
| 783 | This will cause the system to go into single-user mode, and |
| 784 | the install profile will be active (ie you will find the |
| 785 | commands load_fd, extract etc available to you again). |
| 786 | |
| 787 | |
| 788 | Configuring Your System: |
| 789 | ----------- ---- ------ |
| 790 | |
| 791 | Once you have finished extracting all of the distribution sets that you |
| 792 | want on your hard drive and are back at the "#" prompt, you are ready |
| 793 | to configure your system. |
| 794 | |
| 795 | The configuration utility expects that you have installed the base |
| 796 | system. If you have not, you will not be able to run it successfully |
| 797 | (nor will you have a functional system regardless of configuration). |
| 798 | |
| 799 | To configure the newly installed operating system, run the command |
| 800 | "configure". |
| 801 | |
| 802 | Configure will ask for the machine's hostname, domain name, and other |
| 803 | network configuration information. |
| 804 | |
| 805 | Once you have supplied configure all that it requests, your machine |
| 806 | will be configured well enough that when you reboot it it will be a |
| 807 | completely functional FreeBSD system. It is not completely configured, |
| 808 | however; you should adjust the /etc/sendmail.cf file as necessary to |
| 809 | suit your site and/or disable sendmail in /etc/rc and you should look |
| 810 | in /etc/netstart to make sure the flags are defined correctly for your |
| 811 | site. You might wish to set up several other tcp/ip files, such as |
| 812 | |
| 813 | /etc/resolv.conf |
| 814 | /etc/networks |
| 815 | |
| 816 | Once you are done with configuration, reboot with the "reboot" command. |
| 817 | |
| 818 | When it boots off of the hard drive, you will have a complete FreeBSD |
| 819 | system! CONGRATULATIONS! (You really deserve them!!!) |
| 820 | |
| 821 | |
| 822 | Administrivia: |
| 823 | ------------- |
| 824 | |
| 825 | Registration? What's that? |
| 826 | |
| 827 | If you've got something to say, do so! We'd like your input. |
| 828 | |
| 829 | Please send random comments to: |
| 830 | |
| 831 | FreeBSD-comments@freefall.cdrom.com |
| 832 | |
| 833 | Please send bug reports, and that sort of material to: |
| 834 | |
| 835 | FreeBSD-bugs@freefall.cdrom.com |
| 836 | |
| 837 | If you'd like to help with this effort, and have an idea as to how |
| 838 | you could be useful, send mail to: |
| 839 | |
| 840 | FreeBSD-hackers@freefall.cdrom.com |
| 841 | |
| 842 | THANKS FOR USING THIS; that's what makes it all worthwhile. |
| 843 | |
| 844 | [a favor: Please avoid mailing huge documents or files to these mailing lists, |
| 845 | as they will end up in our personal mail spools. We will be |
| 846 | happy to make other arrangements] |
| 847 | |
| 848 | This is $Id$ |