path: root/en_US.ISO8859-1/books/handbook/mac
diff options
authorEitan Adler <eadler@FreeBSD.org>2012-02-15 18:14:18 +0000
committerEitan Adler <eadler@FreeBSD.org>2012-02-15 18:14:18 +0000
commit4740eff281d6a29d30d4600d12bfd6c4f11c9f79 (patch)
tree986c6735ad4f9db9419b828fe82023df50a16dc5 /en_US.ISO8859-1/books/handbook/mac
parente8247723589010d038f44746a396839ffa573860 (diff)
The FreeBSD Documentation Project $FreeBSD: doc/en_US.ISO8859-1/books/handbook/install/chapter.sgml,v 1.439 2012/02/06 22:37:15 wblock Exp $ --> <chapter id="install"> <chapterinfo> <authorgroup> <author> <firstname>Jim</firstname> <surname>Mock</surname> <contrib>Restructured, reorganized, and parts rewritten by </contrib> </author> </authorgroup> <authorgroup> <author> <firstname>Randy</firstname> <surname>Pratt</surname> <contrib>The sysinstall walkthrough, screenshots, and general copy by </contrib> </author> </authorgroup> <!-- January 2000 --> </chapterinfo> <title>Installing &os;&nbsp;8.<replaceable>x</replaceable> and Earlier</title> <sect1 id="install-synopsis"> <title>Synopsis</title> <indexterm><primary>installation</primary></indexterm> <para>FreeBSD is provided with a text-based, easy to use installation program. &os; 9.0-RELEASE and later use the installation program known as <application>bsdinstall</application>, with releases prior to 9.0-RELEASE using <application>sysinstall</application> for installation. This chapter describes the use of <application>sysinstall</application> to install &os;. The use of <application>bsdinstall</application> is covered in <xref linkend="bsdinstall">.</para> <para>After reading this chapter, you will know:</para> <itemizedlist> <listitem> <para>How to create the FreeBSD installation disks.</para> </listitem> <listitem> <para>How FreeBSD refers to, and subdivides, your hard disks.</para> </listitem> <listitem> <para>How to start <application>sysinstall</application>.</para> </listitem> <listitem> <para>The questions <application>sysinstall</application> will ask you, what they mean, and how to answer them.</para> </listitem> </itemizedlist> <para>Before reading this chapter, you should:</para> <itemizedlist> <listitem> <para>Read the supported hardware list that shipped with the version of FreeBSD you are installing, and verify that your hardware is supported.</para> </listitem> </itemizedlist> <note> <para>In general, these installation instructions are written for &i386; (<quote>PC compatible</quote>) architecture computers. Where applicable, instructions specific to other platforms will be listed. Although this guide is kept as up to date as possible, you may find minor differences between the installer and what is shown here. It is suggested that you use this chapter as a general guide rather than a literal installation manual.</para> </note> </sect1> <sect1 id="install-hardware"> <title>Hardware Requirements</title> <sect2 id="install-hardware-minimal"> <title>Minimal Configuration</title> <para>The minimal configuration to install &os; varies with the &os; version and the hardware architecture.</para> <para>A summary of this information is given in the following sections. Depending on the method you choose to install &os;, you may also need a floppy drive, a supported CDROM drive, and in some case a network adapter. This will be covered by the <xref linkend="install-boot-media">.</para> <sect3> <title>&os;/&arch.i386; and &os;/&arch.pc98;</title> <para>Both &os;/&arch.i386; and &os;/&arch.pc98; require a 486 or better processor and at least 24&nbsp;MB of RAM. You will need at least 150&nbsp;MB of free hard drive space for the most minimal installation.</para> <note> <para>In case of old configurations, most of time, getting more RAM and more hard drive space is more important than getting a faster processor.</para> </note> </sect3> <sect3> <title>&os;/&arch.amd64;</title> <para>There are two classes of processors capable of running &os;/&arch.amd64;. The first are AMD64 processors, including the &amd.athlon;64, &amd.athlon;64-FX, &amd.opteron; or better processors.</para> <para>The second class of processors that can use &os;/&arch.amd64; includes those using the &intel; EM64T architecture. Examples of these processors include the &intel;&nbsp;&core;&nbsp;2 Duo, Quad, Extreme processor families, and the &intel;&nbsp;&xeon; 3000, 5000, and 7000 sequences of processors.</para> <para>If you have a machine based on an nVidia nForce3 Pro-150, you <emphasis>must</emphasis> use the BIOS setup to disable the IO APIC. If you do not have an option to do this, you will likely have to disable ACPI instead. There are bugs in the Pro-150 chipset that we have not found a workaround for yet.</para> </sect3> <sect3> <title>&os;/&arch.sparc64;</title> <para>To install &os;/&arch.sparc64;, you will need a supported platform (see <xref linkend="install-hardware-supported">).</para> <para>You will need a dedicated disk for &os;/&arch.sparc64;. It is not possible to share a disk with another operating system at this time.</para> </sect3> </sect2> <sect2 id="install-hardware-supported"> <title>Supported Hardware</title> <para>A list of supported hardware is provided with each &os; release in the &os; Hardware Notes. This document can usually be found in a file named <filename>HARDWARE.TXT</filename>, in the top-level directory of a CDROM or FTP distribution or in <application>sysinstall</application>'s documentation menu. It lists, for a given architecture, what hardware devices are known to be supported by each release of &os;. Copies of the supported hardware list for various releases and architectures can also be found on the <ulink url="http://www.FreeBSD.org/releases/index.html">Release Information</ulink> page of the &os; Web site.</para> </sect2> </sect1> <sect1 id="install-pre"> <title>Pre-installation Tasks</title> <sect2 id="install-inventory"> <title>Inventory Your Computer</title> <para>Before installing FreeBSD you should attempt to inventory the components in your computer. The FreeBSD installation routines will show you the components (hard disks, network cards, CDROM drives, and so forth) with their model number and manufacturer. FreeBSD will also attempt to determine the correct configuration for these devices, which includes information about IRQ and IO port usage. Due to the vagaries of PC hardware this process is not always completely successful, and you may need to correct FreeBSD's determination of your configuration.</para> <para>If you already have another operating system installed, such as &windows; or Linux, it is a good idea to use the facilities provided by those operating systems to see how your hardware is already configured. If you are not sure what settings an expansion card is using, you may find it printed on the card itself. Popular IRQ numbers are 3, 5, and 7, and IO port addresses are normally written as hexadecimal numbers, such as 0x330.</para> <para>We recommend you print or write down this information before installing FreeBSD. It may help to use a table, like this:</para> <table pgwide="1" frame="none"> <title>Sample Device Inventory</title> <tgroup cols="4"> <colspec colwidth="2*"> <colspec colwidth="1*"> <colspec colwidth="1*"> <colspec colwidth="4*"> <thead> <row> <entry>Device Name</entry> <entry>IRQ</entry> <entry>IO port(s)</entry> <entry>Notes</entry> </row> </thead> <tbody> <row> <entry>First hard disk</entry> <entry>N/A</entry> <entry>N/A</entry> <entry>40&nbsp;GB, made by Seagate, first IDE master</entry> </row> <row> <entry>CDROM</entry> <entry>N/A</entry> <entry>N/A</entry> <entry>First IDE slave</entry> </row> <row> <entry>Second hard disk</entry> <entry>N/A</entry> <entry>N/A</entry> <entry>20&nbsp;GB, made by IBM, second IDE master</entry> </row> <row> <entry>First IDE controller</entry> <entry>14</entry> <entry>0x1f0</entry> <entry></entry> </row> <row> <entry>Network card</entry> <entry>N/A</entry> <entry>N/A</entry> <entry>&intel; 10/100</entry> </row> <row> <entry>Modem</entry> <entry>N/A</entry> <entry>N/A</entry> <entry>&tm.3com; 56K faxmodem, on COM1</entry> </row> <row> <entry>&hellip;</entry> </row> </tbody> </tgroup> </table> <para>Once the inventory of the components in your computer is done, you have to check if they match the hardware requirements of the &os; release you want to install.</para> </sect2> <sect2> <title>Backup Your Data</title> <para>If the computer you will be installing FreeBSD on contains valuable data, then ensure you have it backed up, and that you have tested the backups before installing FreeBSD. The FreeBSD installation routine will prompt you before writing any data to your disk, but once that process has started it cannot be undone.</para> </sect2> <sect2 id="install-where"> <title>Decide Where to Install FreeBSD</title> <para>If you want FreeBSD to use your entire hard disk, then there is nothing more to concern yourself with at this point &mdash; you can skip this section.</para> <para>However, if you need FreeBSD to co-exist with other operating systems then you need to have a rough understanding of how data is laid out on the disk, and how this affects you.</para> <sect3 id="install-where-i386"> <title>Disk Layouts for &os;/&arch.i386;</title> <para>A PC disk can be divided into discrete chunks. These chunks are called <firstterm>partitions</firstterm>. Since &os; internally also has partitions, the naming can become confusing very quickly, therefore these disk chunks are referred to as disk slices or simply slices in &os; itself. For example, the FreeBSD utility <command>fdisk</command> which operates on the PC disk partitions, refers to slices instead of partitions. By design, the PC only supports four partitions per disk. These partitions are called <firstterm>primary partitions</firstterm>. To work around this limitation and allow more than four partitions, a new partition type was created, the <firstterm>extended partition</firstterm>. A disk may contain only one extended partition. Special partitions, called <firstterm>logical partitions</firstterm>, can be created inside this extended partition.</para> <para>Each partition has a <firstterm>partition ID</firstterm>, which is a number used to identify the type of data on the partition. FreeBSD partitions have the partition ID of <literal>165</literal>.</para> <para>In general, each operating system that you use will identify partitions in a particular way. For example, &ms-dos;, and its descendants, like &windows;, assign each primary and logical partition a <firstterm>drive letter</firstterm>, starting with <devicename>C:</devicename>.</para> <para>FreeBSD must be installed into a primary partition. FreeBSD can keep all its data, including any files that you create, on this one partition. However, if you have multiple disks, then you can create a FreeBSD partition on all, or some, of them. When you install FreeBSD, you must have one partition available. This might be a blank partition that you have prepared, or it might be an existing partition that contains data that you no longer care about.</para> <para>If you are already using all the partitions on all your disks, then you will have to free one of them for FreeBSD using the tools provided by the other operating systems you use (e.g., <command>fdisk</command> on &ms-dos; or &windows;).</para> <para>If you have a spare partition then you can use that. However, you may need to shrink one or more of your existing partitions first.</para> <para>A minimal installation of FreeBSD takes as little as 100&nbsp;MB of disk space. However, that is a <emphasis>very</emphasis> minimal install, leaving almost no space for your own files. A more realistic minimum is 250&nbsp;MB without a graphical environment, and 350&nbsp;MB or more if you want a graphical user interface. If you intend to install a lot of third-party software as well, then you will need more space.</para> <para>You can use a commercial tool such as <application>&partitionmagic;</application>, or a free tool such as <application>GParted</application>, to resize your partitions and make space for &os;. Both <application>&partitionmagic;</application> and <application>GParted</application> are known to work on <acronym>NTFS</acronym>. <application>GParted</application> is available on a number of Live CD Linux distributions, such as <ulink url="http://www.sysresccd.org/">SystemRescueCD</ulink>.</para> <para>Problems have been reported resizing &microsoft; Vista partitions. Having a Vista installation CDROM handy when attempting such an operation is recommended. As with all such disk maintenance tasks, a current set of backups is also strongly advised.</para> <warning> <para>Incorrect use of these tools can delete the data on your disk. Be sure that you have recent, working backups before using them.</para> </warning> <example> <title>Using an Existing Partition Unchanged</title> <para>Suppose that you have a computer with a single 4&nbsp;GB disk that already has a version of &windows; installed, and you have split the disk into two drive letters, <devicename>C:</devicename> and <devicename>D:</devicename>, each of which is 2&nbsp;GB in size. You have 1&nbsp;GB of data on <devicename>C:</devicename>, and 0.5&nbsp;GB of data on <devicename>D:</devicename>.</para> <para>This means that your disk has two partitions on it, one per drive letter. You can copy all your existing data from <devicename>D:</devicename> to <devicename>C:</devicename>, which will free up the second partition, ready for FreeBSD.</para> </example> <example> <title>Shrinking an Existing Partition</title> <para>Suppose that you have a computer with a single 4&nbsp;GB disk that already has a version of &windows; installed. When you installed &windows; you created one large partition, giving you a <devicename>C:</devicename> drive that is 4&nbsp;GB in size. You are currently using 1.5&nbsp;GB of space, and want FreeBSD to have 2&nbsp;GB of space.</para> <para>In order to install FreeBSD you will need to either:</para> <orderedlist> <listitem> <para>Backup your &windows; data, and then reinstall &windows;, asking for a 2&nbsp;GB partition at install time.</para> </listitem> <listitem> <para>Use one of the tools such as <application>&partitionmagic;</application>, described above, to shrink your &windows; partition.</para> </listitem> </orderedlist> </example> </sect3> </sect2> <sect2> <title>Collect Your Network Configuration Details</title> <para>If you intend to connect to a network as part of your FreeBSD installation (for example, if you will be installing from an FTP site or an NFS server), then you need to know your network configuration. You will be prompted for this information during the installation so that FreeBSD can connect to the network to complete the install.</para> <sect3> <title>Connecting to an Ethernet Network or Cable/DSL Modem</title> <para>If you connect to an Ethernet network, or you have an Internet connection using an Ethernet adapter via cable or DSL, then you will need the following information:</para> <orderedlist> <listitem> <para>IP address</para> </listitem> <listitem> <para>IP address of the default gateway</para> </listitem> <listitem> <para>Hostname</para> </listitem> <listitem> <para>DNS server IP addresses</para> </listitem> <listitem> <para>Subnet Mask</para> </listitem> </orderedlist> <para>If you do not know this information, then ask your system administrator or service provider. They may say that this information is assigned automatically, using <firstterm>DHCP</firstterm>. If so, make a note of this.</para> </sect3> <sect3> <title>Connecting Using a Modem</title> <para>If you dial up to an ISP using a regular modem then you can still install FreeBSD over the Internet, it will just take a very long time.</para> <para>You will need to know:</para> <orderedlist> <listitem> <para>The phone number to dial for your ISP</para> </listitem> <listitem> <para>The COM: port your modem is connected to</para> </listitem> <listitem> <para>The username and password for your ISP account</para> </listitem> </orderedlist> </sect3> </sect2> <sect2> <title>Check for FreeBSD Errata</title> <para>Although the FreeBSD project strives to ensure that each release of FreeBSD is as stable as possible, bugs do occasionally creep into the process. On very rare occasions those bugs affect the installation process. As these problems are discovered and fixed, they are noted in the <ulink url="http://www.FreeBSD.org/releases/&rel.current;R/errata.html">FreeBSD Errata</ulink>, which is found on the FreeBSD web site. You should check the errata before installing to make sure that there are no late-breaking problems which you should be aware of.</para> <para>Information about all the releases, including the errata for each release, can be found on the <ulink url="&url.base;/releases/index.html">release information</ulink> section of the <ulink url="&url.base;/index.html">FreeBSD web site</ulink>.</para> </sect2> <sect2> <title>Obtain the FreeBSD Installation Files</title> <para>The FreeBSD installation process can install FreeBSD from files located in any of the following places:</para> <itemizedlist> <title>Local Media</title> <listitem> <para>A CDROM or DVD</para> </listitem> <listitem> <para>A USB Memory Stick</para> </listitem> <listitem> <para>A &ms-dos; partition on the same computer</para> </listitem> <listitem> <para>A SCSI or QIC tape</para> </listitem> <listitem> <para>Floppy disks</para> </listitem> </itemizedlist> <itemizedlist> <title>Network</title> <listitem> <para>An FTP site, going through a firewall, or using an HTTP proxy, as necessary</para> </listitem> <listitem> <para>An NFS server</para> </listitem> <listitem> <para>A dedicated parallel or serial connection</para> </listitem> </itemizedlist> <para>If you have purchased FreeBSD on CD or DVD then you already have everything you need, and should proceed to the next section (<xref linkend="install-boot-media">).</para> <para>If you have not obtained the FreeBSD installation files you should skip ahead to <xref linkend="install-diff-media"> which explains how to prepare to install FreeBSD from any of the above. After reading that section, you should come back here, and read on to <xref linkend="install-boot-media">.</para> </sect2> <sect2 id="install-boot-media"> <title>Prepare the Boot Media</title> <para>The FreeBSD installation process is started by booting your computer into the FreeBSD installer&mdash;it is not a program you run within another operating system. Your computer normally boots using the operating system installed on your hard disk, but it can also be configured to use a <quote>bootable</quote> floppy disk. Most modern computers can also boot from a CDROM in the CDROM drive or from a USB disk.</para> <tip> <para>If you have FreeBSD on CDROM or DVD (either one you purchased or you prepared yourself), and your computer allows you to boot from the CDROM or DVD (typically a BIOS option called <quote>Boot Order</quote> or similar), then you can skip this section. The FreeBSD CDROM and DVD images are bootable and can be used to install FreeBSD without any other special preparation.</para> </tip> <para>To create a bootable memory stick, follow these steps:</para> <procedure> <step> <title>Acquire the Memory Stick Image</title> <para>Memory stick images for &os;&nbsp;8.<replaceable>X</replaceable> and earlier can be downloaded from the <filename class="directory">ISO-IMAGES/</filename> directory at <literal>ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/<replaceable>arch</replaceable>/ISO-IMAGES/<replaceable>version</replaceable>/&os;-<replaceable>version</replaceable>-RELEASE-<replaceable>arch</replaceable>-memstick.img</literal>. Replace <replaceable>arch</replaceable> and <replaceable>version</replaceable> with the architecture and the version number which you want to install, respectively. For example, the memory stick images for &os;/&arch.i386;&nbsp;&rel2.current;-RELEASE are available from <ulink url="ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/&arch.i386;/ISO-IMAGES/&rel2.current;/&os;-&rel2.current;-RELEASE-&arch.i386;-memstick.img"></ulink>.</para> <tip> <para>A different directory path is used for &os;&nbsp;9.0-RELEASE and later versions. Details of download and installation of &os;&nbsp;9.0-RELEASE and later is covered in <xref linkend="bsdinstall">.</para> </tip> <para>The memory stick image has a <filename>.img</filename> extension. The <filename class="directory">ISO-IMAGES/</filename> directory contains a number of different images, and the one you will need to use will depend on the version of &os; you are installing, and in some cases, the hardware you are installing to.</para> <important> <para>Before proceeding, <emphasis>back up</emphasis> the data you currently have on your USB stick, as this procedure will <emphasis>erase</emphasis> it.</para> </important> </step> <step> <title>Write the Image File to the Memory Stick</title> <procedure> <title>Using FreeBSD to Write the Image</title> <warning> <para>The example below lists <filename class="devicefile">/dev/da0</filename> as the target device where the image will be written. Be very careful that you have the correct device as the output target, or you may destroy your existing data.</para> </warning> <step> <title>Writing the Image with &man.dd.1;</title> <para>The <filename>.img</filename> file is <emphasis>not</emphasis> a regular file you copy to the memory stick. It is an image of the complete contents of the disk. This means that you <emphasis>cannot</emphasis> simply copy files from one disk to another. Instead, you must use &man.dd.1; to write the image directly to the disk:</para> <screen>&prompt.root; <userinput>dd if=&os;-&rel2.current;-RELEASE-&arch.i386;-memstick.img of=/dev/<replaceable>da0</replaceable> bs=64k</userinput></screen> <para>If an <computeroutput>Operation not permitted</computeroutput> error is displayed, make certain that the target device is not in use, mounted, or being automounted by some well-intentioned utility program. Then try again.</para> </step> </procedure> <procedure> <title>Using &windows; to Write the Image</title> <warning> <para>Make sure you use the correct drive letter as the output target, or you may overwrite and destroy existing data.</para> </warning> <step> <title>Obtaining <application>Image Writer for Windows</application></title> <para><application>Image Writer for Windows</application> is a free application that can correctly write an image file to a memory stick. Download it from <ulink url="https://launchpad.net/win32-image-writer/"></ulink> and extract it into a folder.</para> </step> <step> <title>Writing the Image with Image Writer</title> <para>Double-click the <application>Win32DiskImager</application> icon to start the program. Verify that the drive letter shown under <computeroutput>Device</computeroutput> is the drive with the memory stick. Click the folder icon and select the image to be written to the memory stick. Click <guibutton>Save</guibutton> to accept the image file name. Verify that everything is correct, and that no folders on the memory stick are open in other windows. Finally, click <guibutton>Write</guibutton> to write the image file to the drive.</para> </step> </procedure> </step> </procedure> <para>To create boot floppy images, follow these steps:</para> <procedure> <step> <title>Acquire the Boot Floppy Images</title> <important> <para>Please note, as of &os;&nbsp;8.<replaceable>X</replaceable>, floppy disk images are no longer available. Please see above for instructions on how to install &os; using a USB memory stick or just use a CDROM or a DVD.</para> </important> <para>The boot disks are available on your installation media in the <filename>floppies/</filename> directory, and can also be downloaded from the floppies directory, <literal>ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/<replaceable>arch</replaceable>/<replaceable>version</replaceable>-RELEASE/floppies/</literal>. Replace <replaceable>arch</replaceable> and <replaceable>version</replaceable> with the architecture and the version number which you want to install, respectively. For example, the boot floppy images for &os;/&arch.i386;&nbsp;&rel2.current;-RELEASE are available from <ulink url="ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/&rel2.current;-RELEASE/floppies/"></ulink>.</para> <para>The floppy images have a <filename>.flp</filename> extension. The <filename>floppies/</filename> directory contains a number of different images, and the ones you will need to use depends on the version of FreeBSD you are installing, and in some cases, the hardware you are installing to. In most cases you will need four floppies, <filename>boot.flp</filename>, <filename>kern1.flp</filename>, <filename>kern2.flp</filename>, and <filename>kern3.flp</filename>. Check <filename>README.TXT</filename> in the same directory for the most up to date information about these floppy images.</para> <important> <para>Your FTP program must use <emphasis>binary mode</emphasis> to download these disk images. Some web browsers have been known to use <emphasis>text</emphasis> (or <emphasis>ASCII</emphasis>) mode, which will be apparent if you cannot boot from the disks.</para> </important> </step> <step> <title>Prepare the Floppy Disks</title> <para>You must prepare one floppy disk per image file you had to download. It is imperative that these disks are free from defects. The easiest way to test this is to format the disks for yourself. Do not trust pre-formatted floppies. The format utility in &windows; will not tell about the presence of bad blocks, it simply marks them as <quote>bad</quote> and ignores them. It is advised that you use brand new floppies if choosing this installation route.</para> <important> <para>If you try to install FreeBSD and the installation program crashes, freezes, or otherwise misbehaves, one of the first things to suspect is the floppies. Try writing the floppy image files to new disks and try again.</para> </important> </step> <step> <title>Write the Image Files to the Floppy Disks</title> <para>The <filename>.flp</filename> files are <emphasis>not</emphasis> regular files you copy to the disk. They are images of the complete contents of the disk. This means that you <emphasis>cannot</emphasis> simply copy files from one disk to another. Instead, you must use specific tools to write the images directly to the disk.</para> <indexterm><primary>DOS</primary></indexterm> <para>If you are creating the floppies on a computer running &ms-dos; / &windows;, then we provide a tool to do this called <command>fdimage</command>.</para> <para>If you are using the floppies from the CDROM, and your CDROM is the <devicename>E:</devicename> drive, then you would run this:</para> <screen><prompt>E:\&gt;</prompt> <userinput>tools\fdimage floppies\boot.flp A:</userinput></screen> <para>Repeat this command for each <filename>.flp</filename> file, replacing the floppy disk each time, being sure to label the disks with the name of the file that you copied to them. Adjust the command line as necessary, depending on where you have placed the <filename>.flp</filename> files. If you do not have the CDROM, then <command>fdimage</command> can be downloaded from the <ulink url="ftp://ftp.FreeBSD.org/pub/FreeBSD/tools/"><filename class="directory">tools</filename> directory</ulink> on the FreeBSD FTP site.</para> <para>If you are writing the floppies on a &unix; system (such as another FreeBSD system) you can use the &man.dd.1; command to write the image files directly to disk. On FreeBSD, you would run:</para> <screen>&prompt.root; <userinput>dd if=boot.flp of=/dev/fd0</userinput></screen> <para>On FreeBSD, <filename>/dev/fd0</filename> refers to the first floppy disk (the <devicename>A:</devicename> drive). <filename>/dev/fd1</filename> would be the <devicename>B:</devicename> drive, and so on. Other &unix; variants might have different names for the floppy disk devices, and you will need to check the documentation for the system as necessary.</para> </step> </procedure> <para>You are now ready to start installing FreeBSD.</para> </sect2> </sect1> <sect1 id="install-start"> <title>Starting the Installation</title> <important> <para>By default, the installation will not make any changes to your disk(s) until you see the following message:</para> <literallayout class="monospaced">Last Chance: Are you SURE you want continue the installation? If you're running this on a disk with data you wish to save then WE STRONGLY ENCOURAGE YOU TO MAKE PROPER BACKUPS before proceeding! We can take no responsibility for lost disk contents!</literallayout> <para>The install can be exited at any time prior to the final warning without changing the contents of the hard drive. If you are concerned that you have configured something incorrectly you can just turn the computer off before this point, and no damage will be done.</para> </important> <sect2 id="install-starting"> <title>Booting</title> <sect3 id="install-starting-i386"> <title>Booting for the &i386;</title> <procedure> <step> <para>Start with your computer turned off.</para> </step> <step> <para>Turn on the computer. As it starts it should display an option to enter the system set up menu, or BIOS, commonly reached by keys like <keycap>F2</keycap>, <keycap>F10</keycap>, <keycap>Del</keycap>, or <keycombo action="simul"> <keycap>Alt</keycap> <keycap>S</keycap> </keycombo>. Use whichever keystroke is indicated on screen. In some cases your computer may display a graphic while it starts. Typically, pressing <keycap>Esc</keycap> will dismiss the graphic and allow you to see the necessary messages.</para> </step> <step> <para>Find the setting that controls which devices the system boots from. This is usually labeled as the <quote>Boot Order</quote> and commonly shown as a list of devices, such as <literal>Floppy</literal>, <literal>CDROM</literal>, <literal>First Hard Disk</literal>, and so on.</para> <para>If you are booting from the CDROM then make sure that the CDROM is selected. If you are booting from a USB disk or a floppy disk then make sure that is selected instead. In case of doubt, you should consult the manual that came with your computer, and/or its motherboard.</para> <para>Make the change, then save and exit. The computer should now restart.</para> </step> <step> <para>If you prepared a <quote>bootable</quote> USB stick, as described in <xref linkend="install-boot-media">, then plug in your USB stick before turning on the computer.</para> <para>If you are booting from CDROM, then you will need to turn on the computer, and insert the CDROM at the first opportunity.</para> <note> <para>For &os;&nbsp;7.<replaceable>X</replaceable>, installation boot floppies are available and can be prepared as described in <xref linkend="install-boot-media">. One of them will be the first boot disc: <filename>boot.flp</filename>. Put this disc in your floppy drive and boot the computer.</para> </note> <para>If your computer starts up as normal and loads your existing operating system, then either:</para> <orderedlist> <listitem> <para>The disks were not inserted early enough in the boot process. Leave them in, and try restarting your computer.</para> </listitem> <listitem> <para>The BIOS changes earlier did not work correctly. You should redo that step until you get the right option.</para> </listitem> <listitem> <para>Your particular BIOS does not support booting from the desired media.</para> </listitem> </orderedlist> </step> <step> <para>FreeBSD will start to boot. If you are booting from CDROM you will see a display similar to this (version information omitted):</para> <screen>Booting from CD-Rom... 645MB medium detected CD Loader 1.2 Building the boot loader arguments Looking up /BOOT/LOADER... Found Relocating the loader and the BTX Starting the BTX loader BTX loader 1.00 BTX version is 1.02 Consoles: internal video/keyboard BIOS CD is cd0 BIOS drive C: is disk0 BIOS drive D: is disk1 BIOS 636kB/261056kB available memory FreeBSD/i386 bootstrap loader, Revision 1.1 Loading /boot/defaults/loader.conf /boot/kernel/kernel text=0x64daa0 data=0xa4e80+0xa9e40 syms=[0x4+0x6cac0+0x4+0x88e9d] \</screen> <para>If you are booting from floppy disc, you will see a display similar to this (version information omitted):</para> <screen>Booting from Floppy... Uncompressing ... done BTX loader 1.00 BTX version is 1.01 Console: internal video/keyboard BIOS drive A: is disk0 BIOS drive C: is disk1 BIOS 639kB/261120kB available memory FreeBSD/i386 bootstrap loader, Revision 1.1 Loading /boot/defaults/loader.conf /kernel text=0x277391 data=0x3268c+0x332a8 | Insert disk labelled "Kernel floppy 1" and press any key...</screen> <para>Follow these instructions by removing the <filename>boot.flp</filename> disc, insert the <filename>kern1.flp</filename> disc, and press <keycap>Enter</keycap>. Boot from first floppy; when prompted, insert the other disks as required.</para> </step> <step> <para>Whether you booted from CDROM, USB stick or floppy, the boot process will then get to the &os; boot loader menu:</para> <figure id="boot-loader-menu"> <title>&os; Boot Loader Menu</title> <mediaobject> <imageobject> <imagedata fileref="install/boot-loader-menu" format="PNG"> </imageobject> </mediaobject> </figure> <para>Either wait ten seconds, or press <keycap>Enter</keycap>.</para> </step> </procedure> </sect3> <sect3> <title>Booting for &sparc64;</title> <para>Most &sparc64; 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).</para> <para>To do this, reboot the system, and wait until the boot message appears. It depends on the model, but should look about like:</para> <screen>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.</screen> <para>If your system proceeds to boot from disk at this point, you need to press <keycombo action="simul"><keycap>L1</keycap><keycap>A</keycap></keycombo> or <keycombo action="simul"><keycap>Stop</keycap><keycap>A</keycap></keycombo> on the keyboard, or send a <command>BREAK</command> over the serial console (using for example <command>~#</command> in &man.tip.1; or &man.cu.1;) to get to the PROM prompt. It looks like this:</para> <screenco> <areaspec> <area id="prompt-single" coords="1 5"> <area id="prompt-smp" coords="2 5"> </areaspec> <screen><prompt>ok </prompt> <prompt>ok {0} </prompt></screen> <calloutlist> <callout arearefs="prompt-single"> <para>This is the prompt used on systems with just one CPU.</para> </callout> <callout arearefs="prompt-smp"> <para>This is the prompt used on SMP systems, the digit indicates the number of the active CPU.</para> </callout> </calloutlist> </screenco> <para>At this point, place the CDROM into your drive, and from the PROM prompt, type <command>boot cdrom</command>.</para> </sect3> </sect2> <sect2 id="view-probe"> <title>Reviewing the Device Probe Results</title> <para>The last few hundred lines that have been displayed on screen are stored and can be reviewed.</para> <para>To review the buffer, press <keycap>Scroll Lock</keycap>. This turns on scrolling in the display. You can then use the arrow keys, or <keycap>PageUp</keycap> and <keycap>PageDown</keycap> to view the results. Press <keycap>Scroll Lock</keycap> again to stop scrolling.</para> <para>Do this now, to review the text that scrolled off the screen when the kernel was carrying out the device probes. You will see text similar to <xref linkend="install-dev-probe">, although the precise text will differ depending on the devices that you have in your computer.</para> <figure id="install-dev-probe"> <title>Typical Device Probe Results</title> <screen>avail memory = 253050880 (247120K bytes) Preloaded elf kernel "kernel" at 0xc0817000. Preloaded mfs_root "/mfsroot" at 0xc0817084. md0: Preloaded image &lt;/mfsroot&gt; 4423680 bytes at 0xc03ddcd4 md1: Malloc disk Using $PIR table, 4 entries at 0xc00fde60 npx0: &lt;math processor&gt; on motherboard npx0: INT 16 interface pcib0: &lt;Host to PCI bridge&gt; on motherboard pci0: &lt;PCI bus&gt; on pcib0 pcib1:&lt;VIA 82C598MVP (Apollo MVP3) PCI-PCI (AGP) bridge&gt; at device 1.0 on pci0 pci1: &lt;PCI bus&gt; on pcib1 pci1: &lt;Matrox MGA G200 AGP graphics accelerator&gt; at 0.0 irq 11 isab0: &lt;VIA 82C586 PCI-ISA bridge&gt; at device 7.0 on pci0 isa0: &lt;iSA bus&gt; on isab0 atapci0: &lt;VIA 82C586 ATA33 controller&gt; port 0xe000-0xe00f at device 7.1 on pci0 ata0: at 0x1f0 irq 14 on atapci0 ata1: at 0x170 irq 15 on atapci0 uhci0 &lt;VIA 83C572 USB controller&gt; port 0xe400-0xe41f irq 10 at device 7.2 on pci 0 usb0: &lt;VIA 83572 USB controller&gt; on uhci0 usb0: USB revision 1.0 uhub0: VIA UHCI root hub, class 9/0, rev 1.00/1.00, addr1 uhub0: 2 ports with 2 removable, self powered pci0: &lt;unknown card&gt; (vendor=0x1106, dev=0x3040) at 7.3 dc0: &lt;ADMtek AN985 10/100BaseTX&gt; port 0xe800-0xe8ff mem 0xdb000000-0xeb0003ff ir q 11 at device 8.0 on pci0 dc0: Ethernet address: 00:04:5a:74:6b:b5 miibus0: &lt;MII bus&gt; on dc0 ukphy0: &lt;Generic IEEE 802.3u media interface&gt; on miibus0 ukphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto ed0: &lt;NE2000 PCI Ethernet (RealTek 8029)&gt; port 0xec00-0xec1f irq 9 at device 10. 0 on pci0 ed0 address 52:54:05:de:73:1b, type NE2000 (16 bit) isa0: too many dependant configs (8) isa0: unexpected small tag 14 orm0: &lt;Option ROM&gt; at iomem 0xc0000-0xc7fff on isa0 fdc0: &lt;NEC 72065B or clone&gt; at port 0x3f0-0x3f5,0x3f7 irq 6 drq2 on isa0 fdc0: FIFO enabled, 8 bytes threshold fd0: &lt;1440-KB 3.5&rdquo; drive&gt; on fdc0 drive 0 atkbdc0: &lt;Keyboard controller (i8042)&gt; at port 0x60,0x64 on isa0 atkbd0: &lt;AT Keyboard&gt; flags 0x1 irq1 on atkbdc0 kbd0 at atkbd0 psm0: &lt;PS/2 Mouse&gt; irq 12 on atkbdc0 psm0: model Generic PS/@ mouse, device ID 0 vga0: &lt;Generic ISA VGA&gt; at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0 sc0: &lt;System console&gt; at flags 0x100 on isa0 sc0: VGA &lt;16 virtual consoles, flags=0x300&gt; sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0 sio0: type 16550A sio1 at port 0x2f8-0x2ff irq 3 on isa0 sio1: type 16550A ppc0: &lt;Parallel port&gt; at port 0x378-0x37f irq 7 on isa0 pppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode ppc0: FIFO with 16/16/15 bytes threshold plip0: &lt;PLIP network interface&gt; on ppbus0 ad0: 8063MB &lt;IBM-DHEA-38451&gt; [16383/16/63] at ata0-master UDMA33 acd0: CD-RW &lt;LITE-ON LTR-1210B&gt; at ata1-slave PIO4 Mounting root from ufs:/dev/md0c /stand/sysinstall running as init on vty0</screen> </figure> <para>Check the probe results carefully to make sure that FreeBSD found all the devices you expected. If a device was not found, then it will not be listed. A <link linkend="kernelconfig">custom kernel</link> allows you to add in support for devices which are not in the <filename>GENERIC</filename> kernel, such as sound cards.</para> <para>After the procedure of device probing, you will see <xref linkend="config-country">. Use the arrow key to choose a country, region, or group. Then press <keycap>Enter</keycap>, it will set your country easily.</para> <figure id="config-country"> <title>Selecting Country Menu</title> <mediaobject> <imageobject> <imagedata fileref="install/config-country" format="PNG"> </imageobject> </mediaobject> </figure> <para>If you selected <guimenuitem>United States</guimenuitem> as country, the standard American keyboard map will be used, if a different country is chosen the following menu will be displayed. Use the arrow keys to choose the correct keyboard map and press <keycap>Enter</keycap>.</para> <figure id="config-keymap"> <title>Selecting Keyboard Menu</title> <mediaobject> <imageobject> <imagedata fileref="install/config-keymap" format="PNG"> </imageobject> </mediaobject> </figure> <para>After the country selecting, the <application>sysinstall</application> main menu will display.</para> </sect2> </sect1> <sect1 id="using-sysinstall"> <title>Introducing Sysinstall</title> <para>The <application>sysinstall</application> utility is the installation application provided by the FreeBSD Project. It is console based and is divided into a number of menus and screens that you can use to configure and control the installation process.</para> <para>The <application>sysinstall</application> menu system is controlled by the arrow keys, <keycap>Enter</keycap>, <keycap>Tab</keycap>, <keycap>Space</keycap>, and other keys. A detailed description of these keys and what they do is contained in <application>sysinstall</application>'s usage information.</para> <para>To review this information, ensure that the <guimenuitem>Usage</guimenuitem> entry is highlighted and that the <guibutton>[Select]</guibutton> button is selected, as shown in <xref linkend="sysinstall-main3">, then press <keycap>Enter</keycap>.</para> <para>The instructions for using the menu system will be displayed. After reviewing them, press <keycap>Enter</keycap> to return to the Main Menu.</para> <figure id="sysinstall-main3"> <title>Selecting Usage from Sysinstall Main Menu</title> <mediaobject> <imageobject> <imagedata fileref="install/main1" format="PNG"> </imageobject> </mediaobject> </figure> <sect2 id="select-doc"> <title>Selecting the Documentation Menu</title> <para>From the Main Menu, select <guimenuitem>Doc</guimenuitem> with the arrow keys and press <keycap>Enter</keycap>.</para> <figure id="main-doc"> <title>Selecting Documentation Menu</title> <mediaobject> <imageobject> <imagedata fileref="install/main-doc" format="PNG"> </imageobject> </mediaobject> </figure> <para>This will display the Documentation Menu.</para> <figure id="docmenu1"> <title>Sysinstall Documentation Menu</title> <mediaobject> <imageobject> <imagedata fileref="install/docmenu1" format="PNG"> </imageobject> </mediaobject> </figure> <para>It is important to read the documents provided.</para> <para>To view a document, select it with the arrow keys and press <keycap>Enter</keycap>. When finished reading a document, pressing <keycap>Enter</keycap> will return to the Documentation Menu.</para> <para>To return to the Main Installation Menu, select <guimenuitem>Exit</guimenuitem> with the arrow keys and press <keycap>Enter</keycap>.</para> </sect2> <sect2 id="keymap"> <title>Selecting the Keymap Menu</title> <para>To change the keyboard mapping, use the arrow keys to select <guimenuitem>Keymap</guimenuitem> from the menu and press <keycap>Enter</keycap>. This is only required if you are using a non-standard or non-US keyboard.</para> <figure id="sysinstall-keymap"> <title>Sysinstall Main Menu</title> <mediaobject> <imageobject> <imagedata fileref="install/main-keymap" format="PNG"> </imageobject> </mediaobject> </figure> <para>A different keyboard mapping may be chosen by selecting the menu item using up/down arrow keys and pressing <keycap>Space</keycap>. Pressing <keycap>Space</keycap> again will unselect the item. When finished, choose the &gui.ok; using the arrow keys and press <keycap>Enter</keycap>.</para> <para>Only a partial list is shown in this screen representation. Selecting &gui.cancel; by pressing <keycap>Tab</keycap> will use the default keymap and return to the Main Install Menu.</para> <figure id="sysinstall-keymap-menu"> <title>Sysinstall Keymap Menu</title> <mediaobject> <imageobject> <imagedata fileref="install/keymap" format="PNG"> </imageobject> </mediaobject> </figure> </sect2> <sect2 id="viewsetoptions"> <title>Installation Options Screen</title> <para>Select <guimenuitem>Options</guimenuitem> and press <keycap>Enter</keycap>.</para> <figure id="sysinstall-options"> <title>Sysinstall Main Menu</title> <mediaobject> <imageobject> <imagedata fileref="install/main-options" format="PNG"> </imageobject> </mediaobject> </figure> <figure id="options"> <title>Sysinstall Options</title> <mediaobject> <imageobject> <imagedata fileref="install/options" format="PNG"> </imageobject> </mediaobject> </figure> <para>The default values are usually fine for most users and do not need to be changed. The release name will vary according to the version being installed.</para> <para>The description of the selected item will appear at the bottom of the screen highlighted in blue. Notice that one of the options is <guimenuitem>Use Defaults</guimenuitem> to reset all values to startup defaults.</para> <para>Press <keycap>F1</keycap> to read the help screen about the various options.</para> <para>Pressing <keycap>Q</keycap> will return to the Main Install menu.</para> </sect2> <sect2 id="start-install"> <title>Begin a Standard Installation</title> <para>The <guimenuitem>Standard</guimenuitem> installation is the option recommended for those new to &unix; or FreeBSD. Use the arrow keys to select <guimenuitem>Standard</guimenuitem> and then press <keycap>Enter</keycap> to start the installation.</para> <figure id="sysinstall-standard"> <title>Begin Standard Installation</title> <mediaobject> <imageobject> <imagedata fileref="install/main-std" format="PNG"> </imageobject> </mediaobject> </figure> </sect2> </sect1> <sect1 id="install-steps"> <title>Allocating Disk Space</title> <para>Your first task is to allocate disk space for FreeBSD, and label that space so that <application>sysinstall</application> can prepare it. In order to do this you need to know how FreeBSD expects to find information on the disk.</para> <sect2 id="install-drive-bios-numbering"> <title>BIOS Drive Numbering</title> <para>Before you install and configure FreeBSD on your system, there is an important subject that you should be aware of, especially if you have multiple hard drives.</para> <indexterm><primary>MS-DOS</primary></indexterm> <indexterm><primary>Microsoft Windows</primary></indexterm> <para>In a PC running a BIOS-dependent operating system such as &ms-dos; or &microsoft.windows;, the BIOS is able to abstract the normal disk drive order, and the operating system goes along with the change. This allows the user to boot from a disk drive other than the so-called <quote>primary master</quote>. This is especially convenient for some users who have found that the simplest and cheapest way to keep a system backup is to buy an identical second hard drive, and perform routine copies of the first drive to the second drive using <application><trademark class="registered">Ghost</trademark></application> or <application>XCOPY</application> . Then, if the first drive fails, or is attacked by a virus, or is scribbled upon by an operating system defect, he can easily recover by instructing the BIOS to logically swap the drives. It is like switching the cables on the drives, but without having to open the case.</para> <indexterm><primary>SCSI</primary></indexterm> <indexterm><primary>BIOS</primary></indexterm> <para>More expensive systems with SCSI controllers often include BIOS extensions which allow the SCSI drives to be re-ordered in a similar fashion for up to seven drives.</para> <para>A user who is accustomed to taking advantage of these features may become surprised when the results with FreeBSD are not as expected. FreeBSD does not use the BIOS, and does not know the <quote>logical BIOS drive mapping</quote>. This can lead to very perplexing situations, especially when drives are physically identical in geometry, and have also been made as data clones of one another.</para> <para>When using FreeBSD, always restore the BIOS to natural drive numbering before installing FreeBSD, and then leave it that way. If you need to switch drives around, then do so, but do it the hard way, and open the case and move the jumpers and cables.</para> <sidebar> <title>An Illustration from the Files of Bill and Fred's Exceptional Adventures:</title> <para>Bill breaks-down an older Wintel box to make another FreeBSD box for Fred. Bill installs a single SCSI drive as SCSI unit zero and installs FreeBSD on it.</para> <para>Fred begins using the system, but after several days notices that the older SCSI drive is reporting numerous soft errors and reports this fact to Bill.</para> <para>After several more days, Bill decides it is time to address the situation, so he grabs an identical SCSI drive from the disk drive <quote>archive</quote> in the back room. An initial surface scan indicates that this drive is functioning well, so Bill installs this drive as SCSI unit four and makes an image copy from drive zero to drive four. Now that the new drive is installed and functioning nicely, Bill decides that it is a good idea to start using it, so he uses features in the SCSI BIOS to re-order the disk drives so that the system boots from SCSI unit four. FreeBSD boots and runs just fine.</para> <para>Fred continues his work for several days, and soon Bill and Fred decide that it is time for a new adventure &mdash; time to upgrade to a newer version of FreeBSD. Bill removes SCSI unit zero because it was a bit flaky and replaces it with another identical disk drive from the <quote>archive</quote>. Bill then installs the new version of FreeBSD onto the new SCSI unit zero using Fred's magic Internet FTP floppies. The installation goes well.</para> <para>Fred uses the new version of FreeBSD for a few days, and certifies that it is good enough for use in the engineering department. It is time to copy all of his work from the old version. So Fred mounts SCSI unit four (the latest copy of the older FreeBSD version). Fred is dismayed to find that none of his precious work is present on SCSI unit four.</para> <para>Where did the data go?</para> <para>When Bill made an image copy of the original SCSI unit zero onto SCSI unit four, unit four became the <quote>new clone</quote>. When Bill re-ordered the SCSI BIOS so that he could boot from SCSI unit four, he was only fooling himself. FreeBSD was still running on SCSI unit zero. Making this kind of BIOS change will cause some or all of the Boot and Loader code to be fetched from the selected BIOS drive, but when the FreeBSD kernel drivers take-over, the BIOS drive numbering will be ignored, and FreeBSD will transition back to normal drive numbering. In the illustration at hand, the system continued to operate on the original SCSI unit zero, and all of Fred's data was there, not on SCSI unit four. The fact that the system appeared to be running on SCSI unit four was simply an artifact of human expectations.</para> <para>We are delighted to mention that no data bytes were killed or harmed in any way by our discovery of this phenomenon. The older SCSI unit zero was retrieved from the bone pile, and all of Fred's work was returned to him, (and now Bill knows that he can count as high as zero).</para> <para>Although SCSI drives were used in this illustration, the concepts apply equally to IDE drives.</para> </sidebar> </sect2> <sect2 id="main-fdisk"> <title>Creating Slices Using FDisk</title> <note> <para>No changes you make at this point will be written to the disk. If you think you have made a mistake and want to start again you can use the menus to exit <application>sysinstall</application> and try again or press <keycap>U</keycap> to use the <guimenuitem>Undo</guimenuitem> option. If you get confused and can not see how to exit you can always turn your computer off.</para> </note> <para>After choosing to begin a standard installation in <application>sysinstall</application> you will be shown this message:</para> <screen> Message In the next menu, you will need to set up a DOS-style ("fdisk") partitioning scheme for your hard disk. If you simply wish to devote all disk space to FreeBSD (overwriting anything else that might be on the disk(s) selected) then use the (A)ll command to select the default partitioning scheme followed by a (Q)uit. If you wish to allocate only free space to FreeBSD, move to a partition marked "unused" and use the (C)reate command. [ OK ] [ Press enter or space ]</screen> <para>Press <keycap>Enter</keycap> as instructed. You will then be shown a list of all the hard drives that the kernel found when it carried out the device probes. <xref linkend="sysinstall-fdisk-drive1"> shows an example from a system with two IDE disks. They have been called <devicename>ad0</devicename> and <devicename>ad2</devicename>.</para> <figure id="sysinstall-fdisk-drive1"> <title>Select Drive for FDisk</title> <mediaobject> <imageobject> <imagedata fileref="install/fdisk-drive1" format="PNG"> </imageobject> </mediaobject> </figure> <para>You might be wondering why <devicename>ad1</devicename> is not listed here. Why has it been missed?</para> <para>Consider what would happen if you had two IDE hard disks, one as the master on the first IDE controller, and one as the master on the second IDE controller. If FreeBSD numbered these as it found them, as <devicename>ad0</devicename> and <devicename>ad1</devicename> then everything would work.</para> <para>But if you then added a third disk, as the slave device on the first IDE controller, it would now be <devicename>ad1</devicename>, and the previous <devicename>ad1</devicename> would become <devicename>ad2</devicename>. Because device names (such as <devicename>ad1s1a</devicename>) are used to find filesystems, you may suddenly discover that some of your filesystems no longer appear correctly, and you would need to change your FreeBSD configuration.</para> <para>To work around this, the kernel can be configured to name IDE disks based on where they are, and not the order in which they were found. With this scheme the master disk on the second IDE controller will <emphasis>always</emphasis> be <devicename>ad2</devicename>, even if there are no <devicename>ad0</devicename> or <devicename>ad1</devicename> devices.</para> <para>This configuration is the default for the FreeBSD kernel, which is why this display shows <devicename>ad0</devicename> and <devicename>ad2</devicename>. The machine on which this screenshot was taken had IDE disks on both master channels of the IDE controllers, and no disks on the slave channels.</para> <para>You should select the disk on which you want to install FreeBSD, and then press &gui.ok;. <application>FDisk</application> will start, with a display similar to that shown in <xref linkend="sysinstall-fdisk1">.</para> <para>The <application>FDisk</application> display is broken into three sections.</para> <para>The first section, covering the first two lines of the display, shows details about the currently selected disk, including its FreeBSD name, the disk geometry, and the total size of the disk.</para> <para>The second section shows the slices that are currently on the disk, where they start and end, how large they are, the name FreeBSD gives them, and their description and sub-type. This example shows two small unused slices, which are artifacts of disk layout schemes on the PC. It also shows one large <acronym>FAT</acronym> slice, which almost certainly appears as <devicename>C:</devicename> in &ms-dos; / &windows;, and an extended slice, which may contain other drive letters for &ms-dos; / &windows;.</para> <para>The third section shows the commands that are available in <application>FDisk</application>.</para> <figure id="sysinstall-fdisk1"> <title>Typical <command>fdisk</command> Partitions Before Editing</title> <mediaobject> <imageobject> <imagedata fileref="install/fdisk-edit1" format="PNG"> </imageobject> </mediaobject> </figure> <para>What you do now will depend on how you want to slice up your disk.</para> <para>If you want to use FreeBSD for the entire disk (which will delete all the other data on this disk when you confirm that you want <application>sysinstall</application> to continue later in the installation process) then you can press <keycap>A</keycap>, which corresponds to the <guimenuitem>Use Entire Disk</guimenuitem> option. The existing slices will be removed, and replaced with a small area flagged as <literal>unused</literal> (again, an artifact of PC disk layout), and then one large slice for FreeBSD. If you do this, then you should select the newly created FreeBSD slice using the arrow keys, and press <keycap>S</keycap> to mark the slice as being bootable. The screen will then look very similar to <xref linkend="sysinstall-fdisk2">. Note the <literal>A</literal> in the <literal>Flags</literal> column, which indicates that this slice is <emphasis>active</emphasis>, and will be booted from.</para> <para>If you will be deleting an existing slice to make space for FreeBSD then you should select the slice using the arrow keys, and then press <keycap>D</keycap>. You can then press <keycap>C</keycap>, and be prompted for size of slice you want to create. Enter the appropriate figure and press <keycap>Enter</keycap>. The default value in this box represents the largest possible slice you can make, which could be the largest contiguous block of unallocated space or the size of the entire hard disk.</para> <para>If you have already made space for FreeBSD (perhaps by using a tool such as <application>&partitionmagic;</application>) then you can press <keycap>C</keycap> to create a new slice. Again, you will be prompted for the size of slice you would like to create.</para> <figure id="sysinstall-fdisk2"> <title>Fdisk Partition Using Entire Disk</title> <mediaobject> <imageobject> <imagedata fileref="install/fdisk-edit2" format="PNG"> </imageobject> </mediaobject> </figure> <para>When finished, press <keycap>Q</keycap>. Your changes will be saved in <application>sysinstall</application>, but will not yet be written to disk.</para> </sect2> <sect2 id="bootmgr"> <title>Install a Boot Manager</title> <para>You now have the option to install a boot manager. In general, you should choose to install the FreeBSD boot manager if:</para> <itemizedlist> <listitem> <para>You have more than one drive, and have installed FreeBSD onto a drive other than the first one.</para> </listitem> <listitem> <para>You have installed FreeBSD alongside another operating system on the same disk, and you want to choose whether to start FreeBSD or the other operating system when you start the computer.</para> </listitem> </itemizedlist> <para>If FreeBSD is going to be the only operating system on this machine, installed on the first hard disk, then the <guimenuitem>Standard</guimenuitem> boot manager will suffice. Choose <guimenuitem>None</guimenuitem> if you are using a third-party boot manager capable of booting FreeBSD.</para> <para>Make your choice and press <keycap>Enter</keycap>.</para> <figure id="sysinstall-bootmgr"> <title>Sysinstall Boot Manager Menu</title> <mediaobject> <imageobject> <imagedata fileref="install/boot-mgr" format="PNG"> </imageobject> </mediaobject> </figure> <para>The help screen, reached by pressing <keycap>F1</keycap>, discusses the problems that can be encountered when trying to share the hard disk between operating systems.</para> </sect2> <sect2> <title>Creating Slices on Another Drive</title> <para>If there is more than one drive, it will return to the Select Drives screen after the boot manager selection. If you wish to install FreeBSD on to more than one disk, then you can select another disk here and repeat the slice process using <application>FDisk</application>.</para> <important> <para>If you are installing FreeBSD on a drive other than your first, then the FreeBSD boot manager needs to be installed on both drives.</para> </important> <figure id="sysinstall-fdisk-drive2"> <title>Exit Select Drive</title> <mediaobject> <imageobject> <imagedata fileref="install/fdisk-drive2" format="PNG"> </imageobject> </mediaobject> </figure> <para>The <keycap>Tab</keycap> key toggles between the last drive selected, &gui.ok;, and &gui.cancel;.</para> <para>Press the <keycap>Tab</keycap> once to toggle to the &gui.ok;, then press <keycap>Enter</keycap> to continue with the installation.</para> </sect2> <sect2 id="bsdlabeleditor"> <title>Creating Partitions Using <application>Disklabel</application></title> <para>You must now create some partitions inside each slice that you have just created. Remember that each partition is lettered, from <literal>a</literal> through to <literal>h</literal>, and that partitions <literal>b</literal>, <literal>c</literal>, and <literal>d</literal> have conventional meanings that you should adhere to.</para> <para>Certain applications can benefit from particular partition schemes, especially if you are laying out partitions across more than one disk. However, for this, your first FreeBSD installation, you do not need to give too much thought to how you partition the disk. It is more important that you install FreeBSD and start learning how to use it. You can always re-install FreeBSD to change your partition scheme when you are more familiar with the operating system.</para> <para>This scheme features four partitions&mdash;one for swap space, and three for filesystems.</para> <table frame="none" pgwide="1"> <title>Partition Layout for First Disk</title> <tgroup cols="4"> <colspec colwidth="1*"> <colspec colwidth="1*"> <colspec colwidth="1*"> <colspec colwidth="4*"> <thead> <row> <entry>Partition</entry> <entry>Filesystem</entry> <entry>Size</entry> <entry>Description</entry> </row> </thead> <tbody> <row> <entry><literal>a</literal></entry> <entry><filename>/</filename></entry> <entry>1&nbsp;GB</entry> <entry>This is the root filesystem. Every other filesystem will be mounted somewhere under this one. 1&nbsp;GB is a reasonable size for this filesystem. You will not be storing too much data on it, as a regular FreeBSD install will put about 128&nbsp;MB of data here. The remaining space is for temporary data, and also leaves expansion space if future versions of FreeBSD need more space in <filename>/</filename>.</entry> </row> <row> <entry><literal>b</literal></entry> <entry>N/A</entry> <entry>2-3 x RAM</entry> <entry><para>The system's swap space is kept on the <literal>b</literal> partition. Choosing the right amount of swap space can be a bit of an art. A good rule of thumb is that your swap space should be two or three times as much as the available physical memory (RAM). You should also have at least 64&nbsp;MB of swap, so if you have less than 32&nbsp;MB of RAM in your computer then set the swap amount to 64&nbsp;MB.</para><para> If you have more than one disk then you can put swap space on each disk. FreeBSD will then use each disk for swap, which effectively speeds up the act of swapping. In this case, calculate the total amount of swap you need (e.g., 128&nbsp;MB), and then divide this by the number of disks you have (e.g., two disks) to give the amount of swap you should put on each disk, in this example, 64&nbsp;MB of swap per disk.</para></entry> </row> <row> <entry><literal>e</literal></entry> <entry><filename>/var</filename></entry> <entry>512&nbsp;MB to 4096&nbsp;MB</entry> <entry>The <filename>/var</filename> directory contains files that are constantly varying; log files, and other administrative files. Many of these files are read-from or written-to extensively during FreeBSD's day-to-day running. Putting these files on another filesystem allows FreeBSD to optimize the access of these files without affecting other files in other directories that do not have the same access pattern.</entry> </row> <row> <entry><literal>f</literal></entry> <entry><filename>/usr</filename></entry> <entry>Rest of disk (at least 8&nbsp;GB)</entry> <entry>All your other files will typically be stored in <filename>/usr</filename> and its subdirectories.</entry> </row> </tbody> </tgroup> </table> <warning> <para>The values above are given as example and should be used by experienced users only. Users are encouraged to use the automatic partition layout called <literal>Auto Defaults</literal> by the &os; partition editor.</para> </warning> <para>If you will be installing FreeBSD on to more than one disk then you must also create partitions in the other slices that you configured. The easiest way to do this is to create two partitions on each disk, one for the swap space, and one for a filesystem.</para> <table frame="none" pgwide="1"> <title>Partition Layout for Subsequent Disks</title> <tgroup cols="4"> <colspec colwidth="1*"> <colspec colwidth="1*"> <colspec colwidth="2*"> <colspec colwidth="3*"> <thead> <row> <entry>Partition</entry> <entry>Filesystem</entry> <entry>Size</entry> <entry>Description</entry> </row> </thead> <tbody> <row> <entry><literal>b</literal></entry> <entry>N/A</entry> <entry>See description</entry> <entry>As already discussed, you can split swap space across each disk. Even though the <literal>a</literal> partition is free, convention dictates that swap space stays on the <literal>b</literal> partition.</entry> </row> <row> <entry><literal>e</literal></entry> <entry>/disk<replaceable>n</replaceable></entry> <entry>Rest of disk</entry> <entry>The rest of the disk is taken up with one big partition. This could easily be put on the <literal>a</literal> partition, instead of the <literal>e</literal> partition. However, convention says that the <literal>a</literal> partition on a slice is reserved for the filesystem that will be the root (<filename>/</filename>) filesystem. You do not have to follow this convention, but <application>sysinstall</application> does, so following it yourself makes the installation slightly cleaner. You can choose to mount this filesystem anywhere; this example suggests that you mount them as directories <filename>/disk<replaceable>n</replaceable></filename>, where <replaceable>n</replaceable> is a number that changes for each disk. But you can use another scheme if you prefer.</entry> </row> </tbody> </tgroup> </table> <para>Having chosen your partition layout you can now create it using <application>sysinstall</application>. You will see this message:</para> <screen> Message Now, you need to create BSD partitions inside of the fdisk partition(s) just created. If you have a reasonable amount of disk space (1GB or more) and don't have any special requirements, simply use the (A)uto command to allocate space automatically. If you have more specific needs or just don't care for the layout chosen by (A)uto, press F1 for more information on manual layout. [ OK ] [ Press enter or space ]</screen> <para>Press <keycap>Enter</keycap> to start the FreeBSD partition editor, called <application>Disklabel</application>.</para> <para><xref linkend="sysinstall-label"> shows the display when you first start <application>Disklabel</application>. The display is divided in to three sections.</para> <para>The first few lines show the name of the disk you are currently working on, and the slice that contains the partitions you are creating (at this point <application>Disklabel</application> calls this the <literal>Partition name</literal> rather than slice name). This display also shows the amount of free space within the slice; that is, space that was set aside in the slice, but that has not yet been assigned to a partition.</para> <para>The middle of the display shows the partitions that have been created, the name of the filesystem that each partition contains, their size, and some options pertaining to the creation of the filesystem.</para> <para>The bottom third of the screen shows the keystrokes that are valid in <application>Disklabel</application>.</para> <figure id="sysinstall-label"> <title>Sysinstall Disklabel Editor</title> <mediaobject> <imageobject> <imagedata fileref="install/disklabel-ed1" format="PNG"> </imageobject> </mediaobject> </figure> <para><application>Disklabel</application> can automatically create partitions for you and assign them default sizes. The default sizes are calculated with the help of an internal partition sizing algorithm based on the disk size. Try this now, by Pressing <keycap>A</keycap>. You will see a display similar to that shown in <xref linkend="sysinstall-label2">. Depending on the size of the disk you are using, the defaults may or may not be appropriate. This does not matter, as you do not have to accept the defaults.</para> <note> <para>The default partitioning assigns the <filename>/tmp</filename> directory its own partition instead of being part of the <filename>/</filename> partition. This helps avoid filling the <filename>/</filename> partition with temporary files.</para> </note> <figure id="sysinstall-label2"> <title>Sysinstall Disklabel Editor with Auto Defaults</title> <mediaobject> <imageobject> <imagedata fileref="install/disklabel-auto" format="PNG"> </imageobject> </mediaobject> </figure> <para>If you choose to not use the default partitions and wish to replace them with your own, use the arrow keys to select the first partition, and press <keycap>D</keycap> to delete it. Repeat this to delete all the suggested partitions.</para> <para>To create the first partition (<literal>a</literal>, mounted as <filename>/</filename> &mdash; root), make sure the proper disk slice at the top of the screen is selected and press <keycap>C</keycap>. A dialog box will appear prompting you for the size of the new partition (as shown in <xref linkend="sysinstall-label-add">). You can enter the size as the number of disk blocks you want to use, or as a number followed by either <literal>M</literal> for megabytes, <literal>G</literal> for gigabytes, or <literal>C</literal> for cylinders.</para> <figure id="sysinstall-label-add"> <title>Free Space for Root Partition</title> <mediaobject> <imageobject> <imagedata fileref="install/disklabel-root1" format="PNG"> </imageobject> </mediaobject> </figure> <para>The default size shown will create a partition that takes up the rest of the slice. If you are using the partition sizes described in the earlier example, then delete the existing figure using <keycap>Backspace</keycap>, and then type in <userinput>512M</userinput>, as shown in <xref linkend="sysinstall-label-add2">. Then press &gui.ok;.</para> <figure id="sysinstall-label-add2"> <title>Edit Root Partition Size</title> <mediaobject> <imageobject> <imagedata fileref="install/disklabel-root2" format="PNG"> </imageobject> </mediaobject> </figure> <para>Having chosen the partition's size you will then be asked whether this partition will contain a filesystem or swap space. The dialog box is shown in <xref linkend="sysinstall-label-type">. This first partition will contain a filesystem, so check that <guimenuitem>FS</guimenuitem> is selected and press <keycap>Enter</keycap>.</para> <figure id="sysinstall-label-type"> <title>Choose the Root Partition Type</title> <mediaobject> <imageobject> <imagedata fileref="install/disklabel-fs" format="PNG"> </imageobject> </mediaobject> </figure> <para>Finally, because you are creating a filesystem, you must tell <application>Disklabel</application> where the filesystem is to be mounted. The dialog box is shown in <xref linkend="sysinstall-label-mount">. The root filesystem's mount point is <filename>/</filename>, so type <userinput>/</userinput>, and then press <keycap>Enter</keycap>.</para> <figure id="sysinstall-label-mount"> <title>Choose the Root Mount Point</title> <mediaobject> <imageobject> <imagedata fileref="install/disklabel-root3" format="PNG"> </imageobject> </mediaobject> </figure> <para>The display will then update to show you the newly created partition. You should repeat this procedure for the other partitions. When you create the swap partition, you will not be prompted for the filesystem mount point, as swap partitions are never mounted. When you create the final partition, <filename>/usr</filename>, you can leave the suggested size as is, to use the rest of the slice.</para> <para>Your final FreeBSD DiskLabel Editor screen will appear similar to <xref linkend="sysinstall-label4">, although your values chosen may be different. Press <keycap>Q</keycap> to finish.</para> <figure id="sysinstall-label4"> <title>Sysinstall Disklabel Editor</title> <mediaobject> <imageobject> <imagedata fileref="install/disklabel-ed2" format="PNG"> </imageobject> </mediaobject> </figure> </sect2> </sect1> <sect1 id="install-choosing"> <title>Choosing What to Install</title> <sect2 id="distset"> <title>Select the Distribution Set</title> <para>Deciding which distribution set to install will depend largely on the intended use of the system and the amount of disk space available. The predefined options range from installing the smallest possible configuration to everything. Those who are new to &unix; and/or FreeBSD should almost certainly select one of these canned options. Customizing a distribution set is typically for the more experienced user.</para> <para>Press <keycap>F1</keycap> for more information on the distribution set options and what they contain. When finished reviewing the help, pressing <keycap>Enter</keycap> will return to the Select Distributions Menu.</para> <para>If a graphical user interface is desired then the configuration of the X server and selection of a default desktop must be done after the installation of &os;. More information regarding the installation and configuration of a X server can be found in <xref linkend="x11">.</para> <para>If compiling a custom kernel is anticipated, select an option which includes the source code. For more information on why a custom kernel should be built or how to build a custom kernel, see <xref linkend="kernelconfig">.</para> <para>Obviously, the most versatile system is one that includes everything. If there is adequate disk space, select <guimenuitem>All</guimenuitem> as shown in <xref linkend="distribution-set1"> by using the arrow keys and press <keycap>Enter</keycap>. If there is a concern about disk space consider using an option that is more suitable for the situation. Do not fret over the perfect choice, as other distributions can be added after installation.</para> <figure id="distribution-set1"> <title>Choose Distributions</title> <mediaobject> <imageobject> <imagedata fileref="install/dist-set" format="PNG"> </imageobject> </mediaobject> </figure> </sect2> <sect2 id="portscol"> <title>Installing the Ports Collection</title> <para>After selecting the desired distribution, an opportunity to install the FreeBSD Ports Collection is presented. The ports collection is an easy and convenient way to install software. The Ports Collection does not contain the source code necessary to compile the software. Instead, it is a collection of files which automates the downloading, compiling and installation of third-party software packages. <xref linkend="ports"> discusses how to use the ports collection.</para> <para>The installation program does not check to see if you have adequate space. Select this option only if you have adequate hard disk space. As of FreeBSD &rel.current;, the FreeBSD Ports Collection takes up about &ports.size; of disk space. You can safely assume a larger value for more recent versions of FreeBSD.</para> <screen> User Confirmation Requested Would you like to install the FreeBSD ports collection? This will give you ready access to over &os.numports; ported software packages, at a cost of around &ports.size; of disk space when "clean" and possibly much more than that if a lot of the distribution tarballs are loaded (unless you have the extra CDs from a FreeBSD CD/DVD distribution available and can mount it on /cdrom, in which case this is far less of a problem). The Ports Collection is a very valuable resource and well worth having on your /usr partition, so it is advisable to say Yes to this option. For more information on the Ports Collection &amp; the latest ports, visit: http://www.FreeBSD.org/ports [ Yes ] No</screen> <para>Select &gui.yes; with the arrow keys to install the Ports Collection or &gui.no; to skip this option. Press <keycap>Enter</keycap> to continue. The Choose Distributions menu will redisplay.</para> <figure id="distribution-set2"> <title>Confirm Distributions</title> <mediaobject> <imageobject> <imagedata fileref="install/dist-set2" format="PNG"> </imageobject> </mediaobject> </figure> <para>If satisfied with the options, select <guimenuitem>Exit</guimenuitem> with the arrow keys, ensure that &gui.ok; is highlighted, and pressing <keycap>Enter</keycap> to continue.</para> </sect2> </sect1> <sect1 id="install-media"> <title>Choosing Your Installation Media</title> <para>If Installing from a CDROM or DVD, use the arrow keys to highlight <guimenuitem>Install from a FreeBSD CD/DVD</guimenuitem>. Ensure that &gui.ok; is highlighted, then press <keycap>Enter</keycap> to proceed with the installation.</para> <para>For other methods of installation, select the appropriate option and follow the instructions.</para> <para>Press <keycap>F1</keycap> to display the Online Help for installation media. Press <keycap>Enter</keycap> to return to the media selection menu.</para> <figure id="choose-media"> <title>Choose Installation Media</title> <mediaobject> <imageobject> <imagedata fileref="install/media" format="PNG"> </imageobject> </mediaobject> </figure> <note> <title>FTP Installation Modes</title> <indexterm> <primary>installation</primary> <secondary>network</secondary> <tertiary>FTP</tertiary> </indexterm> <para>There are three FTP installation modes you can choose from: active FTP, passive FTP, or via a HTTP proxy.</para> <variablelist> <varlistentry> <term>FTP Active: <guimenuitem>Install from an FTP server</guimenuitem></term> <listitem> <para>This option will make all FTP transfers use <quote>Active</quote> mode. This will not work through firewalls, but will often work with older FTP servers that do not support passive mode. If your connection hangs with passive mode (the default), try active!</para> </listitem> </varlistentry> <varlistentry> <term>FTP Passive: <guimenuitem>Install from an FTP server through a firewall</guimenuitem></term> <listitem> <indexterm> <primary>FTP</primary> <secondary>passive mode</secondary> </indexterm> <para>This option instructs <application>sysinstall</application> to <quote>Passive</quote> mode for all FTP operations. This allows the user to pass through firewalls that do not allow incoming connections on random TCP ports. </para> </listitem> </varlistentry> <varlistentry> <term>FTP via a HTTP proxy: <guimenuitem>Install from an FTP server through a http proxy</guimenuitem></term> <listitem> <indexterm> <primary>FTP</primary> <secondary>via a HTTP proxy</secondary> </indexterm> <para>This option instructs <application>sysinstall</application> to use the HTTP protocol (like a web browser) 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 a HTTP proxy. In this case, you have to specify the proxy in addition to the FTP server.</para> </listitem> </varlistentry> </variablelist> <para>For a proxy FTP server, you should usually give the name of the server you really want as a part of the username, after an <quote>@</quote> sign. The proxy server then <quote>fakes</quote> the real server. For example, assuming you want to install from <hostid role="fqdn">ftp.FreeBSD.org</hostid>, using the proxy FTP server <hostid role="fqdn">foo.example.com</hostid>, listening on port 1234.</para> <para>In this case, you go to the options menu, set the FTP username to <literal>ftp@ftp.FreeBSD.org</literal>, and the password to your email address. As your installation media, you specify FTP (or passive FTP, if the proxy supports it), and the URL <literal>ftp://foo.example.com:1234/pub/FreeBSD</literal>.</para> <para>Since <filename>/pub/FreeBSD</filename> from <hostid role="fqdn">ftp.FreeBSD.org</hostid> is proxied under <hostid role="fqdn">foo.example.com</hostid>, you are able to install from <emphasis>that</emphasis> machine (which will fetch the files from <hostid role="fqdn">ftp.FreeBSD.org</hostid> as your installation requests them).</para> </note> </sect1> <sect1 id="install-final-warning"> <title>Committing to the Installation</title> <para>The installation can now proceed if desired. This is also the last chance for aborting the installation to prevent changes to the hard drive.</para> <screen> User Confirmation Requested Last Chance! Are you SURE you want to continue the installation? If you're running this on a disk with data you wish to save then WE STRONGLY ENCOURAGE YOU TO MAKE PROPER BACKUPS before proceeding! We can take no responsibility for lost disk contents! [ Yes ] No</screen> <para>Select &gui.yes; and press <keycap>Enter</keycap> to proceed.</para> <para>The installation time will vary according to the distribution chosen, installation media, and the speed of the computer. There will be a series of messages displayed indicating the status.</para> <para>The installation is complete when the following message is displayed:</para> <screen> Message Congratulations! You now have FreeBSD installed on your system. We will now move on to the final configuration questions. For any option you do not wish to configure, simply select No. If you wish to re-enter this utility after the system is up, you may do so by typing: /usr/sbin/sysinstall. [ OK ] [ Press enter or space ]</screen> <para>Press <keycap>Enter</keycap> to proceed with post-installation configurations.</para> <para>Selecting &gui.no; and pressing <keycap>Enter</keycap> will abort the installation so no changes will be made to your system. The following message will appear:</para> <screen> Message Installation complete with some errors. You may wish to scroll through the debugging messages on VTY1 with the scroll-lock feature. You can also choose "No" at the next prompt and go back into the installation menus to retry whichever operations have failed. [ OK ]</screen> <para>This message is generated because nothing was installed. Pressing <keycap>Enter</keycap> will return to the Main Installation Menu to exit the installation.</para> </sect1> <sect1 id="install-post"> <title>Post-installation</title> <para>Configuration of various options follows the successful installation. An option can be configured by re-entering the configuration options before booting the new FreeBSD system or after installation using <command>sysinstall</command> and selecting <guimenuitem>Configure</guimenuitem>.</para> <sect2 id="inst-network-dev"> <title>Network Device Configuration</title> <para>If you previously configured PPP for an FTP install, this screen will not display and can be configured later as described above.</para> <para>For detailed information on Local Area Networks and configuring FreeBSD as a gateway/router refer to the <link linkend="advanced-networking">Advanced Networking</link> chapter.</para> <screen> User Confirmation Requested Would you like to configure any Ethernet or PPP network devices? [ Yes ] No</screen> <para>To configure a network device, select &gui.yes; and press <keycap>Enter</keycap>. Otherwise, select &gui.no; to continue.</para> <figure id="ed-config1"> <title>Selecting an Ethernet Device</title> <mediaobject> <imageobject> <imagedata fileref="install/ed0-conf" format="PNG"> </imageobject> </mediaobject> </figure> <para>Select the interface to be configured with the arrow keys and press <keycap>Enter</keycap>.</para> <screen> User Confirmation Requested Do you want to try IPv6 configuration of the interface? Yes [ No ]</screen> <para>In this private local area network, the current Internet type protocol (<acronym>IPv4</acronym>) was sufficient and &gui.no; was selected with the arrow keys and <keycap>Enter</keycap> pressed.</para> <para>If you are connected to an existing <acronym>IPv6</acronym> network with an <acronym>RA</acronym> server, then choose &gui.yes; and press <keycap>Enter</keycap>. It will take several seconds to scan for RA servers.</para> <screen> User Confirmation Requested Do you want to try DHCP configuration of the interface? Yes [ No ]</screen> <para>If DHCP (Dynamic Host Configuration Protocol) is not required select &gui.no; with the arrow keys and press <keycap>Enter</keycap>.</para> <para>Selecting &gui.yes; will execute <application>dhclient</application>, and if successful, will fill in the network configuration information automatically. Refer to <xref linkend="network-dhcp"> for more information.</para> <para>The following Network Configuration screen shows the configuration of the Ethernet device for a system that will act as the gateway for a Local Area Network.</para> <figure id="ed-config2"> <title>Set Network Configuration for <replaceable>ed0</replaceable></title> <mediaobject> <imageobject> <imagedata fileref="install/ed0-conf2" format="PNG"> </imageobject> </mediaobject> </figure> <para>Use <keycap>Tab</keycap> to select the information fields and fill in appropriate information:</para> <variablelist> <varlistentry> <term>Host</term> <listitem> <para>The fully-qualified hostname, such as <hostid role="fqdn">k6-2.example.com</hostid> in this case.</para> </listitem> </varlistentry> <varlistentry> <term>Domain</term> <listitem> <para>The name of the domain that your machine is in, such as <hostid role="domainname">example.com</hostid> for this case.</para> </listitem> </varlistentry> <varlistentry> <term>IPv4 Gateway</term> <listitem> <para>IP address of host forwarding packets to non-local destinations. You must fill this in if the machine is a node on the network. <emphasis>Leave this field blank</emphasis> if the machine is the gateway to the Internet for the network. The IPv4 Gateway is also known as the default gateway or default route.</para> </listitem> </varlistentry> <varlistentry> <term>Name server</term> <listitem> <para>IP address of your local DNS server. There is no local DNS server on this private local area network so the IP address of the provider's DNS server (<hostid role="ipaddr"></hostid>) was used.</para> </listitem> </varlistentry> <varlistentry> <term>IPv4 address</term> <listitem> <para>The IP address to be used for this interface was <hostid role="ipaddr"></hostid></para> </listitem> </varlistentry> <varlistentry> <term>Netmask</term> <listitem> <para>The address block being used for this local area network is <hostid role="ipaddr"></hostid> - <hostid role="ipaddr"></hostid> with a netmask of <hostid role="netmask"></hostid>.</para> </listitem> </varlistentry> <varlistentry> <term>Extra options to ifconfig</term> <listitem> <para>Any interface-specific options to <command>ifconfig</command> you would like to add. There were none in this case.</para> </listitem> </varlistentry> </variablelist> <para>Use <keycap>Tab</keycap> to select &gui.ok; when finished and press <keycap>Enter</keycap>.</para> <screen> User Confirmation Requested Would you like to bring the ed0 interface up right now? [ Yes ] No</screen> <para>Choosing &gui.yes; and pressing <keycap>Enter</keycap> will bring the machine up on the network and be ready for use. However, this does not accomplish much during installation, since the machine still needs to be rebooted.</para> </sect2> <sect2 id="gateway"> <title>Configure Gateway</title> <screen> User Confirmation Requested Do you want this machine to function as a network gateway? [ Yes ] No</screen> <para>If the machine will be acting as the gateway for a local area network and forwarding packets between other machines then select &gui.yes; and press <keycap>Enter</keycap>. If the machine is a node on a network then select &gui.no; and press <keycap>Enter</keycap> to continue.</para> </sect2> <sect2 id="inetd-services"> <title>Configure Internet Services</title> <screen> User Confirmation Requested Do you want to configure inetd and the network services that it provides? Yes [ No ]</screen> <para>If &gui.no; is selected, various services such <application>telnetd</application> will not be enabled. This means that remote users will not be able to <application>telnet</application> into this machine. Local users will still be able to access remote machines with <application>telnet</application>.</para> <para>These services can be enabled after installation by editing <filename>/etc/inetd.conf</filename> with your favorite text editor. See <xref linkend="network-inetd-overview"> for more information.</para> <para>Select &gui.yes; if you wish to configure these services during install. An additional confirmation will display:</para> <screen> User Confirmation Requested The Internet Super Server (inetd) allows a number of simple Internet services to be enabled, including finger, ftp and telnetd. Enabling these services may increase risk of security problems by increasing the exposure of your system. With this in mind, do you wish to enable inetd? [ Yes ] No</screen> <para>Select &gui.yes; to continue.</para> <screen> User Confirmation Requested inetd(8) relies on its configuration file, /etc/inetd.conf, to determine which of its Internet services will be available. The default FreeBSD inetd.conf(5) leaves all services disabled by default, so they must be specifically enabled in the configuration file before they will function, even once inetd(8) is enabled. Note that services for IPv6 must be separately enabled from IPv4 services. Select [Yes] now to invoke an editor on /etc/inetd.conf, or [No] to use the current settings. [ Yes ] No</screen> <para>Selecting &gui.yes; will allow adding services by deleting the <literal>#</literal> at the beginning of a line.</para> <figure id="inetd-edit"> <title>Editing <filename>inetd.conf</filename></title> <mediaobject> <imageobject> <imagedata fileref="install/edit-inetd-conf" format="PNG"> </imageobject> </mediaobject> </figure> <para>After adding the desired services, pressing <keycap>Esc</keycap> will display a menu which will allow exiting and saving the changes.</para> </sect2> <sect2 id="ssh-login"> <title>Enabling SSH login</title> <indexterm> <primary>SSH</primary> <secondary>sshd</secondary> </indexterm> <screen> User Confirmation Requested Would you like to enable SSH login? Yes [ No ]</screen> <para>Selecting &gui.yes; will enable &man.sshd.8;, the daemon program for <application>OpenSSH</application>. This will allow secure remote access to your machine. For more information about <application>OpenSSH</application> see <xref linkend="openssh">.</para> </sect2> <sect2 id="ftpanon"> <title>Anonymous FTP</title> <indexterm> <primary>FTP</primary> <secondary>anonymous</secondary> </indexterm> <screen> User Confirmation Requested Do you want to have anonymous FTP access to this machine? Yes [ No ]</screen> <sect3 id="deny-anon"> <title>Deny Anonymous FTP</title> <para>Selecting the default &gui.no; and pressing <keycap>Enter</keycap> will still allow users who have accounts with passwords to use FTP to access the machine.</para> </sect3> <sect3 id="ftpallow"> <title>Allow Anonymous FTP</title> <para>Anyone can access your machine if you elect to allow anonymous FTP connections. The security implications should be considered before enabling this option. For more information about security see <xref linkend="security">.</para> <para>To allow anonymous FTP, use the arrow keys to select &gui.yes; and press <keycap>Enter</keycap>. An additional confirmation will display:</para> <screen> User Confirmation Requested Anonymous FTP permits un-authenticated users to connect to the system FTP server, if FTP service is enabled. Anonymous users are restricted to a specific subset of the file system, and the default configuration provides a drop-box incoming directory to which uploads are permitted. You must separately enable both inetd(8), and enable ftpd(8) in inetd.conf(5) for FTP services to be available. If you did not do so earlier, you will have the opportunity to enable inetd(8) again later. If you want the server to be read-only you should leave the upload directory option empty and add the -r command-line option to ftpd(8) in inetd.conf(5) Do you wish to continue configuring anonymous FTP? [ Yes ] No</screen> <para>This message informs you that the FTP service will also have to be enabled in <filename>/etc/inetd.conf</filename> if you want to allow anonymous FTP connections, see <xref linkend="inetd-services">. Select &gui.yes; and press <keycap>Enter</keycap> to continue; the following screen will display:</para> <figure id="anon-ftp2"> <title>Default Anonymous FTP Configuration</title> <mediaobject> <imageobject> <imagedata fileref="install/ftp-anon1" format="PNG"> </imageobject> </mediaobject> </figure> <para>Use <keycap>Tab</keycap> to select the information fields and fill in appropriate information:</para> <variablelist> <varlistentry> <term>UID</term> <listitem> <para>The user ID you wish to assign to the anonymous FTP user. All files uploaded will be owned by this ID.</para> </listitem> </varlistentry> <varlistentry> <term>Group</term> <listitem> <para>Which group you wish the anonymous FTP user to be in.</para> </listitem> </varlistentry> <varlistentry> <term>Comment</term> <listitem> <para>String describing this user in <filename>/etc/passwd</filename>.</para> </listitem> </varlistentry> <varlistentry> <term>FTP Root Directory</term> <listitem> <para>Where files available for anonymous FTP will be kept.</para> </listitem> </varlistentry> <varlistentry> <term>Upload Subdirectory</term> <listitem> <para>Where files uploaded by anonymous FTP users will go.</para> </listitem> </varlistentry> </variablelist> <para>The FTP root directory will be put in <filename>/var</filename> by default. If you do not have enough room there for the anticipated FTP needs, the <filename>/usr</filename> directory could be used by setting the FTP root directory to <filename>/usr/ftp</filename>.</para> <para>When you are satisfied with the values, press <keycap>Enter</keycap> to continue.</para> <screen> User Confirmation Requested Create a welcome message file for anonymous FTP users? [ Yes ] No</screen> <para>If you select &gui.yes; and press <keycap>Enter</keycap>, an editor will automatically start allowing you to edit the message.</para> <figure id="anon-ftp4"> <title>Edit the FTP Welcome Message</title> <mediaobject> <imageobject> <imagedata fileref="install/ftp-anon2" format="PNG"> </imageobject> </mediaobject> </figure> <para>This is a text editor called <command>ee</command>. Use the instructions to change the message or change the message later using a text editor of your choice. Note the file name/location at the bottom of the editor screen.</para> <para>Press <keycap>Esc</keycap> and a pop-up menu will default to <guimenuitem>a) leave editor</guimenuitem>. Press <keycap>Enter</keycap> to exit and continue. Press <keycap>Enter</keycap> again to save changes if you made any.</para> </sect3> </sect2> <sect2 id="nfsconf"> <title>Configure Network File System</title> <para>Network File System (NFS) allows sharing of files across a network. A machine can be configured as a server, a client, or both. Refer to <xref linkend="network-nfs"> for a more information.</para> <sect3 id="nsf-server-options"> <title>NFS Server</title> <screen> User Confirmation Requested Do you want to configure this machine as an NFS server? Yes [ No ]</screen> <para>If there is no need for a Network File System server, select &gui.no; and press <keycap>Enter</keycap>.</para> <para>If &gui.yes; is chosen, a message will pop-up indicating that the <filename>exports</filename> file must be created.</para> <screen> Message Operating as an NFS server means that you must first configure an /etc/exports file to indicate which hosts are allowed certain kinds of access to your local filesystems. Press [Enter] now to invoke an editor on /etc/exports [ OK ]</screen> <para>Press <keycap>Enter</keycap> to continue. A text editor will start allowing the <filename>exports</filename> file to be created and edited.</para> <figure id="nfs-server-edit"> <title>Editing <filename>exports</filename></title> <mediaobject> <imageobject> <imagedata fileref="install/nfs-server-edit" format="PNG"> </imageobject> </mediaobject> </figure> <para>Use the instructions to add the actual exported filesystems now or later using a text editor of your choice. Note the file name/location at the bottom of the editor screen.</para> <para>Press <keycap>Esc</keycap> and a pop-up menu will default to <guimenuitem>a) leave editor</guimenuitem>. Press <keycap>Enter</keycap> to exit and continue.</para> </sect3> <sect3 id="nfs-client-options"> <title>NFS Client</title> <para>The NFS client allows your machine to access NFS servers.</para> <screen> User Confirmation Requested Do you want to configure this machine as an NFS client? Yes [ No ]</screen> <para>With the arrow keys, select &gui.yes; or &gui.no; as appropriate and press <keycap>Enter</keycap>.</para> </sect3> </sect2> <sect2 id="console"> <title>System Console Settings</title> <para>There are several options available to customize the system console.</para> <screen> User Confirmation Requested Would you like to customize your system console settings? [ Yes ] No</screen> <para>To view and configure the options, select &gui.yes; and press <keycap>Enter</keycap>.</para> <figure id="saver-options"> <title>System Console Configuration Options</title> <mediaobject> <imageobject> <imagedata fileref="install/console-saver1" format="PNG"> </imageobject> </mediaobject> </figure> <para>A commonly used option is the screen saver. Use the arrow keys to select <guimenuitem>Saver</guimenuitem> and then press <keycap>Enter</keycap>.</para> <figure id="saver-select"> <title>Screen Saver Options</title> <mediaobject> <imageobject> <imagedata fileref="install/console-saver2" format="PNG"> </imageobject> </mediaobject> </figure> <para>Select the desired screen saver using the arrow keys and then press <keycap>Enter</keycap>. The System Console Configuration menu will redisplay.</para> <para>The default time interval is 300 seconds. To change the time interval, select <guimenuitem>Saver</guimenuitem> again. At the Screen Saver Options menu, select <guimenuitem>Timeout</guimenuitem> using the arrow keys and press <keycap>Enter</keycap>. A pop-up menu will appear:</para> <figure id="saver-timeout"> <title>Screen Saver Timeout</title> <mediaobject> <imageobject> <imagedata fileref="install/console-saver3" format="PNG"> </imageobject> </mediaobject> </figure> <para>The value can be changed, then select &gui.ok; and press <keycap>Enter</keycap> to return to the System Console Configuration menu.</para> <figure id="saver-exit"> <title>System Console Configuration Exit</title> <mediaobject> <imageobject> <imagedata fileref="install/console-saver4" format="PNG"> </imageobject> </mediaobject> </figure> <para>Selecting <guimenuitem>Exit</guimenuitem> and pressing <keycap>Enter</keycap> will continue with the post-installation configurations.</para> </sect2> <sect2 id="timezone"> <title>Setting the Time Zone</title> <para>Setting the time zone for your machine will allow it to automatically correct for any regional time changes and perform other time zone related functions properly.</para> <para>The example shown is for a machine located in the Eastern time zone of the United States. Your selections will vary according to your geographical location.</para> <screen> User Confirmation Requested Would you like to set this machine's time zone now? [ Yes ] No</screen> <para>Select &gui.yes; and press <keycap>Enter</keycap> to set the time zone.</para> <screen> User Confirmation Requested Is this machine's CMOS clock set to UTC? If it is set to local time or you don't know, please choose NO here! Yes [ No ]</screen> <para>Select &gui.yes; or &gui.no; according to how the machine's clock is configured and press <keycap>Enter</keycap>.</para> <figure id="set-timezone-region"> <title>Select Your Region</title> <mediaobject> <imageobject> <imagedata fileref="install/timezone1" format="PNG"> </imageobject> </mediaobject> </figure> <para>The appropriate region is selected using the arrow keys and then pressing <keycap>Enter</keycap>.</para> <figure id="set-timezone-country"> <title>Select Your Country</title> <mediaobject> <imageobject> <imagedata fileref="install/timezone2" format="PNG"> </imageobject> </mediaobject> </figure> <para>Select the appropriate country using the arrow keys and press <keycap>Enter</keycap>.</para> <figure id="set-timezone-locality"> <title>Select Your Time Zone</title> <mediaobject> <imageobject> <imagedata fileref="install/timezone3" format="PNG"> </imageobject> </mediaobject> </figure> <para>The appropriate time zone is selected using the arrow keys and pressing <keycap>Enter</keycap>.</para> <screen> Confirmation Does the abbreviation 'EDT' look reasonable? [ Yes ] No</screen> <para>Confirm the abbreviation for the time zone is correct. If it looks okay, press <keycap>Enter</keycap> to continue with the post-installation configuration.</para> </sect2> <sect2 id="linuxcomp"> <title>Linux Compatibility</title> <note> <para>This part only applies to &os;&nbsp;7.<replaceable>X</replaceable> installation, if you install &os;&nbsp;8.<replaceable>X</replaceable> this screen will not be proposed.</para> </note> <screen> User Confirmation Requested Would you like to enable Linux binary compatibility? [ Yes ] No</screen> <para>Selecting &gui.yes; and pressing <keycap>Enter</keycap> will allow running Linux software on FreeBSD. The install will add the appropriate packages for Linux compatibility.</para> <para>If installing by FTP, the machine will need to be connected to the Internet. Sometimes a remote ftp site will not have all the distributions like the Linux binary compatibility. This can be installed later if necessary.</para> </sect2> <sect2 id="mouse"> <title>Mouse Settings</title> <para>This option will allow you to cut and paste text in the console and user programs with a 3-button mouse. If using a 2-button mouse, refer to manual page, &man.moused.8;, after installation for details on emulating the 3-button style. This example depicts a non-USB mouse configuration (such as a PS/2 or COM port mouse):</para> <screen> User Confirmation Requested Does this system have a PS/2, serial, or bus mouse? [ Yes ] No </screen> <para>Select &gui.yes; for a PS/2, serial or bus mouse, or &gui.no; for a USB mouse and press <keycap>Enter</keycap>.</para> <figure id="mouse-protocol"> <title>Select Mouse Protocol Type</title> <mediaobject> <imageobject> <imagedata fileref="install/mouse1" format="PNG"> </imageobject> </mediaobject> </figure> <para>Use the arrow keys to select <guimenuitem>Type</guimenuitem> and press <keycap>Enter</keycap>.</para> <figure id="set-mouse-protocol"> <title>Set Mouse Protocol</title> <mediaobject> <imageobject> <imagedata fileref="install/mouse2" format="PNG"> </imageobject> </mediaobject> </figure> <para>The mouse used in this example is a PS/2 type, so the default <guimenuitem>Auto</guimenuitem> was appropriate. To change protocol, use the arrow keys to select another option. Ensure that &gui.ok; is highlighted and press <keycap>Enter</keycap> to exit this menu.</para> <figure id="config-mouse-port"> <title>Configure Mouse Port</title> <mediaobject> <imageobject> <imagedata fileref="install/mouse3" format="PNG"> </imageobject> </mediaobject> </figure> <para>Use the arrow keys to select <guimenuitem>Port</guimenuitem> and press <keycap>Enter</keycap>.</para> <figure id="set-mouse-port"> <title>Setting the Mouse Port</title> <mediaobject> <imageobject> <imagedata fileref="install/mouse4" format="PNG"> </imageobject> </mediaobject> </figure> <para>This system had a PS/2 mouse, so the default <guimenuitem>PS/2</guimenuitem> was appropriate. To change the port, use the arrow keys and then press <keycap>Enter</keycap>.</para> <figure id="test-daemon"> <title>Enable the Mouse Daemon</title> <mediaobject> <imageobject> <imagedata fileref="install/mouse5" format="PNG"> </imageobject> </mediaobject> </figure> <para>Last, use the arrow keys to select <guimenuitem>Enable</guimenuitem>, and press <keycap>Enter</keycap> to enable and test the mouse daemon.</para> <figure id="test-mouse-daemon"> <title>Test the Mouse Daemon</title> <mediaobject> <imageobject> <imagedata fileref="install/mouse6" format="PNG"> </imageobject> </mediaobject> </figure> <para>Move the mouse around the screen and verify the cursor shown responds properly. If it does, select &gui.yes; and press <keycap>Enter</keycap>. If not, the mouse has not been configured correctly &mdash; select &gui.no; and try using different configuration options.</para> <para>Select <guimenuitem>Exit</guimenuitem> with the arrow keys and press <keycap>Enter</keycap> to return to continue with the post-installation configuration.</para> </sect2> <sect2 id="packages"> <title>Install Packages</title> <para>Packages are pre-compiled binaries and are a convenient way to install software.</para> <para>Installation of one package is shown for purposes of illustration. Additional packages can also be added at this time if desired. After installation <command>sysinstall</command> can be used to add additional packages.</para> <screen> User Confirmation Requested The FreeBSD package collection is a collection of hundreds of ready-to-run applications, from text editors to games to WEB servers and more. Would you like to browse the collection now? [ Yes ] No</screen> <para>Selecting &gui.yes; and pressing <keycap>Enter</keycap> will be followed by the Package Selection screens:</para> <figure id="package-category"> <title>Select Package Category</title> <mediaobject> <imageobject> <imagedata fileref="install/pkg-cat" format="PNG"> </imageobject> </mediaobject> </figure> <para>Only packages on the current installation media are available for installation at any given time.</para> <para>All packages available will be displayed if <guimenuitem>All</guimenuitem> is selected or you can select a particular category. Highlight your selection with the arrow keys and press <keycap>Enter</keycap>.</para> <para>A menu will display showing all the packages available for the selection made:</para> <figure id="package-select"> <title>Select Packages</title> <mediaobject> <imageobject> <imagedata fileref="install/pkg-sel" format="PNG"> </imageobject> </mediaobject> </figure> <para>The <application>bash</application> shell is shown selected. Select as many as desired by highlighting the package and pressing the <keycap>Space</keycap> key. A short description of each package will appear in the lower left corner of the screen.</para> <para>Pressing the <keycap>Tab</keycap> key will toggle between the last selected package, &gui.ok;, and &gui.cancel;.</para> <para>When you have finished marking the packages for installation, press <keycap>Tab</keycap> once to toggle to the &gui.ok; and press <keycap>Enter</keycap> to return to the Package Selection menu.</para> <para>The left and right arrow keys will also toggle between &gui.ok; and &gui.cancel;. This method can also be used to select &gui.ok; and press <keycap>Enter</keycap> to return to the Package Selection menu.</para> <figure id="package-install"> <title>Install Packages</title> <mediaobject> <imageobject> <imagedata fileref="install/pkg-install" format="PNG"> </imageobject> </mediaobject> </figure> <para>Use the <keycap>Tab</keycap> and arrow keys to select <guibutton>[&nbsp;Install&nbsp;]</guibutton> and press <keycap>Enter</keycap>. You will then need to confirm that you want to install the packages:</para> <figure id="package-install-confirm"> <title>Confirm Package Installation</title> <mediaobject> <imageobject> <imagedata fileref="install/pkg-confirm" format="PNG"> </imageobject> </mediaobject> </figure> <para>Selecting &gui.ok; and pressing <keycap>Enter</keycap> will start the package installation. Installing messages will appear until completed. Make note if there are any error messages.</para> <para>The final configuration continues after packages are installed. If you end up not selecting any packages, and wish to return to the final configuration, select <guibutton>Install</guibutton> anyways.</para> </sect2> <sect2 id="addusers"> <title>Add Users/Groups</title> <para>You should add at least one user during the installation so that you can use the system without being logged in as <username>root</username>. The root partition is generally small and running applications as <username>root</username> can quickly fill it. A bigger danger is noted below:</para> <screen> User Confirmation Requested Would you like to add any initial user accounts to the system? Adding at least one account for yourself at this stage is suggested since working as the "root" user is dangerous (it is easy to do things which adversely affect the entire system). [ Yes ] No</screen> <para>Select &gui.yes; and press <keycap>Enter</keycap> to continue with adding a user.</para> <figure id="add-user2"> <title>Select User</title> <mediaobject> <imageobject> <imagedata fileref="install/adduser1" format="PNG"> </imageobject> </mediaobject> </figure> <para>Select <guimenuitem>User</guimenuitem> with the arrow keys and press <keycap>Enter</keycap>.</para> <figure id="add-user3"> <title>Add User Information</title> <mediaobject> <imageobject> <imagedata fileref="install/adduser2" format="PNG"> </imageobject> </mediaobject> </figure> <para>The following descriptions will appear in the lower part of the screen as the items are selected with <keycap>Tab</keycap> to assist with entering the required information:</para> <variablelist> <varlistentry> <term>Login ID</term> <listitem> <para>The login name of the new user (mandatory).</para> </listitem> </varlistentry> <varlistentry> <term>UID</term> <listitem> <para>The numerical ID for this user (leave blank for automatic choice).</para> </listitem> </varlistentry> <varlistentry> <term>Group</term> <listitem> <para>The login group name for this user (leave blank for automatic choice).</para> </listitem> </varlistentry> <varlistentry> <term>Password</term> <listitem> <para>The password for this user (enter this field with care!).</para> </listitem> </varlistentry> <varlistentry> <term>Full name</term> <listitem> <para>The user's full name (comment).</para> </listitem> </varlistentry> <varlistentry> <term>Member groups</term> <listitem> <para>The groups this user belongs to (i.e., gets access rights for).</para> </listitem> </varlistentry> <varlistentry> <term>Home directory</term> <listitem> <para>The user's home directory (leave blank for default).</para> </listitem> </varlistentry> <varlistentry> <term>Login shell</term> <listitem> <para>The user's login shell (leave blank for default, e.g., <filename>/bin/sh</filename>).</para> </listitem> </varlistentry> </variablelist> <para>The login shell was changed from <filename>/bin/sh</filename> to <filename>/usr/local/bin/bash</filename> to use the <application>bash</application> shell that was previously installed as a package. Do not try to use a shell that does not exist or you will not be able to login. The most common shell used in the BSD-world is the C shell, which can be indicated as <filename>/bin/tcsh</filename>.</para> <para>The user was also added to the <groupname>wheel</groupname> group to be able to become a superuser with <username>root</username> privileges.</para> <para>When you are satisfied, press &gui.ok; and the User and Group Management menu will redisplay:</para> <figure id="add-user4"> <title>Exit User and Group Management</title> <mediaobject> <imageobject> <imagedata fileref="install/adduser3" format="PNG"> </imageobject> </mediaobject> </figure> <para>Groups can also be added at this time if specific needs are known. Otherwise, this may be accessed through using <command>sysinstall</command> after installation is completed.</para> <para>When you are finished adding users, select <guimenuitem>Exit</guimenuitem> with the arrow keys and press <keycap>Enter</keycap> to continue the installation.</para> </sect2> <sect2 id="rootpass"> <title>Set the <username>root</username> Password</title> <screen> Message Now you must set the system manager's password. This is the password you'll use to log in as "root". [ OK ] [ Press enter or space ]</screen> <para>Press <keycap>Enter</keycap> to set the <username>root</username> password.</para> <para>The password will need to be typed in twice correctly. Needless to say, make sure you have a way of finding the password if you forget. Notice that the password you type in is not echoed, nor are asterisks displayed.</para> <screen>New password: Retype new password :</screen> <para>The installation will continue after the password is successfully entered.</para> </sect2> <sect2 id="exit-inst"> <title>Exiting Install</title> <para>If you need to configure <link linkend="network-services">additional network services</link> or any other configuration, you can do it at this point or after installation with <command>sysinstall</command>.</para> <screen> User Confirmation Requested Visit the general configuration menu for a chance to set any last options? Yes [ No ]</screen> <para>Select &gui.no; with the arrow keys and press <keycap>Enter</keycap> to return to the Main Installation Menu.</para> <figure id="final-main"> <title>Exit Install</title> <mediaobject> <imageobject> <imagedata fileref="install/mainexit" format="PNG"> </imageobject> </mediaobject> </figure> <para>Select <guibutton>[X Exit Install]</guibutton> with the arrow keys and press <keycap>Enter</keycap>. You will be asked to confirm exiting the installation:</para> <screen> User Confirmation Requested Are you sure you wish to exit? The system will reboot. [ Yes ] No</screen> <para>Select &gui.yes;. If you are booting from the CDROM drive the following message will remind you to remove the disk:</para> <screen> Message Be sure to remove the media from the drive. [ OK ] [ Press enter or space ]</screen> <para>The CDROM drive is locked until the machine starts to reboot then the disk can be removed from drive (quickly). Press &gui.ok; to reboot.</para> <para>The system will reboot so watch for any error messages that may appear, see <xref linkend="freebsdboot"> for more details.</para> </sect2> <sect2 id="network-services"> <sect2info> <authorgroup> <author> <firstname>Tom</firstname> <surname>Rhodes</surname> <contrib>Contributed by </contrib> </author> </authorgroup> </sect2info> <title>Configure Additional Network Services</title> <para>Configuring network services can be a daunting task for new users if they lack previous knowledge in this area. Networking, including the Internet, is critical to all modern operating systems including &os;; as a result, it is very useful to have some understanding &os;'s extensive networking capabilities. Doing this during the installation will ensure users have some understanding of the various services available to them.</para> <para>Network services are programs that accept input from anywhere on the network. Every effort is made to make sure these programs will not do anything <quote>harmful</quote>. Unfortunately, programmers are not perfect and through time there have been cases where bugs in network services have been exploited by attackers to do bad things. It is important that you only enable the network services you know that you need. If in doubt it is best if you do not enable a network service until you find out that you do need it. You can always enable it later by re-running <application>sysinstall</application> or by using the features provided by the <filename>/etc/rc.conf</filename> file.</para> <para>Selecting the <guimenu>Networking</guimenu> option will display a menu similar to the one below:</para> <figure id="network-configuration"> <title>Network Configuration Upper-level</title> <mediaobject> <imageobject> <imagedata fileref="install/net-config-menu1" format="PNG"> </imageobject> </mediaobject> </figure> <para>The first option, <guimenuitem>Interfaces</guimenuitem>, was previously covered during the <xref linkend="inst-network-dev">, thus this option can safely be ignored.</para> <para>Selecting the <guimenuitem>AMD</guimenuitem> option adds support for the <acronym>BSD</acronym> automatic mount utility. This is usually used in conjunction with the <acronym>NFS</acronym> protocol (see below) for automatically mounting remote file systems. No special configuration is required here.</para> <para>Next in line is the <guimenuitem>AMD Flags</guimenuitem> option. When selected, a menu will pop up for you to enter specific <acronym>AMD</acronym> flags. The menu already contains a set of default options:</para> <screen>-a /.amd_mnt -l syslog /host /etc/amd.map /net /etc/amd.map</screen> <para>The <option>-a</option> option sets the default mount location which is specified here as <filename>/.amd_mnt</filename>. The <option>-l</option> option specifies the default <filename>log</filename> file; however, when <literal>syslogd</literal> is used all log activity will be sent to the system log daemon. The <filename class="directory">/host</filename> directory is used to mount an exported file system from a remote host, while <filename class="directory">/net</filename> directory is used to mount an exported file system from an <acronym>IP</acronym> address. The <filename>/etc/amd.map</filename> file defines the default options for <acronym>AMD</acronym> exports.</para> <indexterm> <primary>FTP</primary> <secondary>anonymous</secondary> </indexterm> <para>The <guimenuitem>Anon FTP</guimenuitem> option permits anonymous <acronym>FTP</acronym> connections. Select this option to make this machine an anonymous <acronym>FTP</acronym> server. Be aware of the security risks involved with this option. Another menu will be displayed to explain the security risks and configuration in depth.</para> <para>The <guimenuitem>Gateway</guimenuitem> configuration menu will set the machine up to be a gateway as explained previously. This can be used to unset the <guimenuitem>Gateway</guimenuitem> option if you accidentally selected it during the installation process.</para> <para>The <guimenuitem>Inetd</guimenuitem> option can be used to configure or completely disable the &man.inetd.8; daemon as discussed above.</para> <para>The <guimenuitem>Mail</guimenuitem> option is used to configure the system's default <acronym>MTA</acronym> or Mail Transfer Agent. Selecting this option will bring up the following menu:</para> <figure id="mta-selection"> <title>Select a default MTA</title> <mediaobject> <imageobject> <imagedata fileref="install/mta-main" format="PNG"> </imageobject> </mediaobject> </figure> <para>Here you are offered a choice as to which <acronym>MTA</acronym> to install and set as the default. An <acronym>MTA</acronym> is nothing more than a mail server which delivers email to users on the system or the Internet.</para> <para>Selecting <guimenuitem>Sendmail</guimenuitem> will install the popular <application>sendmail</application> server which is the &os; default. The <guimenuitem>Sendmail local</guimenuitem> option will set <application>sendmail</application> to be the default <acronym>MTA</acronym>, but disable its ability to receive incoming email from the Internet. The other options here, <guimenuitem>Postfix</guimenuitem> and <guimenuitem>Exim</guimenuitem> act similar to <guimenuitem>Sendmail</guimenuitem>. They both deliver email; however, some users prefer these alternatives to the <application>sendmail</application> <acronym>MTA</acronym>.</para> <para>After selecting an <acronym>MTA</acronym>, or choosing not to select an MTA, the network configuration menu will appear with the next option being <guimenuitem>NFS client</guimenuitem>.</para> <para>The <guimenuitem>NFS client</guimenuitem> option will configure the system to communicate with a server via <acronym>NFS</acronym>. An <acronym>NFS</acronym> server makes file systems available to other machines on the network via the <acronym>NFS</acronym> protocol. If this is a stand-alone machine, this option can remain unselected. The system may require more configuration later; see <xref linkend="network-nfs"> for more information about client and server configuration.</para> <para>Below that option is the <guimenuitem>NFS server</guimenuitem> option, permitting you to set the system up as an <acronym>NFS</acronym> server. This adds the required information to start up the <acronym>RPC</acronym> remote procedure call services. <acronym>RPC</acronym> is used to coordinate connections between hosts and programs.</para> <para>Next in line is the <guimenuitem>Ntpdate</guimenuitem> option, which deals with time synchronization. When selected, a menu like the one below shows up:</para> <figure id="Ntpdate-config"> <title>Ntpdate Configuration</title> <mediaobject> <imageobject> <imagedata fileref="install/ntp-config" format="PNG"> </imageobject> </mediaobject> </figure> <para>From this menu, select the server which is the closest to your location. Selecting a close one will make the time synchronization more accurate as a server further from your location may have more connection latency.</para> <para>The next option is the <acronym>PCNFSD</acronym> selection. This option will install the <filename role="package">net/pcnfsd</filename> package from the Ports Collection. This is a useful utility which provides <acronym>NFS</acronym> authentication services for systems which are unable to provide their own, such as Microsoft's &ms-dos; operating system.</para> <para>Now you must scroll down a bit to see the other options:</para> <figure id="Network-configuration-cont"> <title>Network Configuration Lower-level</title> <mediaobject> <imageobject> <imagedata fileref="install/net-config-menu2" format="PNG"> </imageobject> </mediaobject> </figure> <para>The &man.rpcbind.8;, &man.rpc.statd.8;, and &man.rpc.lockd.8; utilities are all used for Remote Procedure Calls (<acronym>RPC</acronym>). The <command>rpcbind</command> utility manages communication between <acronym>NFS</acronym> servers and clients, and is required for <acronym>NFS</acronym> servers to operate correctly. The <application>rpc.statd</application> daemon interacts with the <application>rpc.statd</application> daemon on other hosts to provide status monitoring. The reported status is usually held in the <filename>/var/db/statd.status</filename> file. The next option listed here is the <guimenuitem>rpc.lockd</guimenuitem> option, which, when selected, will provide file locking services. This is usually used with <application>rpc.statd</application> to monitor what hosts are requesting locks and how frequently they request them. While these last two options are marvelous for debugging, they are not required for <acronym>NFS</acronym> servers and clients to operate correctly.</para> <para>As you progress down the list the next item here is <guimenuitem>Routed</guimenuitem>, which is the routing daemon. The &man.routed.8; utility manages network routing tables, discovers multicast routers, and supplies a copy of the routing tables to any physically connected host on the network upon request. This is mainly used for machines which act as a gateway for the local network. When selected, a menu will be presented requesting the default location of the utility. The default location is already defined for you and can be selected with the <keycap>Enter</keycap> key. You will then be presented with yet another menu, this time asking for the flags you wish to pass on to <application>routed</application>. The default is <option>-q</option> and it should already appear on the screen.</para> <para>Next in line is the <guimenuitem>Rwhod</guimenuitem> option which, when selected, will start the &man.rwhod.8; daemon during system initialization. The <command>rwhod</command> utility broadcasts system messages across the network periodically, or collects them when in <quote>consumer</quote> mode. More information can be found in the &man.ruptime.1; and &man.rwho.1; manual pages.</para> <para>The next to the last option in the list is for the &man.sshd.8; daemon. This is the secure shell server for <application>OpenSSH</application> and it is highly recommended over the standard <application>telnet</application> and <acronym>FTP</acronym> servers. The <application>sshd</application> server is used to create a secure connection from one host to another by using encrypted connections.</para> <para>Finally there is the <guimenuitem>TCP Extensions</guimenuitem> option. This enables the <acronym>TCP</acronym> Extensions defined in <acronym>RFC</acronym>&nbsp;1323 and <acronym>RFC</acronym>&nbsp;1644. While on many hosts this can speed up connections, it can also cause some connections to be dropped. It is not recommended for servers, but may be beneficial for stand alone machines.</para> <para>Now that you have configured the network services, you can scroll up to the very top item which is <guimenuitem>X Exit</guimenuitem> and continue on to the next configuration item or simply exit <application>sysinstall</application> in selecting <guimenuitem>X Exit</guimenuitem> twice then <guibutton>[X Exit Install]</guibutton>.</para> </sect2> <sect2 id="freebsdboot"> <title>&os; Bootup</title> <sect3 id="freebsdboot-i386"> <title>&os;/&arch.i386; Bootup</title> <para>If everything went well, you will see messages scroll off the screen and you will arrive at a login prompt. You can view the content of the messages by pressing <keycap>Scroll-Lock</keycap> and using <keycap>PgUp</keycap> and <keycap>PgDn</keycap>. Pressing <keycap>Scroll-Lock</keycap> again will return to the prompt.</para> <para>The entire message may not display (buffer limitation) but it can be viewed from the command line after logging in by typing <command>dmesg</command> at the prompt.</para> <para>Login using the username/password you set during installation (<username>rpratt</username>, in this example). Avoid logging in as <username>root</username> except when necessary.</para> <para>Typical boot messages (version information omitted):</para> <screen>Copyright (c) 1992-2002 The FreeBSD Project. Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. Timecounter "i8254" frequency 1193182 Hz CPU: AMD-K6(tm) 3D processor (300.68-MHz 586-class CPU) Origin = "AuthenticAMD" Id = 0x580 Stepping = 0 Features=0x8001bf&lt;FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,MMX&gt; AMD Features=0x80000800&lt;SYSCALL,3DNow!&gt; real memory = 268435456 (262144K bytes) config&gt; di sn0 config&gt; di lnc0 config&gt; di le0 config&gt; di ie0 config&gt; di fe0 config&gt; di cs0 config&gt; di bt0 config&gt; di aic0 config&gt; di aha0 config&gt; di adv0 config&gt; q avail memory = 256311296 (250304K bytes) Preloaded elf kernel "kernel" at 0xc0491000. Preloaded userconfig_script "/boot/kernel.conf" at 0xc049109c. md0: Malloc disk Using $PIR table, 4 entries at 0xc00fde60 npx0: &lt;math processor&gt; on motherboard npx0: INT 16 interface pcib0: &lt;Host to PCI bridge&gt; on motherboard pci0: &lt;PCI bus&gt; on pcib0 pcib1: &lt;VIA 82C598MVP (Apollo MVP3) PCI-PCI (AGP) bridge&gt; at device 1.0 on pci0 pci1: &lt;PCI bus&gt; on pcib1 pci1: &lt;Matrox MGA G200 AGP graphics accelerator&gt; at 0.0 irq 11 isab0: &lt;VIA 82C586 PCI-ISA bridge&gt; at device 7.0 on pci0 isa0: &lt;ISA bus&gt; on isab0 atapci0: &lt;VIA 82C586 ATA33 controller&gt; port 0xe000-0xe00f at device 7.1 on pci0 ata0: at 0x1f0 irq 14 on atapci0 ata1: at 0x170 irq 15 on atapci0 uhci0: &lt;VIA 83C572 USB controller&gt; port 0xe400-0xe41f irq 10 at device 7.2 on pci0 usb0: &lt;VIA 83C572 USB controller&gt; on uhci0 usb0: USB revision 1.0 uhub0: VIA UHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub0: 2 ports with 2 removable, self powered chip1: &lt;VIA 82C586B ACPI interface&gt; at device 7.3 on pci0 ed0: &lt;NE2000 PCI Ethernet (RealTek 8029)&gt; port 0xe800-0xe81f irq 9 at device 10.0 on pci0 ed0: address 52:54:05:de:73:1b, type NE2000 (16 bit) isa0: too many dependant configs (8) isa0: unexpected small tag 14 fdc0: &lt;NEC 72065B or clone&gt; at port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on isa0 fdc0: FIFO enabled, 8 bytes threshold fd0: &lt;1440-KB 3.5" drive&gt; on fdc0 drive 0 atkbdc0: &lt;keyboard controller (i8042)&gt; at port 0x60-0x64 on isa0 atkbd0: &lt;AT Keyboard&gt; flags 0x1 irq 1 on atkbdc0 kbd0 at atkbd0 psm0: &lt;PS/2 Mouse&gt; irq 12 on atkbdc0 psm0: model Generic PS/2 mouse, device ID 0 vga0: &lt;Generic ISA VGA&gt; at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0 sc0: &lt;System console&gt; at flags 0x1 on isa0 sc0: VGA &lt;16 virtual consoles, flags=0x300&gt; sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0 sio0: type 16550A sio1 at port 0x2f8-0x2ff irq 3 on isa0 sio1: type 16550A ppc0: &lt;Parallel port&gt; at port 0x378-0x37f irq 7 on isa0 ppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode ppc0: FIFO with 16/16/15 bytes threshold ppbus0: IEEE1284 device found /NIBBLE Probing for PnP devices on ppbus0: plip0: &lt;PLIP network interface&gt; on ppbus0 lpt0: &lt;Printer&gt; on ppbus0 lpt0: Interrupt-driven port ppi0: &lt;Parallel I/O&gt; on ppbus0 ad0: 8063MB &lt;IBM-DHEA-38451&gt; [16383/16/63] at ata0-master using UDMA33 ad2: 8063MB &lt;IBM-DHEA-38451&gt; [16383/16/63] at ata1-master using UDMA33 acd0: CDROM &lt;DELTA OTC-H101/ST3 F/W by OIPD&gt; at ata0-slave using PIO4 Mounting root from ufs:/dev/ad0s1a swapon: adding /dev/ad0s1b as swap device Automatic boot in progress... /dev/ad0s1a: FILESYSTEM CLEAN; SKIPPING CHECKS /dev/ad0s1a: clean, 48752 free (552 frags, 6025 blocks, 0.9% fragmentation) /dev/ad0s1f: FILESYSTEM CLEAN; SKIPPING CHECKS /dev/ad0s1f: clean, 128997 free (21 frags, 16122 blocks, 0.0% fragmentation) /dev/ad0s1g: FILESYSTEM CLEAN; SKIPPING CHECKS /dev/ad0s1g: clean, 3036299 free (43175 frags, 374073 blocks, 1.3% fragmentation) /dev/ad0s1e: filesystem CLEAN; SKIPPING CHECKS /dev/ad0s1e: clean, 128193 free (17 frags, 16022 blocks, 0.0% fragmentation) Doing initial network setup: hostname. ed0: flags=8843&lt;UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 inet netmask 0xffffff00 broadcast inet6 fe80::5054::5ff::fede:731b%ed0 prefixlen 64 tentative scopeid 0x1 ether 52:54:05:de:73:1b lo0: flags=8049&lt;UP,LOOPBACK,RUNNING,MULTICAST&gt; mtu 16384 inet6 fe80::1%lo0 prefixlen 64 scopeid 0x8 inet6 ::1 prefixlen 128 inet netmask 0xff000000 Additional routing options: IP gateway=YES TCP keepalive=YES routing daemons:. additional daemons: syslogd. Doing additional network setup:. Starting final network daemons: creating ssh RSA host key Generating public/private rsa1 key pair. Your identification has been saved in /etc/ssh/ssh_host_key. Your public key has been saved in /etc/ssh/ssh_host_key.pub. The key fingerprint is: cd:76:89:16:69:0e:d0:6e:f8:66:d0:07:26:3c:7e:2d root@k6-2.example.com creating ssh DSA host key Generating public/private dsa key pair. Your identification has been saved in /etc/ssh/ssh_host_dsa_key. Your public key has been saved in /etc/ssh/ssh_host_dsa_key.pub. The key fingerprint is: f9:a1:a9:47:c4:ad:f9:8d:52:b8:b8:ff:8c:ad:2d:e6 root@k6-2.example.com. setting ELF ldconfig path: /usr/lib /usr/lib/compat /usr/X11R6/lib /usr/local/lib a.out ldconfig path: /usr/lib/aout /usr/lib/compat/aout /usr/X11R6/lib/aout starting standard daemons: inetd cron sshd usbd sendmail. Initial rc.i386 initialization:. rc.i386 configuring syscons: blank_time screensaver moused. Additional ABI support: linux. Local package initialization:. Additional TCP options:. FreeBSD/i386 (k6-2.example.com) (ttyv0) login: rpratt Password:</screen> <para>Generating the RSA and DSA keys may take some time on slower machines. This happens only on the initial boot-up of a new installation. Subsequent boots will be faster.</para> <para>If the X server has been configured and a Default Desktop chosen, it can be started by typing <command>startx</command> at the command line.</para> </sect3> </sect2> <sect2 id="shutdown"> <title>FreeBSD Shutdown</title> <para>It is important to properly shutdown the operating system. Do not just turn off power. First, become a superuser by typing <command>su</command> at the command line and entering the <username>root</username> password. This will work only if the user is a member of the <groupname>wheel</groupname> group. Otherwise, login as <username>root</username> and use <command>shutdown -h now</command>.</para> <screen>The operating system has halted. Please press any key to reboot.</screen> <para>It is safe to turn off the power after the shutdown command has been issued and the message <quote>Please press any key to reboot</quote> appears. If any key is pressed instead of turning off the power switch, the system will reboot.</para> <para>You could also use the <keycombo action="simul"> <keycap>Ctrl</keycap> <keycap>Alt</keycap> <keycap>Del</keycap> </keycombo> key combination to reboot the system, however this is not recommended during normal operation.</para> </sect2> </sect1> <sect1 id="install-trouble"> <title>Troubleshooting</title> <indexterm> <primary>installation</primary> <secondary>troubleshooting</secondary> </indexterm> <para>The following section covers basic installation troubleshooting, such as common problems people have reported. There are also a few questions and answers for people wishing to dual-boot FreeBSD with &ms-dos; or &windows;.</para> <sect2> <title>What to Do If Something Goes Wrong</title> <para>Due to various limitations of the PC architecture, it is impossible for probing to be 100% reliable, however, there are a few things you can do if it fails.</para> <para>Check the <ulink url="http://www.FreeBSD.org/releases/index.html">Hardware Notes </ulink> document for your version of &os; to make sure your hardware is supported.</para> <para>If your hardware is supported and you still experience lock-ups or other problems, you will need to build a <link linkend="kernelconfig">custom kernel</link>. This will allow you to add in support for devices which are not present in the <filename>GENERIC</filename> kernel. The kernel on the boot disks is configured assuming that most hardware devices are in their factory default configuration in terms of IRQs, IO addresses, and DMA channels. If your hardware has been reconfigured, you will most likely need to edit the kernel configuration and recompile to tell &os; where to find things.</para> <para>It is also possible that a probe for a device not present will cause a later probe for another device that is present to fail. In that case, the probes for the conflicting driver(s) should be disabled.</para> <note> <para>Some installation problems can be avoided or alleviated by updating the firmware on various hardware components, most notably the motherboard. The motherboard firmware may also be referred to as <acronym>BIOS</acronym> and most of the motherboard or computer manufactures have a website where the upgrades and upgrade information may be located.</para> <para>Most manufacturers strongly advise against upgrading the motherboard <acronym>BIOS</acronym> unless there is a good reason for doing so, which could possibly be a critical update of sorts. The upgrade process <emphasis>can</emphasis> go wrong, causing permanent damage to the <acronym>BIOS</acronym> chip.</para> </note> </sect2> <sect2> <title>Using &ms-dos; and &windows; File Systems</title> <para>At this time, &os; does not support file systems compressed with the <application>Double Space&trade;</application> application. Therefore the file system will need to be uncompressed before &os; can access the data. This can be done by running the <application>Compression Agent</application> located in the <guimenuitem>Start</guimenuitem>&gt; <guimenuitem>Programs</guimenuitem> &gt; <guimenuitem>System Tools</guimenuitem> menu.</para> <para>&os; can support &ms-dos; file systems (sometimes called FAT file systems). The &man.mount.msdosfs.8; command grafts such file systems onto the existing directory hierarchy, allowing the file system's contents to be accessed. The &man.mount.msdosfs.8; program is not usually invoked directly; instead, it is called by the system through a line in <filename>/etc/fstab</filename> or by a call to the &man.mount.8; utility with the appropriate parameters.</para> <para>A typical line in <filename>/etc/fstab</filename> is:</para> <programlisting>/dev/ad0sN /dos msdosfs rw 0 0</programlisting> <note><para>The <filename>/dos</filename> directory must already exist for this to work. For details about the format of <filename>/etc/fstab</filename>, see &man.fstab.5;.</para></note> <para>A typicall call to &man.mount.8; for a &ms-dos; file system looks like:</para> <screen>&prompt.root; <userinput>mount -t msdosfs /dev/ad0s1 /mnt</userinput></screen> <para>In this example, the &ms-dos; file system is located on the first partition of the primary hard disk. Your situation may be different, check the output from the <command>dmesg</command>, and <command>mount</command> commands. They should produce enough information to give an idea of the partition layout.</para> <note><para>&os; may number disk slices (that is, &ms-dos; partitions) differently than other operating systems. In particular, extended &ms-dos; partitions are usually given higher slice numbers than primary &ms-dos; partitions. The &man.fdisk.8; utility can help determine which slices belong to &os; and which belong to other operating systems.</para></note> <para>NTFS partitions can also be mounted in a similar manner using the &man.mount.ntfs.8; command.</para> </sect2> <sect2> <title>Troubleshooting Questions and Answers</title> <qandaset> <qandaentry> <question> <para>My system hangs while probing hardware during boot, or it behaves strangely during install, or the floppy drive is not probed.</para> </question> <answer> <para>&os; makes extensive use of the system ACPI service on the i386, amd64 and ia64 platforms to aid in system configuration if it is detected during boot. Unfortunately, some bugs still exist in both the ACPI driver and within system motherboards and BIOS. The use of ACPI can be disabled by setting the <literal>hint.acpi.0.disabled</literal> hint in the third stage boot loader:</para> <screen><userinput>set hint.acpi.0.disabled="1"</userinput></screen> <para>This is reset each time the system is booted, so it is necessary to add <literal>hint.acpi.0.disabled="1"</literal> to the file <filename>/boot/loader.conf</filename>. More information about the boot loader can be found in <xref linkend="boot-synopsis">.</para> </answer> </qandaentry> <qandaentry> <question> <para>I go to boot from the hard disk for the first time after installing &os;, the kernel loads and probes my hardware, but stops with messages like:</para> <screen>changing root device to ad1s1a panic: cannot mount root</screen> <para>What is wrong? What can I do?</para> <para>What is this <literal>bios_drive:interface(unit,partition)kernel_name</literal> thing that is displayed with the boot help?</para> </question> <answer> <para>There is a longstanding problem in the case where the boot disk is not the first disk in the system. The BIOS uses a different numbering scheme to &os;, and working out which numbers correspond to which is difficult to get right.</para> <para>In the case where the boot disk is not the first disk in the system, &os; can need some help finding it. There are two common situations here, and in both of these cases, you need to tell &os; where the root filesystem is. You do this by specifying the BIOS disk number, the disk type and the &os; disk number for that type.</para> <para>The first situation is where you have two IDE disks, each configured as the master on their respective IDE busses, and wish to boot &os; from the second disk. The BIOS sees these as disk 0 and disk 1, while &os; sees them as <devicename>ad0</devicename> and <devicename>ad2</devicename>.</para> <para>&os; is on BIOS disk 1, of type <literal>ad</literal> and the &os; disk number is 2, so you would say:</para> <screen><userinput>1:ad(2,a)kernel</userinput></screen> <para>Note that if you have a slave on the primary bus, the above is not necessary (and is effectively wrong).</para> <para>The second situation involves booting from a SCSI disk when you have one or more IDE disks in the system. In this case, the &os; disk number is lower than the BIOS disk number. If you have two IDE disks as well as the SCSI disk, the SCSI disk is BIOS disk 2, type <literal>da</literal> and &os; disk number 0, so you would say:</para> <screen><userinput>2:da(0,a)kernel</userinput></screen> <para>To tell &os; that you want to boot from BIOS disk 2, which is the first SCSI disk in the system. If you only had one IDE disk, you would use <literal>1:</literal> instead.</para> <para>Once you have determined the correct values to use, you can put the command exactly as you would have typed it in the <filename>/boot.config</filename> file using a standard text editor. Unless instructed otherwise, &os; will use the contents of this file as the default response to the <literal>boot:</literal> prompt.</para> </answer> </qandaentry> <qandaentry> <question> <para>I go to boot from the hard disk for the first time after installing &os;, but the Boot Manager prompt just prints <literal>F?</literal> at the boot menu each time but the boot will not go any further.</para> </question> <answer> <para>The hard disk geometry was set incorrectly in the partition editor when you installed &os;. Go back into the partition editor and specify the actual geometry of your hard disk. You must reinstall &os; again from the beginning with the correct geometry.</para> <para>If you are failing entirely in figuring out the correct geometry for your machine, here is a tip: Install a small &ms-dos; partition at the beginning of the disk and install &os; after that. The install program will see the &ms-dos; partition and try to infer the correct geometry from it, which usually works.</para> <para>The following tip is no longer recommended, but is left here for reference:</para> <blockquote> <para>If you are setting up a truly dedicated &os; server or workstation where you do not care for (future) compatibility with &ms-dos;, Linux or another operating system, you also have got the option to use the entire disk (<guimenuitem>A</guimenuitem> in the partition editor), selecting the non-standard option where &os; occupies the entire disk from the very first to the very last sector. This will leave all geometry considerations aside, but is somewhat limiting unless you're never going to run anything other than &os; on a disk.</para> </blockquote> </answer> </qandaentry> <qandaentry> <question> <para>The system finds my &man.ed.4; network card, but I keep getting device timeout errors.</para> </question> <answer> <para>Your card is probably on a different IRQ from what is specified in the <filename>/boot/device.hints</filename> file. The &man.ed.4; driver does not use the <quote>soft</quote> configuration by default (values entered using EZSETUP in &ms-dos;), but it will use the software configuration if you specify <literal>-1</literal> in the hints for the interface.</para> <para>Either move the jumper on the card to a hard configuration setting (altering the kernel settings if necessary), or specify the IRQ as <literal>-1</literal> by setting the hint <literal>hint.ed.0.irq="-1"</literal>. This will tell the kernel to use the soft configuration.</para> <para>Another possibility is that your card is at IRQ 9, which is shared by IRQ 2 and frequently a cause of problems (especially when you have a VGA card using IRQ 2!). You should not use IRQ 2 or 9 if at all possible.</para> </answer> </qandaentry> <qandaentry> <indexterm> <primary>color</primary> <secondary>contrast</secondary> </indexterm> <question> <para>When <application>sysinstall</application> is used in an X11 terminal, the yellow font is difficult to read against the light gray background. Is there a way to provide higher contrast for this application?</para> </question> <answer> <para>If you already have X11 installed and the default colors chosen by <application>sysinstall</application> make text illegible while using &man.xterm.1; or &man.rxvt.1;, add the following to your <filename>~/.Xdefaults</filename> to get a darker background gray: <literal>XTerm*color7: #c0c0c0</literal></para> </answer> </qandaentry> </qandaset> </sect2> </sect1> <sect1 id="install-advanced"> <sect1info> <authorgroup> <author> <firstname>Valentino</firstname> <surname>Vaschetto</surname> <contrib>Contributed by </contrib> </author> <!-- May 2001 --> </authorgroup> <authorgroup> <author> <firstname>Marc</firstname> <surname>Fonvieille</surname> <contrib>Updated by </contrib> </author> </authorgroup> <!-- August 2010 --> </sect1info> <title>Advanced Installation Guide</title> <para>This section describes how to install FreeBSD in exceptional cases.</para> <sect2 id="headless-install"> <title>Installing FreeBSD on a System without a Monitor or Keyboard</title> <indexterm> <primary>installation</primary> <secondary>headless (serial console)</secondary> </indexterm> <indexterm><primary>serial console</primary></indexterm> <para>This type of installation is called a <quote>headless install</quote>, because the machine that you are trying to install FreeBSD on either does not have a monitor attached to it, or does not even have a VGA output. How is this possible you ask? Using a serial console. A serial console is basically using another machine to act as the main display and keyboard for a system. To do this, just follow the steps to create an installation USB memstick, explained in <xref linkend="install-boot-media"> or download the correct installation ISO image, see <xref linkend="install-cdrom">.</para> <para>To modify these media to boot into a serial console, follow these steps (If you want to use a CDROM you can skip the first step):</para> <procedure> <step> <title>Enabling the Installation USB Stick to Boot into a Serial Console</title> <indexterm> <primary><command>mount</command></primary> </indexterm> <para>If you were to boot into the USB stick that you just made, FreeBSD would boot into its normal install mode. We want FreeBSD to boot into a serial console for our install. To do this, you have to mount the USB disk onto your &os; system using the &man.mount.8; command.</para> <screen>&prompt.root; <userinput>mount /dev/<replaceable>da0a</replaceable> <replaceable>/mnt</replaceable></userinput></screen> <note> <para>Adapt the device node and the mount point to your situation.</para> </note> <para>Now that you have the stick mounted, you must set the USB stick to boot into a serial console. You have to add to the <filename>loader.conf</filename> file of the USB stick file system a line setting the serial console as the system console:</para> <screen>&prompt.root; <userinput>echo 'console="comconsole"' &gt;&gt; <replaceable>/mnt</replaceable>/boot/loader.conf</userinput></screen> <para>Now that you have your USB stick configured correctly, you must unmount the disk using the &man.umount.8; command:</para> <screen>&prompt.root; <userinput>umount <replaceable>/mnt</replaceable></userinput></screen> <para>Now you can unplug the USB stick and jump directly to the third step of this procedure.</para> </step> <step> <title>Enabling the Installation CD to Boot into a Serial Console</title> <indexterm> <primary><command>mount</command></primary> </indexterm> <para>If you were to boot into the CD that you just made from the installation ISO image (see <xref linkend="install-cdrom">), &os; would boot into its normal install mode. We want &os; to boot into a serial console for our install. To do this, you have to extract, modify and regenerate the ISO image before burning it on a CD-R media.</para> <para>From the &os; system where is saved the installation ISO image, for example <filename>&os;-<replaceable>&rel.current;</replaceable>-RELEASE-<replaceable>i386</replaceable>-disc1.iso</filename>, use the &man.tar.1; utility to extract all the files:</para> <screen>&prompt.root; <userinput>mkdir <replaceable>/path/to/headless-iso</replaceable></userinput> &prompt.root; <userinput>tar -C <replaceable>/path/to/headless-iso</replaceable> -pxvf &os;-<replaceable>&rel.current;</replaceable>-RELEASE-<replaceable>i386</replaceable>-disc1.iso</userinput></screen> <para>Now you must set the installation media to boot into a serial console. You have to add to the <filename>loader.conf</filename> file from the extracted ISO image a line setting the serial console as the system console:</para> <screen>&prompt.root; <userinput>echo 'console="comconsole"' &gt;&gt; <replaceable>/path/to/headless-iso</replaceable>/boot/loader.conf</userinput></screen> <para>Then we can create a new ISO image from the modified tree. The &man.mkisofs.8; tool from the <filename role="package">sysutils/cdrtools</filename> port is used:</para> <screen>&prompt.root; <userinput>mkisofs -v -b boot/cdboot -no-emul-boot -r -J -V "<replaceable>Headless_install</replaceable>" \ -o <replaceable>Headless-</replaceable>&os;-<replaceable>&rel.current;</replaceable>-RELEASE-<replaceable>i386</replaceable>-disc1.iso <replaceable>/path/to/headless-iso</replaceable></userinput></screen> <para>Now that you have your ISO image configured correctly, you can burn it on a CD-R with your favorite burning application.</para> </step> <step> <title>Connecting Your Null-modem Cable</title> <indexterm><primary>null-modem cable</primary></indexterm> <para>You now need to connect a <link linkend="term-cables-null">null-modem cable</link> between the two machines. Just connect the cable to the serial ports of the 2 machines. <emphasis>A normal serial cable will not work here</emphasis>, you need a null-modem cable because it has some of the wires inside crossed over.</para> </step> <step> <title>Booting Up for the Install</title> <para>It is now time to go ahead and start the install. Plug in the USB memstick on the machine you are doing the headless install on, and power on the machine. If you are using a prepared CDROM, power on the machine and insert the disk to boot on.</para> </step> <step> <title>Connecting to Your Headless Machine</title> <indexterm> <primary><command>cu</command></primary> </indexterm> <para>Now you have to connect to that machine with &man.cu.1;:</para> <screen>&prompt.root; <userinput>cu -l /dev/cuau0</userinput></screen> <para>On &os;&nbsp;7.<replaceable>X</replaceable> use the following command instead:</para> <screen>&prompt.root; <userinput>cu -l /dev/cuad0</userinput></screen> </step> </procedure> <para>That's it! You should now be able to control the headless machine through your <command>cu</command> session. It will load the kernel and then it will come up with a selection of what kind of terminal to use. Select the FreeBSD color console and proceed with your install!</para> </sect2> </sect1> <sect1 id="install-diff-media"> <title>Preparing Your Own Installation Media</title> <note> <para>To prevent repetition, <quote>FreeBSD disc</quote> in this context means a FreeBSD CDROM or DVD that you have purchased or produced yourself.</para> </note> <para>There may be some situations in which you need to create your own FreeBSD installation media and/or source. This might be physical media, such as a tape, or a source that <application>sysinstall</application> can use to retrieve the files, such as a local FTP site, or an &ms-dos; partition.</para> <para>For example:</para> <itemizedlist> <listitem> <para>You have many machines connected to your local network, and one FreeBSD disc. You want to create a local FTP site using the contents of the FreeBSD disc, and then have your machines use this local FTP site instead of needing to connect to the Internet.</para> </listitem> <listitem> <para>You have a FreeBSD disc, and FreeBSD does not recognize your CD/DVD drive, but &ms-dos; / &windows; does. You want to copy the FreeBSD installation files to a &ms-dos; partition on the same computer, and then install FreeBSD using those files.</para> </listitem> <listitem> <para>The computer you want to install on does not have a CD/DVD drive or a network card, but you can connect a <quote>Laplink-style</quote> serial or parallel cable to a computer that does.</para> </listitem> <listitem> <para>You want to create a tape that can be used to install FreeBSD.</para> </listitem> </itemizedlist> <sect2 id="install-cdrom"> <title>Creating an Installation CDROM</title> <para>As part of each release, the FreeBSD project makes available at least two CDROM images (<quote>ISO images</quote>) per supported architecture. These images can be written (<quote>burned</quote>) to CDs if you have a CD writer, and then used to install FreeBSD. If you have a CD writer, and bandwidth is cheap, then this is the easiest way to install FreeBSD.</para> <procedure> <step> <title>Download the Correct ISO Images</title> <para>The ISO images for each release can be downloaded from <filename>ftp://ftp.FreeBSD.org/pub/FreeBSD/ISO-IMAGES-<replaceable>arch</replaceable>/<replaceable>version</replaceable></filename> or the closest mirror. Substitute <replaceable>arch</replaceable> and <replaceable>version</replaceable> as appropriate.</para> <para>That directory will normally contain the following images:</para> <table frame="none"> <title>FreeBSD 7.<replaceable>X</replaceable> and 8.<replaceable>X</replaceable> ISO Image Names and Meanings</title> <tgroup cols="2"> <thead> <row> <entry>Filename</entry> <entry>Contents</entry> </row> </thead> <tbody> <row> <entry><filename>&os;-<replaceable>version</replaceable>-RELEASE-<replaceable>arch</replaceable>-bootonly.iso</filename></entry> <entry>This CD image allows you to start the installation process by booting from a CD-ROM drive but it does not contain the support for installing &os; from the CD itself. You would need to perform a network based install (e.g., from an FTP server) after booting from this CD.</entry> </row> <row> <entry><filename>&os;-<replaceable>version</replaceable>-RELEASE-<replaceable>arch</replaceable>-dvd1.iso.gz</filename></entry> <entry>This DVD image contains everything necessary to install the base FreeBSD operating system, a collection of pre-built packages, and the documentation. It also supports booting into a <quote>livefs</quote> based rescue mode.</entry> </row> <row> <entry><filename>&os;-<replaceable>version</replaceable>-RELEASE-<replaceable>arch</replaceable>-memstick.img</filename></entry> <entry>This image can be written to an USB memory stick and used to do an install on machines capable of booting off USB drives. It also supports booting into a <quote>livefs</quote> based rescue mode. The documentation packages are provided but no other packages. This image is not available for &os;&nbsp;7.<replaceable>X</replaceable>.</entry> </row> <row> <entry><filename>&os;-<replaceable>version</replaceable>-RELEASE-<replaceable>arch</replaceable>-disc1.iso</filename></entry> <entry>This CD image contains the base &os; operating system and the documentation packages but no other packages.</entry> </row> <row> <entry><filename>&os;-<replaceable>version</replaceable>-RELEASE-<replaceable>arch</replaceable>-disc2.iso</filename></entry> <entry>A CD image with as many third-party packages as would fit on the disc. This image is not available for &os;&nbsp;8.<replaceable>X</replaceable>.</entry> </row> <row> <entry><filename>&os;-<replaceable>version</replaceable>-RELEASE-<replaceable>arch</replaceable>-disc3.iso</filename></entry> <entry>Another CD image with as many third-party packages as would fit on the disc. This image is not available for &os;&nbsp;8.<replaceable>X</replaceable>.</entry> </row> <row> <entry><filename><replaceable>version</replaceable>-RELEASE-<replaceable>arch</replaceable>-docs.iso</filename></entry> <entry>The &os; documentation.</entry> </row> <row> <entry><filename>&os;-<replaceable>version</replaceable>-RELEASE-<replaceable>arch</replaceable>-livefs.iso</filename></entry> <entry>This CD image contains support for booting into a <quote>livefs</quote> based rescue mode but does not support doing an install from the CD itself.</entry> </row> </tbody> </tgroup> </table> <note> <para>&os;&nbsp;7.<replaceable>X</replaceable> releases before &os;&nbsp;7.3 and &os;&nbsp;8.0 used a different naming convention. The names of their ISO images are not prefixed with <literal>&os;-</literal>.</para> </note> <para>You <emphasis>must</emphasis> download one of either the <literal>bootonly</literal> ISO image, or the image of <literal>disc1</literal>. Do not download both of them, since the <literal>disc1</literal> image contains everything that the <literal>bootonly</literal> ISO image contains.</para> <para>Use the <literal>bootonly</literal> ISO if Internet access is cheap for you. It will let you install &os;, and you can then install third-party packages by downloading them using the ports/packages system (see <xref linkend="ports">) as necessary.</para> <para>Use the image of <literal>dvd1</literal> if you want to install a &os; release and want a reasonable selection of third-party packages on the disc as well.</para> <para>The additional disc images are useful, but not essential, especially if you have high-speed access to the Internet.</para> </step> <step> <title>Write the CDs</title> <para>You must then write the CD images to disc. If you will be doing this on another FreeBSD system then see <xref linkend="creating-cds"> for more information (in particular, <xref linkend="burncd"> and <xref linkend="cdrecord">).</para> <para>If you will be doing this on another platform then you will need to use whatever utilities exist to control your CD writer on that platform. The images provided are in the standard ISO format, which many CD writing applications support.</para> </step> </procedure> <note><para>If you are interested in building a customized release of FreeBSD, please see the <ulink url="&url.articles.releng;">Release Engineering Article</ulink>.</para></note> </sect2> <sect2 id="install-ftp"> <title>Creating a Local FTP Site with a FreeBSD Disc</title> <indexterm> <primary>installation</primary> <secondary>network</secondary> <tertiary>FTP</tertiary> </indexterm> <para>FreeBSD discs are laid out in the same way as the FTP site. This makes it very easy for you to create a local FTP site that can be used by other machines on your network when installing FreeBSD.</para> <procedure> <step> <para>On the FreeBSD computer that will host the FTP site, ensure that the CDROM is in the drive, and mounted on <filename>/cdrom</filename>.</para> <screen>&prompt.root; <userinput>mount /cdrom</userinput></screen> </step> <step> <para>Create an account for anonymous FTP in <filename>/etc/passwd</filename>. Do this by editing <filename>/etc/passwd</filename> using &man.vipw.8; and adding this line:</para> <programlisting>ftp:*:99:99::0:0:FTP:/cdrom:/nonexistent</programlisting> </step> <step> <para>Ensure that the FTP service is enabled in <filename>/etc/inetd.conf</filename>.</para> </step> </procedure> <para>Anyone with network connectivity to your machine can now chose a media type of FTP and type in <userinput>ftp://<replaceable>your machine</replaceable></userinput> after picking <quote>Other</quote> in the FTP sites menu during the install.</para> <note> <para>If the boot media (floppy disks, usually) for your FTP clients is not precisely the same version as that provided by the local FTP site, then <application>sysinstall</application> will not let you complete the installation. If the versions are not similar and you want to override this, you must go into the <guimenu>Options</guimenu> menu and change distribution name to <guimenuitem>any</guimenuitem>.</para> </note> <warning> <para>This approach is OK for a machine that is on your local network, and that is protected by your firewall. Offering up FTP services to other machines over the Internet (and not your local network) exposes your computer to the attention of crackers and other undesirables. We strongly recommend that you follow good security practices if you do this.</para> </warning> </sect2> <sect2> <title>Creating Installation Floppies</title> <indexterm> <primary>installation</primary> <secondary>floppies</secondary> </indexterm> <para>If you must install from floppy disk (which we suggest you do <emphasis>not</emphasis> do), either due to unsupported hardware or simply because you insist on doing things the hard way, you must first prepare some floppies for the installation.</para> <para>At a minimum, you will need as many 1.44&nbsp;MB floppies as it takes to hold all the files in the <filename>base</filename> (base distribution) directory. If you are preparing the floppies from &ms-dos;, then they <emphasis>must</emphasis> be formatted using the &ms-dos; <command>FORMAT</command> command. If you are using &windows;, use Explorer to format the disks (right-click on the <devicename>A:</devicename> drive, and select <quote>Format</quote>).</para> <para>Do <emphasis>not</emphasis> trust factory pre-formatted floppies. Format them again yourself, just to be sure. Many problems reported by our users in the past have resulted from the use of improperly formatted media, which is why we are making a point of it now.</para> <para>If you are creating the floppies on another FreeBSD machine, a format is still not a bad idea, though you do not need to put a &ms-dos; filesystem on each floppy. You can use the <command>bsdlabel</command> and <command>newfs</command> commands to put a UFS filesystem on them instead, as the following sequence of commands (for a 3.5" 1.44&nbsp;MB floppy) illustrates:</para> <screen>&prompt.root; <userinput>fdformat -f 1440 fd0.1440</userinput> &prompt.root; <userinput>bsdlabel -w fd0.1440 floppy3</userinput> &prompt.root; <userinput>newfs -t 2 -u 18 -l 1 -i 65536 /dev/fd0</userinput></screen> <para>Then you can mount and write to them like any other filesystem.</para> <para>After you have formatted the floppies, you will need to copy the files to them. The distribution files are split into chunks conveniently sized so that five of them will fit on a conventional 1.44&nbsp;MB floppy. Go through all your floppies, packing as many files as will fit on each one, until you have all of the distributions you want packed up in this fashion. Each distribution should go into a subdirectory on the floppy, e.g.: <filename>a:\base\base.aa</filename>, <filename>a:\base\base.ab</filename>, and so on.</para> <important> <para>The <filename>base.inf</filename> file also needs to go on the first floppy of the <filename>base</filename> 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.</para> </important> <para>Once you come to the Media screen during the install process, select <guimenuitem>Floppy</guimenuitem> and you will be prompted for the rest.</para> </sect2> <sect2 id="install-msdos"> <title>Installing from an &ms-dos; Partition</title> <indexterm> <primary>installation</primary> <secondary>from MS-DOS</secondary> </indexterm> <para>To prepare for an installation from an &ms-dos; partition, copy the files from the distribution into a directory called <filename>freebsd</filename> in the root directory of the partition. For example, <filename>c:\freebsd</filename>. The directory structure of the CDROM or FTP site must be partially reproduced within this directory, so we suggest using the &ms-dos; <command>xcopy</command> command if you are copying it from a CD. For example, to prepare for a minimal installation of FreeBSD:</para> <screen><prompt>C:\&gt;</prompt> <userinput>md c:\freebsd</userinput> <prompt>C:\&gt;</prompt> <userinput>xcopy e:\bin c:\freebsd\bin\ /s</userinput> <prompt>C:\&gt;</prompt> <userinput>xcopy e:\manpages c:\freebsd\manpages\ /s</userinput></screen> <para>Assuming that <devicename>C:</devicename> is where you have free space and <devicename>E:</devicename> is where your CDROM is mounted.</para> <para>If you do not have a CDROM drive, you can download the distribution from <ulink url="ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/&rel.current;-RELEASE/">ftp.FreeBSD.org</ulink>. Each distribution is in its own directory; for example, the <emphasis>base</emphasis> distribution can be found in the <ulink url="ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/&rel.current;-RELEASE/base/">&rel.current;/base/</ulink> directory.</para> <para>For as many distributions you wish to install from an &ms-dos; partition (and you have the free space for), install each one under <filename>c:\freebsd</filename> &mdash; the <literal>BIN</literal> distribution is the only one required for a minimum installation.</para> </sect2> <sect2> <title>Creating an Installation Tape</title> <indexterm> <primary>installation</primary> <secondary>from QIC/SCSI Tape</secondary> </indexterm> <para>Installing from tape is probably the easiest method, short of an online FTP install or CDROM install. The installation program expects the files to be simply tarred onto the tape. After getting all of the distribution files you are interested in, simply tar them onto the tape:</para> <screen>&prompt.root; <userinput>cd /freebsd/distdir</userinput> &prompt.root; <userinput>tar cvf /dev/rwt0 dist1 ... dist2</userinput></screen> <para>When you perform the installation, you should make sure that you leave enough room in some temporary directory (which you will be allowed to choose) to accommodate the <emphasis>full</emphasis> contents of the tape you have created. Due to the non-random access nature of tapes, this method of installation requires quite a bit of temporary storage.</para> <note> <para>When starting the installation, the tape must be in the drive <emphasis>before</emphasis> booting from the boot floppy. The installation probe may otherwise fail to find it.</para> </note> </sect2> <sect2> <title>Before Installing over a Network</title> <indexterm> <primary>installation</primary> <secondary>network</secondary> <tertiary>serial (PPP)</tertiary> </indexterm> <indexterm> <primary>installation</primary> <secondary>network</secondary> <tertiary>parallel (PLIP)</tertiary> </indexterm> <indexterm> <primary>installation</primary> <secondary>network</secondary> <tertiary>Ethernet</tertiary> </indexterm> <para>There are three types of network installations available. Ethernet (a standard Ethernet controller), Serial port (PPP), or Parallel port (PLIP (laplink cable)).</para> <para>For the fastest possible network installation, an Ethernet adapter is always a good choice! FreeBSD supports most common PC Ethernet cards; a table of supported cards (and their required settings) is provided in the Hardware Notes for each release of FreeBSD. If you are using one of the supported PCMCIA Ethernet cards, also be sure that it is plugged in <emphasis>before</emphasis> the laptop is powered on! FreeBSD does not, unfortunately, currently support hot insertion of PCMCIA cards during installation.</para> <para>You will also need to know your IP address on the network, the netmask value for your address class, and the name of your machine. If you are installing over a PPP connection and do not have a static IP, fear not, the IP address can be dynamically assigned by your ISP. Your system administrator can tell you which values to use for your particular network setup. If you will be referring to other hosts by name rather than IP address, you will also need a name server and possibly the address of a gateway (if you are using PPP, it is your provider's IP address) to use in talking to it. If you want to install by FTP via a HTTP proxy, you will also need the proxy's address. If you do not know the answers to all or most of these questions, then you should really probably talk to your system administrator or ISP <emphasis>before</emphasis> trying this type of installation.</para> <para>If you are using a modem, then PPP is almost certainly your only choice. Make sure that you have your service provider's information handy as you will need to know it fairly early in the installation process.</para> <para>If you use PAP or CHAP to connect your ISP (in other words, if you can connect to the ISP in &windows; without using a script), then all you will need to do is type in <command>dial</command> at the <application>ppp</application> prompt. Otherwise, you will need to know how to dial your ISP using the <quote>AT commands</quote> specific to your modem, as the PPP dialer provides only a very simple terminal emulator. Please refer to the user-ppp <link linkend="userppp">handbook</link> and <ulink url="&url.books.faq;/ppp.html">FAQ</ulink> entries for further information. If you have problems, logging can be directed to the screen using the command <command>set log local ...</command>.</para> <para>If a hard-wired connection to another FreeBSD machine is available, you might also consider installing over a <quote>laplink</quote> parallel port cable. The data rate over the parallel port is much higher than what is typically possible over a serial line (up to 50&nbsp;kbytes/sec), thus resulting in a quicker installation.</para> <sect3> <title>Before Installing via NFS</title> <indexterm> <primary>installation</primary> <secondary>network</secondary> <tertiary>NFS</tertiary> </indexterm> <para>The NFS installation is fairly straight-forward. Simply copy the FreeBSD distribution files you want onto an NFS server and then point the NFS media selection at it.</para> <para>If this server supports only <quote>privileged port</quote> (as is generally the default for Sun workstations), you will need to set the option <literal>NFS Secure</literal> in the <guimenu>Options</guimenu> menu before installation can proceed.</para> <para>If you have a poor quality Ethernet card which suffers from very slow transfer rates, you may also wish to toggle the <literal>NFS Slow</literal> flag.</para> <para>In order for NFS installation to work, the server must support subdir mounts, for example, if your FreeBSD&nbsp;&rel.current; distribution directory lives on: <filename>ziggy:/usr/archive/stuff/FreeBSD</filename>, then <hostid>ziggy</hostid> will have to allow the direct mounting of <filename>/usr/archive/stuff/FreeBSD</filename>, not just <filename>/usr</filename> or <filename>/usr/archive/stuff</filename>.</para> <para>In FreeBSD's <filename>/etc/exports</filename> file, this is controlled by the <option>-alldirs</option> options. Other NFS servers may have different conventions. If you are getting <errorname>permission denied</errorname> messages from the server, then it is likely that you do not have this enabled properly.</para> </sect3> </sect2> </sect1> </chapter> <!-- Local Variables: mode: sgml sgml-declaration: "../chapter.decl" sgml-indent-data: t sgml-omittag: nil sgml-always-quote-attributes: t sgml-parent-document: ("../book.sgml" "part" "chapter") End: -->
Notes: svn path=/head/; revision=38462
Diffstat (limited to 'en_US.ISO8859-1/books/handbook/mac')
1 files changed, 8 insertions, 7 deletions
diff --git a/en_US.ISO8859-1/books/handbook/mac/chapter.sgml b/en_US.ISO8859-1/books/handbook/mac/chapter.sgml
index 55ee7f018d..c96ff6ad72 100644
--- a/en_US.ISO8859-1/books/handbook/mac/chapter.sgml
+++ b/en_US.ISO8859-1/books/handbook/mac/chapter.sgml
@@ -140,7 +140,7 @@
<sect1 id="mac-inline-glossary">
- <title>Key Terms in this Chapter</title>
+ <title>Key Terms in This Chapter</title>
<para>Before reading this chapter, a few key terms must be
explained. This will hopefully clear up any confusion that
@@ -260,7 +260,7 @@
<para><emphasis>subject</emphasis>: a subject is any
active entity that causes information to flow between
- <emphasis>objects</emphasis>; e.g. a user, user processor,
+ <emphasis>objects</emphasis>; e.g., a user, user processor,
system process, etc. On &os;, this is almost always a thread
acting in a process on behalf of a user.</para>
@@ -1065,7 +1065,7 @@ test: biba/high</screen>
using a variety of <command>sysctl</command> variables. In
essence &man.mac.portacl.4; makes it possible to allow
non-<username>root</username> users to bind to specified
- privileged ports, i.e. ports fewer than 1024.</para>
+ privileged ports, i.e., ports fewer than 1024.</para>
<para>Once loaded, this module will enable the
<acronym>MAC</acronym> policy on all sockets. The following
@@ -1115,13 +1115,13 @@ test: biba/high</screen>
<para>Since the ruleset is interpreted directly by the kernel
only numeric values can be used for the user ID, group ID, and
- port parameters. I.e. user, group, and port service names
+ port parameters. User, group, and port service names
cannot be used.</para>
<para>By default, on &unix;-like systems, ports fewer than 1024
can only be used by/bound to privileged processes,
- i.e. those run as <username>root</username>. For
+ i.e., those run as <username>root</username>. For
&man.mac.portacl.4; to allow non-privileged processes to bind
to ports below 1024 this standard &unix; restriction has to be
disabled. This can be accomplished by setting the &man.sysctl.8;
@@ -1880,7 +1880,8 @@ setpmac biba/10\(10-10\) /usr/local/etc/rc.d/nagios.sh forcestart</userinput></s
<para>For this scenario, the &man.mac.bsdextended.4; mixed with
&man.mac.seeotheruids.4; could co-exist and block access not
- only to system objects but to hide user processes as well.
+ only to system objects, but to hide user processes as
+ well.</para>
<para>Begin by adding the following line to
@@ -1983,7 +1984,7 @@ setpmac biba/10\(10-10\) /usr/local/etc/rc.d/nagios.sh forcestart</userinput></s
- <title>Cannot start a X11 server after <acronym>MAC</acronym></title>
+ <title>Cannot Start a X11 Server After <acronym>MAC</acronym></title>
<para>After establishing a secure environment with
<acronym>MAC</acronym>, I am no longer able to start