Installing &os; This section documents the process of installing a new distribution of &os;. These instructions pay particular emphasis to the process of obtaining the &os; &release.current; distribution and to beginning the installation procedure. The Installing FreeBSD chapter of the FreeBSD Handbook provides more in-depth information about the installation program itself, including a guided walkthrough with screenshots. If you are upgrading from a previous release of &os;, please see for instructions on upgrading. Getting Started Probably the most important pre-installation step that can be taken is that of reading the various instruction documents provided with &os;. A roadmap of documents pertaining to this release of &os; can be found in README.TXT, which can usually be found in the same location as this file; most of these documents, such as the release notes and the hardware compatibility list, are also accessible in the Documentation menu of the installer. Note that on-line versions of the &os; FAQ and Handbook are also available from the FreeBSD Project Web site, if you have an Internet connection. This collection of documents may seem daunting, but the time spent reading them will likely be saved many times over. Being familiar with what resources are available can also be helpful in the event of problems during installation. The best laid plans sometimes go awry, so if you run into trouble take a look at , which contains valuable troubleshooting information. You should also read an updated copy of ERRATA.TXT before installing, since this will alert you to any problems which have reported in the interim for your particular release. While &os; does its best to safeguard against accidental loss of data, it's still more than possible to wipe out your entire disk with this installation if you make a mistake. Please do not proceed to the final &os; installation menu unless you've adequately backed up any important data first. Hardware Requirements &os; for the &arch.print; requires a 386 or better processor to run (sorry, there is no support for 286 processors) and at least 5 megs of RAM to install and 4 megs of RAM to run. You will need at least 100MB of free hard drive space for the most minimal installation. See below for ways of shrinking existing DOS partitions in order to install &os;. &os; for the &arch.print; supports the platforms described in HARDWARE.TXT. You will need a dedicated disk for &os;/alpha. It is not possible to share a disk with another operating system at this time. This disk will need to be attached to a SCSI controller which is supported by the SRM firmware or an IDE disk assuming the SRM in your machine supports booting from IDE disks. Your root filesystem MUST be the first partition (partition a) on the disk to be bootable. You will need the SRM console firmware for your platform. In some cases, it is possible to switch between AlphaBIOS (or ARC) firmware and SRM. In others it will be necessary to download new firmware from the vendor's Web site. &os; for the &arch.print; supports the platforms described in HARDWARE.TXT. You will need a dedicated disk for &os;/sparc64. It is not possible to share a disk with another operating system at this time. If you are not familiar with configuring hardware for &os;, you should be sure to read the HARDWARE.TXT file; it contains important information on what hardware is supported by &os;. Floppy Disk Image Instructions Depending on how you choose to install &os;, you may need to create a set of floppy disks (usually two) to begin the installation process. This section briefly describes how to create these disks, either from a CDROM installation or from the Internet. Note that in the common case of installing &os; from CDROM, on a machine that supports bootable CDROMs, the steps outlined in this section will not be needed and can be skipped. For most CDROM or network installations, all you need to copy onto actual floppies from the floppies/ directory are the kern.flp and mfsroot.flp images (for 1.44MB floppies). Depending on your hardware, you may also need to make the third drivers.flp image to provide necessary device drivers. For a normal CDROM or network installation, all you need to copy onto actual floppies from the floppies/ directory are the kern.flp and mfsroot.flp images (for 1.44MB floppies) or kern-small.flp and mfsroot-small.flp images (for 1.2MB floppies). Getting these images over the network is easy. Simply fetch the release/floppies/kern.flp, release/floppies/mfsroot.flp, and release/floppies/drivers.flp files from or one of the many mirrors listed at FTP Sites section of the Handbook, or on the Web pages. Get two blank, freshly formatted floppies and image copy kern.flp onto one and mfsroot.flp onto the other. These images are not DOS files. You cannot simply copy them to a DOS or UFS floppy as regular files, you need to image copy them to the floppy with fdimage.exe under DOS (see the tools directory on your CDROM or &os; FTP mirror) or the &man.dd.1; command in UNIX. Get two blank, freshly formatted floppies and image copy kern.flp onto one and mfsroot.flp onto the other. These images are not DOS files. You cannot simply copy them to a DOS or UFS floppy as regular files, you need to image copy them to the floppy with rawrite.exe under DOS (see the tools directory on your CDROM or &os; FTP mirror) or the &man.dd.1; command in UNIX. For example, to create the kernel floppy image from DOS, you'd do something like this: C> fdimage kern.flp a: A> rawrite Assuming that you'd copied fdimage.exe and kern.flp into a directory somewhere. You would do the same for mfsroot.flp, of course. Assuming that you'd copied rawrite.exe and kern.flp into a directory somewhere. You would do the same for mfsroot.flp, of course. If you're creating the boot floppy from a UNIX machine, you may find that: &prompt.root; dd if=floppies/kern.flp of=/dev/rfd0 &prompt.root; dd if=floppies/kern.flp of=/dev/rfd0.1440 or &prompt.root; dd if=floppies/kern.flp of=/dev/floppy &prompt.root; dd if=floppies/kern-small.flp of=/dev/rfd0.1200 work well, depending on your hardware and operating system environment (different versions of UNIX have different names for the floppy drive). If you're on an alpha machine that can network-boot its floppy images or you have a 2.88MB or LS-120 floppy capable of taking a 2.88MB image on an x86 machine, you may wish to use the single (but twice as large) boot.flp image. It contains the contents of kern.flp and mfsroot.flp on a single floppy. This file should also be used as the boot file for those mastering El Torito bootable CD images. See the &man.mkisofs.8; command for more information. Installing &os; from CDROM or the Internet The easiest type of installation is from CDROM. If you have a supported CDROM drive and a &os; installation CDROM, there are 2 ways of starting the installation from it: If your system supports bootable CDROM media (usually an option which can be selectively enabled in the controller's setup menu or in the PC BIOS for some systems) and you have it enabled, &os; supports the El Torito bootable CD standard. Simply put the installation CD in your CDROM drive and boot the system to begin installation. Build a set of &os; boot floppies from the floppies/ directory in every &os; distribution. Either simply use the makeflp.bat script from DOS or read for more information on creating the bootable floppies under different operating systems. Then you simply boot from the first floppy and you should soon be in the &os; installation. The easiest type of installation is from CDROM. If you have a supported CDROM drive and a &os; installation CDROM, there is a next way of starting the installation from it: Build a set of &os; boot floppies from the floppies/ directory in every &os; distribution. Read for more information on creating the bootable floppies under different operating systems. Then you simply boot from the first floppy and you should soon be in the &os; installation. If you don't have a CDROM (or your computer does not support booting from CDROM) and would like to simply install over the net using PPP, SLIP or a dedicated connection. You should start the installation by building a set of &os; boot floppies from the files floppies/kern.flp and floppies/mfsroot.flp using the instructions found in . Restart your computer using the kern.flp disk; when prompted, insert the mfsroot.flp disk. Then, please go to for additional tips on installing via FTP or NFS. If you don't have a CDROM and would like to simply install over the net using PPP, SLIP or a dedicated connection. You should start the installation by building a set of &os; boot floppies from the files floppies/kern.flp and floppies/mfsroot.flp using the instructions found in . Restart your computer using the kern.flp disk; when prompted, insert the mfsroot.flp disk. Then, please go to for additional tips on installing via FTP or NFS. The easiest type of installation is from CDROM. If you have a supported CDROM drive and a &os; installation CDROM, you can boot &os; directly from the CDROM. Insert the CDROM into the drive and type the following command to start the installation (substituting the name of the appropriate CDROM drive if necessary): >>>boot dka0 Alternatively you can boot the installation from floppy disk. You should start the installation by building a set of &os; boot floppies from the files floppies/kern.flp and floppies/mfsroot.flp using the instructions found in . From the SRM console prompt (>>>), just insert the kern.flp floppy and type the following command to start the installation: >>>boot dva0 Insert the mfsroot.flp floppy when prompted and you will end up at the first screen of the install program. Most &arch; systems are set up to boot automatically from disk. To install &os;, you need to boot over the network or from a CDROM, which requires you to break into the PROM (OpenFirmware). To do this, reboot the system, and wait until the boot message appears. It depends on the model, but should look about like: Sun Blade 100 (UltraSPARC-IIe), Keyboard Present Copyright 1998-2001 Sun Microsystems, Inc. All rights reserved. OpenBoot 4.2, 128 MB memory installed, Serial #51090132. Ethernet address 0:3:ba:b:92:d4, Host ID: 830b92d4. If your system proceeds to boot from disk at this point, you need to press L1A or StopA on the keyboard, or send a BREAK over the serial console (using for example ~# in &man.tip.1; or &man.cu.1;) to get to the PROM prompt. It looks like this: ok ok {0} This is the prompt used on systems with just one CPU. This is the prompt used on SMP systems, the digit indicates the number of the active CPU. At this point, place the CDROM into your drive, and from the PROM prompt, type boot cdrom. Detail on various installation types Once you've gotten yourself to the initial installation screen somehow, you should be able to follow the various menu prompts and go from there. If you've never used the &os; installation before, you are also encouraged to read some of the documentation in the Documentation submenu as well as the general Usage instructions on the first menu. If you get stuck at a screen, press the F1 key for online documentation relevant to that specific section. If you've never installed &os; before, or even if you have, the Standard installation mode is the most recommended since it makes sure that you'll visit all the various important checklist items along the way. If you're much more comfortable with the &os; installation process and know exactly what you want to do, use the Express or Custom installation options. If you're upgrading an existing system, use the Upgrade option. The &os; installer supports the direct use of floppy, DOS, tape, CDROM, FTP, NFS and UFS partitions as installation media; further tips on installing from each type of media are listed below. Once the install procedure has finished, you will be able to start &os;/&arch; by typing something like this to the SRM prompt: >>>boot dkc0 This instructs the firmware to boot the specified disk. To find the SRM names of disks in your machine, use the show device command: >>>show device dka0.0.0.4.0 DKA0 TOSHIBA CD-ROM XM-57 3476 dkc0.0.0.1009.0 DKC0 RZ1BB-BS 0658 dkc100.1.0.1009.0 DKC100 SEAGATE ST34501W 0015 dva0.0.0.0.1 DVA0 ewa0.0.0.3.0 EWA0 00-00-F8-75-6D-01 pkc0.7.0.1009.0 PKC0 SCSI Bus ID 7 5.27 pqa0.0.0.4.0 PQA0 PCI EIDE pqb0.0.1.4.0 PQB0 PCI EIDE This example is from a Digital Personal Workstation 433au and shows three disks attached to the machine. The first is a CDROM called dka0 and the other two are disks and are called dkc0 and dkc100 respectively. You can specify which kernel file to load and what boot options to use with the and options, for example: >>> boot -file kernel.old -flags s To make &os;/&arch; boot automatically, use these commands: >>> set boot_osflags a >>> set bootdef_dev dkc0 >>> set auto_action BOOT Installing from a Network CDROM If you simply wish to install from a local CDROM drive then see . If you don't have a CDROM drive on your system and wish to use a &os; distribution CD in the CDROM drive of another system to which you have network connectivity, there are also several ways of going about it: If you would be able to FTP install &os; directly from the CDROM drive in some &os; machine, it's quite easy: You simply add the following line to the password file (using the &man.vipw.8; command): ftp:*:99:99::0:0:FTP:/cdrom:/sbin/nologin On the machine on which you are running the install, go to the Options menu and set Release Name to any. You may then choose a Media type of FTP and type in ftp://machine after picking URL in the ftp sites menu. This may allow anyone on the local network (or Internet) to make anonymous FTP connections to this machine, which may not be desirable. If you would rather use NFS to export the CDROM directly to the machine(s) you'll be installing from, you need to first add an entry to the /etc/exports file (on the machine with the CDROM drive). The example below allows the machine ziggy.foo.com to mount the CDROM directly via NFS during installation: /cdrom -ro ziggy.foo.com The machine with the CDROM must also be configured as an NFS server, of course, and if you're not sure how to do that then an NFS installation is probably not the best choice for you unless you're willing to read up on &man.rc.conf.5; and configure things appropriately. Assuming that this part goes smoothly, you should be able to enter: cdrom-host:/cdrom as the path for an NFS installation when the target machine is installed, e.g. wiggy:/cdrom. Installing from Floppies If you must install from floppy disks, either due to unsupported hardware or just because you enjoy doing things the hard way, you must first prepare some floppies for the install. First, make your boot floppies as described in . Second, peruse and pay special attention to the Distribution Format section since it describes which files you're going to need to put onto floppy and which you can safely skip. Next you will need, at minimum, as many 1.44MB floppies as it takes to hold all files in the bin (binary distribution) directory. If you're preparing these floppies under DOS, then these floppies must be formatted using the MS-DOS FORMAT command. If you're using Windows, use the Windows File Manager format command. Frequently, floppy disks come factory preformatted. While convenient, many problems reported by users in the past have resulted from the use of improperly formatted media. Re-format them yourself, just to make sure. If you're creating the floppies from another &os; machine, a format is still not a bad idea though you don't need to put a DOS filesystem on each floppy. You can use the &man.disklabel.8; and &man.newfs.8; commands to put a UFS filesystem on a floppy, as the following sequence of commands illustrates: &prompt.root; fdformat -f 1440 fd0.1440 &prompt.root; disklabel -w -r fd0.1440 floppy3 &prompt.root; newfs -t 2 -u 18 -l 1 -i 65536 /dev/fd0 After you've formatted the floppies for DOS or UFS, you'll need to copy the files onto them. The distribution files are split into chunks conveniently sized so that 5 of them will fit on a conventional 1.44MB floppy. Go through all your floppies, packing as many files as will fit on each one, until you've got all the distributions you want packed up in this fashion. Each distribution should go into its own subdirectory on the floppy, e.g.: a:\bin\bin.inf, a:\bin\bin.aa, a:\bin\bin.ab, ... The bin.inf file also needs to go on the first floppy of the bin set since it is read by the installation program in order to figure out how many additional pieces to look for when fetching and concatenating the distribution. When putting distributions onto floppies, the distname.inf file must occupy the first floppy of each distribution set. This is also covered in README.TXT. Once you come to the Media screen of the install, select Floppy and you'll be prompted for the rest. Installing from a DOS partition To prepare for installation from an MS-DOS partition you should simply copy the files from the distribution into a directory called FREEBSD on the Primary DOS partition (C:). For example, to do a minimal installation of &os; from DOS using files copied from the CDROM, you might do something like this: To prepare for installation from an MS-DOS partition you should simply copy the files from the distribution into a directory called FREEBSD on the Primary DOS partition (A:). For example, to do a minimal installation of &os; from DOS using files copied from the CDROM, you might do something like this: C:\> MD C:\FREEBSD C:\> XCOPY /S E:\BIN C:\FREEBSD\BIN A:\> MD A:\FREEBSD A:\> XCOPY /S E:\BIN A:\FREEBSD\BIN Assuming that E: was where your CD was mounted. For as many distributions as you wish to install from DOS (and you have free space for), install each one in a directory under C:\FREEBSD - the BIN dist is only the minimal requirement. For as many distributions as you wish to install from DOS (and you have free space for), install each one in a directory under A:\FREEBSD - the BIN dist is only the minimal requirement. Once you've copied the directories, you can simply launch the installation from floppies as normal and select DOS as your media type when the time comes. Installing from QIC/SCSI Tape When installing from tape, the installation program expects the files to be simply tar'ed onto it, so after fetching all of the files for the distributions you're interested in, simply use &man.tar.1; to get them onto the tape with a command something like this: &prompt.root; cd /where/you/have/your/dists &prompt.root; tar cvf /dev/rsa0 dist1 .. dist2 When you go to do the installation, you should also make sure that you leave enough room in some temporary directory (which you'll be allowed to choose) to accommodate the full contents of the tape you've created. Due to the non-random access nature of tapes, this method of installation requires quite a bit of temporary storage. You should expect to require as much temporary storage as you have stuff written on tape. When going to do the installation, the tape must be in the drive before booting from the boot floppies. The installation probe may otherwise fail to find it. Now create a boot floppy as described in and proceed with the installation. Installing over a Network using FTP or NFS After making the boot floppies as described in the first section, you can load the rest of the installation over a network using one of 3 types of connections: serial port, parallel port, or Ethernet. Serial Port SLIP support is rather primitive, and is limited primarily to hard-wired links, such as a serial cable running between two computers. The link must be hard-wired because the SLIP installation doesn't currently offer a dialing capability. If you need to dial out with a modem or otherwise dialog with the link before connecting to it, then I recommend that the PPP utility be used instead. If you're using PPP, make sure that you have your Internet Service Provider's IP address and DNS information handy as you'll need to know it fairly early in the installation process. You may also need to know your own IP address, though PPP supports dynamic address negotiation and may be able to pick up this information directly from your ISP if they support it. You will also need to know how to use the various AT commands for dialing out with your particular brand of modem as the PPP dialer provides only a very simple terminal emulator. Parallel Port If a hard-wired connection to another &os; or Linux machine is available, you might also consider installing over a laplink style parallel port cable. The data rate over the parallel port is much higher than what is typically possible over a serial line (up to 50k/sec), thus resulting in a quicker installation. It's not typically necessary to use real IP addresses when using a point-to-point parallel cable in this way and you can generally just use RFC 1918 style addresses for the ends of the link (e.g. 10.0.0.1, 10.0.0.2, etc). If you use a Linux machine rather than a &os; machine as your PLIP peer, you will also have to specify in the TCP/IP setup screen's extra options for ifconfig field in order to be compatible with Linux's slightly different PLIP protocol. Ethernet &os; supports many common Ethernet cards; a table of supported cards is provided as part of the &os; Hardware Notes (see HARDWARE.TXT in the Documentation menu on the boot floppy or the top level directory of the CDROM). If you are using one of the supported PCMCIA Ethernet cards, also be sure that it's plugged in before the laptop is powered on. &os; does not, unfortunately, currently support hot insertion of PCMCIA cards during installation. You will also need to know your IP address on the network, the value for your subnet and the name of your machine. Your system administrator can tell you which values are appropriate to your particular network setup. If you will be referring to other hosts by name rather than IP address, you'll also need a name server and possibly the address of a gateway (if you're using PPP, it's your provider's IP address) to use in talking to it. If you want to install by FTP via an HTTP proxy (see below), you will also need the proxy's address. If you do not know the answers to these questions then you should really probably talk to your system administrator first before trying this type of installation. Using a randomly chosen IP address or netmask on a live network is almost guaranteed not to work, and will probably result in a lecture from said system administrator. Once you have a network connection of some sort working, the installation can continue over NFS or FTP. NFS installation tips NFS installation is fairly straight-forward: Simply copy the &os; distribution files you want onto a server somewhere and then point the NFS media selection at it. If this server supports only privileged port access (this is generally the default for Sun and Linux workstations), you will need to set this option in the Options menu before installation can proceed. If you have a poor quality Ethernet card which suffers from very slow transfer rates, you may also wish to toggle the appropriate Options flag. In order for NFS installation to work, the server must also support subdir mounts, e.g. if your &os; distribution directory lives on wiggy:/usr/archive/stuff/FreeBSD, then wiggy will have to allow the direct mounting of /usr/archive/stuff/FreeBSD, not just /usr or /usr/archive/stuff. In &os;'s /etc/exports file this is controlled by the option. Other NFS servers may have different conventions. If you are getting Permission Denied messages from the server then it's likely that you don't have this properly enabled. FTP Installation tips FTP installation may be done from any mirror site containing a reasonably up-to-date version of &os;. A full menu of reasonable choices for almost any location in the world is provided in the FTP site menu during installation. If you are installing from some other FTP site not listed in this menu, or you are having troubles getting your name server configured properly, you can also specify your own URL by selecting the URL choice in that menu. A URL can contain a hostname or an IP address, so something like the following would work in the absence of a name server: ftp://216.66.64.162/pub/FreeBSD/releases/&arch;/4.2-RELEASE There are three FTP installation modes you can use: FTP: This method uses the standard Active mode for transfers, in which the server initiates a connection to the client. This will not work through most firewalls but will often work best with older FTP servers that do not support passive mode. If your connection hangs with passive mode, try this one. FTP Passive: This sets the FTP "Passive" mode which prevents the server from opening connections to the client. This option is best for users to pass through firewalls that do not allow incoming connections on random port addresses. FTP via an HTTP proxy: This option instructs &os; to use HTTP to connect to a proxy for all FTP operations. The proxy will translate the requests and send them to the FTP server. This allows the user to pass through firewalls that do not allow FTP at all, but offer an HTTP proxy. You must specify the hostname of the proxy in addition to the FTP server. In the rare case that you have an FTP proxy that does not go through HTTP, you can specify the URL as something like: ftp://foo.bar.com:port/pub/FreeBSD In the URL above, port is the port number of the proxy FTP server. Tips for Serial Console Users If you'd like to install &os; on a machine using just a serial port (e.g. you don't have or wish to use a VGA card), please follow these steps: Connect some sort of ANSI (vt100) compatible terminal or terminal emulation program to the COM1 port of the PC you are installing &os; onto. Unplug the keyboard (yes, that's correct!) and then try to boot from floppy or the installation CDROM, depending on the type of installation media you have, with the keyboard unplugged. If you don't get any output on your serial console, plug the keyboard in again and wait for some beeps. If you are booting from the CDROM, proceed to as soon as you hear the beep. For a floppy boot, the first beep means to remove the kern.flp floppy and insert the mfsroot.flp floppy, after which you should press Enter and wait for another beep. Hit the space bar, then enter boot -h and you should now definitely be seeing everything on the serial port. If that still doesn't work, check your serial cabling as well as the settings on your terminal emulation program or actual terminal device. It should be set for 9600 baud, 8 bits, no parity. Question and Answer Section for &arch.print; Architecture Users Help! I have no space! Do I need to delete everything first? If your machine is already running DOS and has little or no free space available for &os;'s installation, all is not lost! You may find the FIPS utility, provided in the tools/ subdirectory on the &os; CDROM or on the various &os; ftp sites, to be quite useful. FIPS allows you to split an existing DOS partition into two pieces, preserving the original partition and allowing you to install onto the second free piece. You first defrag your DOS partition, using the DOS 6.xx DEFRAG utility or the Norton Disk Tools, then run FIPS. It will prompt you for the rest of the information it needs. Afterwards, you can reboot and install &os; on the new partition. Also note that FIPS will create the second partition as a clone of the first, so you'll actually see that you now have two DOS Primary partitions where you formerly had one. Don't be alarmed! You can simply delete the extra DOS Primary partition (making sure it's the right one by examining its size). FIPS does NOT currently work with NTFS style partitions. To split up such a partition, you will need a commercial product such as Partition Magic. Sorry, but this is just the breaks if you've got a Windows partition hogging your whole disk and you don't want to reinstall from scratch. Can I use compressed DOS filesystems from &os;? No. If you are using a utility such as Stacker(tm) or DoubleSpace(tm), &os; will only be able to use whatever portion of the filesystem you leave uncompressed. The rest of the filesystem will show up as one large file (the stacked/dblspaced file!). Do not remove that file as you will probably regret it greatly! It is probably better to create another uncompressed DOS extended partition and use this for communications between DOS and &os; if such is your desire. Can I mount my DOS extended partitions? Yes. DOS extended partitions are mapped in at the end of the other slices in &os;, e.g. your D: drive might be /dev/da0s5, your E: drive /dev/da0s6, and so on. This example assumes, of course, that your extended partition is on SCSI drive 0. For IDE drives, substitute ad for da appropriately. You otherwise mount extended partitions exactly like you would mount any other DOS drive, e.g.: &prompt.root; mount -t msdos /dev/da0s5 /dos_d Can I run DOS binaries under &os;? Ongoing work with BSDI's &man.doscmd.1; utility will suffice in many cases, though it still has some rough edges. If you're interested in working on this, please send mail to the &a.emulation; and indicate that you're interested in joining this ongoing effort! The emulators/pcemu port/package in the &os; Ports Collection which emulates an 8088 and enough BIOS services to run DOS text mode applications. It requires the X Window System (XFree86) to operate. Can I boot from the ARC or Alpha BIOS Console? No. &os;, like Compaq Tru64 and VMS, will only boot from the SRM console. Help! I have no space! Do I need to delete everything first? Unfortunately, yes. Can I mount my Compaq Tru64 or VMS extended partitions? No, not at this time. What about support for Compaq Tru64 (OSF/1) binaries? &os; can run Tru64 applications very well using the emulators/osf1_base port/package. What about support for Linux binaries? &os; can run AlphaLinux binaries with the assistance of the emulators/linux_base port/package. What about support for NT Alpha binaries? &os; is not able to run NT applications natively, although it has the ability to mount NT partitions.