Index: head/en_US.ISO8859-1/books/handbook/bsdinstall/chapter.xml
===================================================================
--- head/en_US.ISO8859-1/books/handbook/bsdinstall/chapter.xml (revision 47272)
+++ head/en_US.ISO8859-1/books/handbook/bsdinstall/chapter.xml (revision 47273)
@@ -1,2734 +1,2731 @@
Installing &os; 9.X and
LaterJimMockRestructured, reorganized, and parts rewritten
by GavinAtkinsonUpdated for bsdinstall by WarrenBlockAllanJudeUpdated for root-on-ZFS by SynopsisinstallationBeginning with &os; 9.0-RELEASE, &os; provides an easy
to use, text-based installation
program named bsdinstall. This
chapter describes how to install &os; using
- bsdinstall. The use of
- sysinstall, which is the installation
- program used by &os; 8.x, is covered in .
+ bsdinstall.
In general, the installation instructions in this chapter
are written for the &i386; and AMD64
architectures. Where applicable, instructions specific to other
platforms will be listed. There may be minor differences
between the installer and what is shown here, so use this
chapter as a general guide rather than as a set of literal
instructions.Users who prefer to install &os; using a graphical
installer may be interested in
pc-sysinstall, the installer used
by the PC-BSD Project. It can be used to install either a
graphical desktop (PC-BSD) or a command line version of &os;.
Refer to the PC-BSD Users Handbook for details (http://wiki.pcbsd.org/index.php/PC-BSD%C2%AE_Users_Handbook/10.1).After reading this chapter, you will know:The minimum hardware requirements and &os; supported
architectures.How to create the &os; installation media.How to start
bsdinstall.The questions bsdinstall will
ask, what they mean, and how to answer them.How to troubleshoot a failed installation.How to access a live version of &os; before committing
to an installation.Before reading this chapter, you should:Read the supported hardware list that shipped with the
version of &os; to be installed and verify that the system's
hardware is supported.Minimum Hardware RequirementsThe hardware requirements to install &os; vary by the &os;
version and the hardware architecture. Hardware architectures
and devices supported by a &os; release are listed on the
Release Information page of the &os; web site (http://www.FreeBSD.org/releases/index.html).A &os; installation will require a minimum 64 MB of
RAM and 1.5 GB of free hard drive space
for the most minimal installation. However, that is a
minimal install, leaving almost no
free space. RAM requirements depend on usage. Specialized
FreeBSD systems can run in as little as 128MB RAM while desktop
systems should have at least 4 GB
of RAM.The processor requirements for each architecture can be
summarized as follows:&arch.amd64;This is the most common type of processor desktop and
laptop computers will have. Other vendors may call this
architecture x86-64.There are two primary vendors of &arch.amd64;
processors: &intel; (which produces
Intel64 class processors) and AMD
(which produces AMD64).Examples of &arch.amd64; compatible processsors
include: &amd.athlon;64, &amd.opteron;,
multi-core &intel; &xeon;, and
&intel; &core; 2 and later processors.&arch.i386;This architecture is the 32-bit x86
architecture.Almost all i386-compatible processors with a floating
point unit are supported. All &intel; processors 486 or
higher are supported.&os; will take advantage of Physical Address
Extensions (PAE) support on
CPUs that support this feature. A
kernel with the PAE feature enabled
will detect memory above 4 GB and allow it to be used
by the system. This feature places constraints on the
device drivers and other features of &os; which may be
used; refer to &man.pae.4; for details.ia64Currently supported processors are the &itanium; and
the &itanium; 2. Supported chipsets include the HP zx1,
&intel; 460GX, and &intel; E8870. Both Uniprocessor
(UP) and Symmetric Multi-processor
(SMP) configurations are
supported.pc98NEC PC-9801/9821 series with almost all
i386-compatible processors, including 80486, &pentium;,
&pentium; Pro, and &pentium; II, are all supported. All
i386-compatible processors by AMD, Cyrix, IBM, and IDT are
also supported. EPSON PC-386/486/586 series, which are
compatible with NEC PC-9801 series, are supported. The
NEC FC-9801/9821 and NEC SV-98 series should be
supported.High-resolution mode is not supported. NEC
PC-98XA/XL/RL/XL^2, and NEC PC-H98 series are supported in
normal (PC-9801 compatible) mode only. The
SMP-related features of &os; are not
supported. The New Extend Standard Architecture
(NESA) bus used in the PC-H98, SV-H98,
and FC-H98 series, is not supported.&arch.powerpc;All New World ROM &apple;
&mac; systems with built-in USB
are supported. SMP is supported on
machines with multiple CPUs.A 32-bit kernel can only use the first 2 GB of
RAM.&arch.sparc64;Systems supported by &os;/&arch.sparc64; are listed at
the FreeBSD/sparc64 Project (http://www.freebsd.org/platforms/sparc.html).SMP is supported on all systems
with more than 1 processor. A dedicated disk is required
as it is not possible to share a disk with another
operating system at this time.Pre-Installation TasksOnce it has been determined that the system meets the
minimum hardware requirements for installing &os;, the
installation file should be downloaded and the installation
media prepared. Before doing this, check that the system is
ready for an installation by verifying the items in this
checklist:Back Up Important DataBefore installing any operating system,
always backup all important data first.
Do not store the backup on the system being installed.
Instead, save the data to a removable disk such as a
USB drive, another system on the network,
or an online backup service. Test the backup before
starting the installation to make sure it contains all of
the needed files. Once the installer formats the system's
disk, all data stored on that disk will be lost.Decide Where to Install &os;If &os; will be the only operating system installed,
this step can be skipped. But if &os; will share the disk
with another operating system, decide which disk or
partition will be used for &os;.In the &arch.i386; and &arch.amd64; architectures, disks
can be divided into multiple partitions using one of two
partitioning schemes. A traditional Master Boot
Record (MBR) holds a
partition table defining up to four primary
partitions. For historical reasons, &os;
calls these primary partition
slices. One of these primary
partitions can be made into an extended
partition containing multiple
logical partitions. The
GUID Partition Table
(GPT) is a newer and simpler method of
partitioning a disk. Common GPT
implementations allow up to 128 partitions per disk,
eliminating the need for logical partitions.Some older operating systems, like &windows; XP,
are not compatible with the GPT
partition scheme. If &os; will be sharing a disk with
such an operating system, MBR
partitioning is required.The &os; boot loader requires either a primary or
GPT partition. If all of the primary or
GPT partitions are already in use, one
must be freed for &os;. To create a partition without
deleting existing data, use a partition resizing tool to
shrink an existing partition and create a new partition
using the freed space.A variety of free and commercial partition resizing
tools are listed at http://en.wikipedia.org/wiki/List_of_disk_partitioning_software.
GParted Live (http://gparted.sourceforge.net/livecd.php)
is a free live CD which includes the
GParted partition editor.
GParted is also included with
many other Linux live CD
distributions.When used properly, disk shrinking utilities can
safely create space for creating a new partition. Since
the possibility of selecting the wrong partition exists,
always backup any important data and verify the integrity
of the backup before modifying disk partitions.Disk partitions containing different operating systems
make it possible to install multiple operating systems on
one computer. An alternative is to use virtualization
() which allows multiple
operating systems to run at the same time without modifying
any disk partitions.Collect Network InformationSome &os; installation methods require a network
connection in order to download the installation files.
After any installation, the installer will offer to setup
the system's network interfaces.If the network has a DHCP server, it
can be used to provide automatic network configuration. If
DHCP is not available, the following
network information for the system must be obtained from the
local network administrator or Internet service
provider:Required Network InformationIP addressSubnet maskIP address of default
gatewayDomain name of the networkIP addresses of the network's
DNS serversCheck for &os; ErrataAlthough the &os; Project strives to ensure that
each release of &os; is as stable as possible, bugs
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
&os; Errata (http://www.freebsd.org/releases/&rel.current;R/errata.html)
on the &os; web site. Check the errata before installing to
make sure that there are no problems that might affect the
installation.Information and errata for all the releases can be found
on the release information section of the &os; web site
(http://www.freebsd.org/releases/index.html).Prepare the Installation MediaThe &os; installer is not an application that can be run
from within another operating system. Instead, download a
&os; installation file, burn it to the media associated with
its file type and size (CD,
DVD, or USB), and boot
the system to install from the inserted media.&os; installation files are available at www.freebsd.org/where.html#download.
Each installation file's name includes the release version of
&os;, the architecture, and the type of file. For example, to
install &os; 10.0 on an &arch.amd64; system from a
DVD, download
FreeBSD-10.0-RELEASE-amd64-dvd1.iso, burn
this file to a DVD, and boot the system
with the DVD inserted.Several file types are available, though not all file
types are available for all architectures. The possible file
types are:-bootonly.iso: This is the smallest
installation file as it only contains the installer. A
working Internet connection is required during
installation as the installer will download the files it
needs to complete the &os; installation. This file should
be burned to a CD using a
CD burning application.-disc1.iso: This file contains all
of the files needed to install &os;, its source, and the
Ports Collection. It should be burned to a
CD using a CD
burning application.-dvd1.iso: This file contains all
of the files needed to install &os;, its source, and the
Ports Collection. It also contains a set of popular
binary packages for installing a window manager and some
applications so that a complete system can be installed
from media without requiring a connection to the Internet.
This file should be burned to a DVD
using a DVD burning application.-memstick.img: This file contains
all of the files needed to install &os;, its source, and
the Ports Collection. It should be burned to a
USB stick using the instructions
below.Also download CHECKSUM.SHA256 from
the same directory as the image file and use it to check the
image file's integrity by calculating a
checksum. &os; provides &man.sha256.1;
for this, while other operating systems have similar programs.
Compare the calculated checksum with the one shown in
CHECKSUM.SHA256. The checksums must
match exactly. If the checksums do not match, the file is
corrupt and should be downloaded again.Writing an Image File to USBThe *.img file is an
image of the complete contents of a
memory stick. It cannot be copied to
the target device as a file. Several applications are
available for writing the *.img to a
USB stick. This section describes two of
these utilities.Before proceeding, back up any important data on the
USB stick. This procedure will erase
the existing data on the stick.Using dd to Write the
ImageThis example uses /dev/da0 as
the target device where the image will be written. Be
very careful that the correct
device is used as this command will destroy the existing
data on the specified target device.The &man.dd.1; command-line utility is
available on BSD, &linux;, and &macos; systems. To burn
the image using dd, insert the
USB stick and determine its device
name. Then, specify the name of the downloaded
installation file and the device name for the
USB stick. This example burns the
&arch.amd64; installation image to the first
USB device on an existing &os;
system.&prompt.root; dd if=FreeBSD-10.0-RELEASE-amd64-memstick.img of=/dev/da0 bs=1m conv=syncIf this command fails, verify that the
USB stick is not mounted and that the
device name is for the disk, not a partition. Some
operating systems might require this command to be run
with &man.sudo.8;. Systems like &linux; might buffer
writes. To force all writes to complete, use
&man.sync.8;.Using &windows; to Write the ImageBe sure to give the correct drive letter as the
existing data on the specified drive will be overwritten
and destroyed.Obtaining Image Writer for
&windows;Image Writer for
&windows; is a free application that can
correctly write an image file to a memory stick.
Download it from https://launchpad.net/win32-image-writer/
and extract it into a folder.Writing the Image with Image WriterDouble-click the
Win32DiskImager icon to start
the program. Verify that the drive letter shown under
Device is the drive
with the memory stick. Click the folder icon and select
the image to be written to the memory stick. Click
[ Save ] to accept the
image file name. Verify that everything is correct, and
that no folders on the memory stick are open in other
windows. When everything is ready, click
[ Write ] to write the
image file to the memory stick.You are now ready to start installing &os;.Starting the InstallationBy default, the installation will not make any changes to
the disk(s) before the following message:Your changes will now be written to disk. If you
have chosen to overwrite existing data, it will
be PERMANENTLY ERASED. Are you sure you want to
commit your changes?The install can be exited at any time prior to this
warning. If
there is a concern that something is incorrectly configured,
just turn the computer off before this point and no changes
will be made to the system's disks.This section describes how to boot the system from the
installation media which was prepared using the instructions in
. When using a
bootable USB stick, plug in the USB stick
before turning on the computer. When booting from
CD or DVD, turn on the
computer and insert the media at the first opportunity. How to
configure the system to boot from the inserted media depends
upon the architecture.Booting on &i386; and &arch.amd64;These architectures provide a BIOS
menu for selecting the boot device. Depending upon the
installation media being used, select the
CD/DVD or
USB device as the first boot device. Most
systems also provide a key for selecting the boot device
during startup without having to enter the
BIOS. Typically, the key is either
F10, F11,
F12, or Escape.If the computer loads the existing operating system
instead of the &os; installer, then either:The installation media was not inserted early enough
in the boot process. Leave the media inserted and try
restarting the computer.The BIOS changes were incorrect or
not saved. Double-check that the right boot device is
selected as the first boot device.This system is too old to support booting from the
chosen media. In this case, the Plop Boot
Manager ()
can be used to boot the system from the selected
media.Booting on &powerpc;On most machines, holding C on the
keyboard during boot will boot from the CD.
Otherwise, hold CommandOptionOF, or
WindowsAltOF on non-&apple; keyboards. At the
0 > prompt, enterboot cd:,\ppc\loader cd:0Booting on &sparc64;Most &sparc64; systems are set up to boot automatically
from disk. To install &os; from a CD
requires a break into the PROM.To do this, reboot the system and wait until the boot
message appears. The message depends on the model, but should
look something like this:Sun Blade 100 (UltraSPARC-IIe), Keyboard Present
Copyright 1998-2001 Sun Microsystems, Inc. All rights reserved.
OpenBoot 4.2, 128 MB memory installed, Serial #51090132.
Ethernet address 0:3:ba:b:92:d4, Host ID: 830b92d4.If the system proceeds to boot from disk at this point,
press L1A
or StopA
on the keyboard, or send a BREAK over the
serial console. When using tip or
cu, ~# will
issue a BREAK. The PROM prompt will be
ok on systems with one
CPU and ok {0} on
SMP systems, where the digit indicates the
number of the active CPU.At this point, place the CD into the
drive and type boot cdrom from the
PROM prompt.&os; Boot MenuOnce the system boots from the installation media, a menu
similar to the following will be displayed:&os; Boot Loader MenuBy default, the menu will wait ten seconds for user input
before booting into the &os; installer or, if &os; is already
installed, before booting into &os;. To pause the boot timer
in order to review the selections, press
Space. To select an option, press its
highlighted number, character, or key. The following options
are available.Boot Multi User: This will
continue the &os; boot process. If the boot timer has
been paused, press 1, upper- or
lower-case B, or
Enter.Boot Single User: This mode can be
used to fix an existing &os; installation as described in
. Press
2 or the upper- or lower-case
S to enter this mode.Escape to loader prompt: This will
boot the system into a repair prompt that contains a
limited number of low-level commands. This prompt is
described in . Press
3 or Esc to boot into
this prompt.Reboot: Reboots the system.Configure Boot Options: Opens the
menu shown in, and described under, .&os; Boot Options MenuThe boot options menu is divided into two sections. The
first section can be used to either return to the main boot
menu or to reset any toggled options back to their
defaults.The next section is used to toggle the available options
to On or Off by pressing
the option's highlighted number or character. The system will
always boot using the settings for these options until they
are modified. Several options can be toggled using this
menu:ACPI Support: If the system hangs
during boot, try toggling this option to
Off.Safe Mode: If the system still
hangs during boot even with ACPI
Support set to Off, try
setting this option to On.Single User: Toggle this option to
On to fix an existing &os; installation
as described in . Once
the problem is fixed, set it back to
Off.Verbose: Toggle this option to
On to see more detailed messages during
the boot process. This can be useful when troubleshooting
a piece of hardware.After making the needed selections, press
1 or Backspace to return to
the main boot menu, then press Enter to
continue booting into &os;. A series of boot messages will
appear as &os; carries out its hardware device probes and
loads the installation program. Once the boot is complete,
the welcome menu shown in will be displayed.Welcome MenuPress Enter to select the default of
[ Install ] to enter the
installer. The rest of this chapter describes how to use this
installer. Otherwise, use the right or left arrows or the
colorized letter to select the desired menu item. The
[ Shell ] can be used to
access a &os; shell in order to use command line utilities to
prepare the disks before installation. The
[ Live CD ] option can be
used to try out &os; before installing it. The live version
is described in .To review the boot messages, including the hardware
device probe, press the upper- or lower-case
S and then Enter to access
a shell. At the shell prompt, type more
/var/run/dmesg.boot and use the space bar to
scroll through the messages. When finished, type
exit to return to the welcome
menu.Using bsdinstallThis section shows the order of the
bsdinstall menus and the type of
information that will be asked before the system is installed.
Use the arrow keys to highlight a menu option, then
Space to select or deselect that menu item.
When finished, press Enter to save the
selection and move onto the next screen.Selecting the Keymap MenuDepending on the system console being used,
bsdinstall may initially display
the menu shown in .Keymap SelectionTo configure the keyboard layout, press
Enter with
[ YES ] selected, which will
display the menu shown in . To instead use the
default layout, use the arrow key to select
[ NO ] and press
Enter to skip this menu screen.Selecting Keyboard MenuWhen configuring the keyboard layout, use the up and down
arrows to select the keymap that most closely represents the
mapping of the keyboard attached to the system. Press
Enter to save the selection.Pressing Esc will exit this menu and
use the default keymap. If the choice of keymap is not
clear, United States of America
ISO-8859-1 is also a safe option.In &os; 10.0-RELEASE and later, this menu has been
enhanced. The full selection of keymaps is shown, with the
default preselected. In addition, when selecting a different
keymap, a dialog is displayed that allows the user to try the
keymap and ensure it is correct before proceeding.Enhanced Keymap MenuSetting the HostnameThe next bsdinstall menu is
used to set the hostname for the newly installed
system.Setting the HostnameType in a hostname that is unique for the network. It
should be a fully-qualified hostname, such as machine3.example.com.Selecting Components to InstallNext, bsdinstall will prompt to
select optional components to install.Selecting Components to InstallDeciding which components to install will depend largely
on the intended use of the system and the amount of disk space
available. The &os; kernel and userland, collectively known
as the base system, are always
installed. Depending on the architecture, some of these
components may not appear:doc - Additional documentation,
mostly of historical interest, to install into
/usr/share/doc. The documentation
provided by the FreeBSD Documentation Project may be
installed later using the instructions in .games - Several traditional
BSD games, including
fortune,
rot13, and others.lib32 - Compatibility libraries for
running 32-bit applications on a 64-bit version of
&os;.ports - The &os; Ports Collection
is a collection of files which automates the downloading,
compiling and installation of third-party software
packages. discusses how to use
the Ports Collection.The installation program does not check for
adequate disk space. Select this option only if
sufficient hard disk space is available. The &os; Ports
Collection takes up about &ports.size; of disk
space.src - The complete &os; source code
for both the kernel and the userland. Although not
required for the majority of applications, it may be
required to build device drivers, kernel modules, or some
applications from the Ports Collection. It is also used
for developing &os; itself. The full source tree requires
1 GB of disk space and recompiling the entire &os;
system requires an additional 5 GB of space.Installing from the NetworkThe menu shown in only appears when
installing from a -bootonly.iso
CD as this installation media does not hold
copies of the installation files. Since the installation
files must be retrieved over a network connection, this menu
indicates that the network interface must be first
configured.Installing from the NetworkTo configure the network connection, press
Enter and follow the instructions in . Once the
interface is configured, select a mirror site that is
located in the same region of the world as the computer on
which &os; is being installed. Files can be retrieved more
quickly when the mirror is close to the target computer,
reducing installation time.Choosing a MirrorInstallation will then continue as if the installation
files were located on the local installation media.Allocating Disk SpaceThe next menu is used to determine the method for
allocating disk space. The options available in the menu
depend upon the version of &os; being installed.Partitioning Choices on &os; 9.xPartitioning Choices on &os; 10.x and HigherGuided partitioning automatically sets up
the disk partitions, Manual partitioning
allows advanced users to create customized partitions from menu
options, and Shell opens a shell prompt where
advanced users can create customized partitions using
command-line utilities like &man.gpart.8;, &man.fdisk.8;, and
&man.bsdlabel.8;. ZFS partitioning, only
available in &os; 10 and later, creates an optionally encrypted
root-on-ZFS system with support for boot
environments.This section describes what to consider when laying out the
disk partitions. It then demonstrates how to use the different
partitioning methods.Designing the Partition Layoutpartition layout/etc/var/usrWhen laying out file systems, remember that hard drives
transfer data faster from the outer tracks to the inner.
Thus, smaller and heavier-accessed file systems should be
closer to the outside of the drive, while larger partitions
like /usr should be placed toward the
inner parts of the disk. It is a good idea to create
partitions in an order similar to: /,
swap, /var, and
/usr.The size of the /var partition
reflects the intended machine's usage. This partition is
used to hold mailboxes, log files, and printer spools.
Mailboxes and log files can grow to unexpected sizes
depending on the number of users and how long log files are
kept. On average, most users rarely need more than about a
gigabyte of free disk space in
/var.Sometimes, a lot of disk space is required in
/var/tmp. When new software is
installed, the packaging tools extract a temporary copy of
the packages under /var/tmp. Large
software packages, like Firefox,
OpenOffice or
LibreOffice may be tricky to
install if there is not enough disk space under
/var/tmp.The /usr partition holds many of the
files which support the system, including the &os; Ports
Collection and system source code. At least 2 gigabytes is
recommended for this partition.When selecting partition sizes, keep the space
requirements in mind. Running out of space in one partition
while barely using another can be a hassle.swap sizingswap partitionAs a rule of thumb, the swap partition should be about
double the size of physical memory (RAM).
Systems with minimal RAM may perform
better with more swap. Configuring too little swap can lead
to inefficiencies in the VM page scanning
code and might create issues later if more memory is
added.On larger systems with multiple SCSI
disks or multiple IDE disks operating on
different controllers, it is recommended that swap be
configured on each drive, up to four drives. The swap
partitions should be approximately the same size. The
kernel can handle arbitrary sizes but internal data structures
scale to 4 times the largest swap partition. Keeping the swap
partitions near the same size will allow the kernel to
optimally stripe swap space across disks. Large swap sizes
are fine, even if swap is not used much. It might be easier
to recover from a runaway program before being forced to
reboot.By properly partitioning a system, fragmentation
introduced in the smaller write heavy partitions will not
bleed over into the mostly read partitions. Keeping the
write loaded partitions closer to the disk's edge will
increase I/O performance in the
partitions where it occurs the most. While
I/O performance in the larger partitions
may be needed, shifting them more toward the edge of the disk
will not lead to a significant performance improvement over
moving /var to the edge.Guided PartitioningWhen this method is selected, a menu will display the
available disk(s). If multiple disks are connected, choose
the one where &os; is to be installed.Selecting from Multiple DisksOnce the disk is selected, the next menu prompts to
install to either the entire disk or to create a partition
using free space. If
[ Entire Disk ] is
chosen, a general partition layout filling the whole disk is
automatically created. Selecting
[ Partition ] creates a
partition layout from the unused space on the disk.Selecting Entire Disk or PartitionAfter the partition layout has been created, review it to
ensure it meets the needs of the installation. Selecting
[ Revert ] will reset the
partitions to their original values and pressing
[ Auto ] will recreate the
automatic &os; partitions. Partitions can also be manually
created, modified, or deleted. When the partitioning is
correct, select [ Finish ] to
continue with the installation.Review Created PartitionsManual PartitioningSelecting this method opens the partition editor:Manually Create PartitionsHighlight the installation drive
(ada0 in this example) and select
[ Create ] to display a menu
of available partition schemes:Manually Create PartitionsGPT is usually the most appropriate
choice for &arch.amd64; computers. Older computers that are
not compatible with GPT should use
MBR. The other partition schemes are
generally used for uncommon or older computers.
Partitioning SchemesAbbreviationDescriptionAPMApple Partition Map, used by &powerpc;.BSDBSD label without an
MBR, sometimes called
dangerously dedicated mode as
non-BSD disk utilities may not
recognize it.GPTGUID Partition Table (http://en.wikipedia.org/wiki/GUID_Partition_Table).MBRMaster Boot Record (http://en.wikipedia.org/wiki/Master_boot_record).PC98MBR variant used by NEC PC-98
computers (http://en.wikipedia.org/wiki/Pc9801).VTOC8Volume Table Of Contents used by Sun SPARC64 and
UltraSPARC computers.
After the partitioning scheme has been selected and
created, select [ Create ]
again to create the partitions.Manually Create PartitionsA standard &os; GPT installation uses
at least three partitions:freebsd-boot - Holds the &os; boot
code.freebsd-ufs - A &os;
UFS file system.freebsd-swap - &os; swap
space.Another partition type worth noting is
freebsd-zfs, used for partitions that will
contain a &os; ZFS file system (). Refer to &man.gpart.8; for
descriptions of the available GPT partition
types.Multiple file system partitions can be created and some
people prefer a traditional layout with separate partitions
for /, /var,
/tmp, and /usr. See
for an
example.The Size may be entered with common
abbreviations: K for kilobytes,
M for megabytes, or
G for gigabytes.Proper sector alignment provides the best performance,
and making partition sizes even multiples of 4K bytes helps
to ensure alignment on drives with either 512-byte or
4K-byte sectors. Generally, using partition sizes that are
even multiples of 1M or 1G is the easiest way to make sure
every partition starts at an even multiple of 4K. There is
one exception: the freebsd-boot
partition should be no larger than 512K due to current boot
code limitations.A Mountpoint is needed if the partition
will contain a file system. If only a single
UFS partition will be created, the
mountpoint should be /.The Label is a name by which the
partition will be known. Drive names or numbers can change if
the drive is connected to a different controller or port, but
the partition label does not change. Referring to labels
instead of drive names and partition numbers in files like
/etc/fstab makes the system more tolerant
to hardware changes. GPT labels appear in
/dev/gpt/ when a disk is attached. Other
partitioning schemes have different label capabilities and
their labels appear in different directories in
/dev/.Use a unique label on every partition to avoid
conflicts from identical labels. A few letters from the
computer's name, use, or location can be added to the label.
For instance, use labroot or
rootfslab for the UFS
root partition on the computer named
lab.Creating Traditional Split File System
PartitionsFor a traditional partition layout where the
/, /var,
/tmp, and /usr
directories are separate file systems on their own
partitions, create a GPT partitioning
scheme, then create the partitions as shown. Partition
sizes shown are typical for a 20G target disk. If more
space is available on the target disk, larger swap or
/var partitions may be useful. Labels
shown here are prefixed with ex for
example, but readers should use other unique
label values as described above.By default, &os;'s gptboot expects
the first UFS partition to be the
/ partition.Partition TypeSizeMountpointLabelfreebsd-boot512Kfreebsd-ufs2G/exrootfsfreebsd-swap4Gexswapfreebsd-ufs2G/varexvarfsfreebsd-ufs1G/tmpextmpfsfreebsd-ufsaccept the default (remainder of the
disk)/usrexusrfsAfter the custom partitions have been created, select
[ Finish ] to continue with
the installation.Root-on-ZFS Automatic PartitioningSupport for automatic creation of root-on-ZFS
installations was added in &os; 10.0-RELEASE. This
partitioning mode only works with whole disks and will erase
the contents of the entire disk. The installer will
automatically create partitions aligned to 4k boundaries and
force ZFS to use 4k sectors. This is safe
even with 512 byte sector disks, and has the added benefit of
ensuring that pools created on 512 byte disks will be able to
have 4k sector disks added in the future, either as additional
storage space or as replacements for failed disks. The
installer can also optionally employ GELI
disk encryption as described in .
If encryption is enabled, a 2 GB unencrypted boot pool
containing the /boot directory is
created. It holds the kernel and other files necessary to
boot the system. A swap partition of a user selectable size
is also created, and all remaining space is used for the
ZFS pool.The main ZFS configuration menu offers
a number of options to control the creation of the
pool.ZFS Partitioning MenuSelect T to configure the Pool
Type and the disk(s) that will constitute the
pool. The automatic ZFS installer
currently only supports the creation of a single top level
vdev, except in stripe mode. To create more complex pools,
use the instructions in to create the pool. The
installer supports the creation of various pool types,
including stripe (not recommended, no redundancy), mirror
(best performance, least usable space), and RAID-Z 1, 2, and 3
(with the capability to withstand the concurrent failure of 1,
2, and 3 disks, respectively). while selecting the pool type,
a tooltip is displayed across the bottom of the screen with
advice about the number of required disks, and in the case of
RAID-Z, the optimal number of disks for each
configuration.ZFS Pool TypeOnce a Pool Type has been selected, a
list of available disks is displayed, and the user is prompted
to select one or more disks to make up the pool. The
configuration is then validated, to ensure enough disks are
selected. If not, select <Change
Selection> to return to the list of disks, or
<Cancel> to change the pool
type.Disk SelectionInvalid SelectionIf one or more disks are missing from the list, or if
disks were attached after the installer was started, select
- Rescan Devices to repopulate the list
of available disks. To ensure that the correct disks are
selected, so as not to accidently destroy the wrong disks, the
- Disk Info menu can be used to inspect
each disk, including its partition table and various other
information such as the device model number and serial number,
if available.Analysing a DiskThe main ZFS configuration menu also
allows the user to enter a pool name, disable forcing 4k
sectors, enable or disable encryption, switch between
GPT (recommended) and
MBR partition table types, and select the
amount of swap space. Once all options have been set to the
desired values, select the
>>> Install option at the
top of the menu.If GELI disk encryption was enabled,
the installer will prompt twice for the passphrase to be used
to encrypt the disks.Disk Encryption PasswordThe installer then offers a last chance to cancel before
the contents of the selected drives are destroyed to create
the ZFS pool.Last ChanceThe installation then proceeds normally.Shell Mode PartitioningWhen creating advanced installations, the
bsdinstall paritioning menus may
not provide the level of flexibility required. Advanced users
can select the Shell option from the
partitioning menu in order to manually partition the drives,
create the file system(s), populate
/tmp/bsdinstall_etc/fstab, and mount the
file systems under /mnt. Once this is
done, type exit to return to
bsdinstall and continue the
installation.Committing to the InstallationOnce the disks are configured, the next menu provides the
last chance to make changes before the selected hard drive(s)
are formatted. If changes need to be made, select
[ Back ] to return to the main
partitioning menu.
[ Revert & Exit ]
will exit the installer without making any changes to the hard
drive.Final ConfirmationTo instead start the actual installation, select
[ Commit ] and press
Enter.Installation time will vary depending on the distributions
chosen, installation media, and speed of the computer. A series
of messages will indicate the progress.First, the installer formats the selected disk(s) and
initializes the partitions. Next, in the case of a bootonly
media, it downloads the selected components:Fetching Distribution FilesNext, the integrity of the distribution files is verified
to ensure they have not been corrupted during download or
misread from the installation media:Verifying Distribution FilesFinally, the verified distribution files are extracted to
the disk:Extracting Distribution FilesOnce all requested distribution files have been extracted,
bsdinstall displays the first
post-installation configuration screen. The available
post-configuration options are described in the next
section.Post-InstallationOnce &os; is installed,
bsdinstall will prompt to configure
several options before booting into the newly installed system.
This section describes these configuration options.Once the system has booted,
bsdconfig provides a menu-driven method for
configuring the system using these and additional
options.Setting the
root
PasswordFirst, the root
password must be set. While entering the password, the
characters being typed are not displayed on the screen. After
the password has been entered, it must be entered again. This
helps prevent typing errors.Setting the root PasswordConfiguring Network InterfacesNext, a list of the network interfaces found on the
computer is shown. Select the interface to configure.The network configuration menus will be skipped if the
network was previously configured as part of a
bootonly installation.Choose a Network InterfaceIf an Ethernet interface is selected, the installer will
skip ahead to the menu shown in . If a wireless
network interface is chosen, the system will instead scan for
wireless access points:Scanning for Wireless Access PointsWireless networks are identified by a Service Set
Identifier (SSID), a short, unique name
given to each network. SSIDs found during
the scan are listed, followed by a description of the
encryption types available for that network. If the desired
SSID does not appear in the list, select
[ Rescan ] to scan again. If
the desired network still does not appear, check for problems
with antenna connections or try moving the computer closer to
the access point. Rescan after each change is made.Choosing a Wireless NetworkNext, enter the encryption information for connecting to
the selected wireless network. WPA2
encryption is strongly recommended as older encryption types,
like WEP, offer little security. If the
network uses WPA2, input the password, also
known as the Pre-Shared Key (PSK). For
security reasons, the characters typed into the input box are
displayed as asterisks.WPA2 SetupNext, choose whether or not an IPv4
address should be configured on the Ethernet or wireless
interface:Choose IPv4 NetworkingThere are two methods of IPv4
configuration. DHCP will automatically
configure the network interface correctly and should be used
if the network provides a DHCP server.
Otherwise, the addressing information needs to be input
manually as a static configuration.Do not enter random network information as it will not
work. If a DHCP server is not available,
obtain the information listed in from
the network administrator or Internet service
provider.If a DHCP server is available, select
[ Yes ] in the next menu to
automatically configure the network interface. The installer
will appear to pause for a minute or so as it finds the
DHCP server and obtains the addressing
information for the system.Choose IPv4 DHCP
ConfigurationIf a DHCP server is not available,
select [ No ] and input the
following addressing information in this menu:IPv4 Static ConfigurationIP Address - The
IPv4 address assigned to this computer.
The address must be unique and not already in use by
another piece of equipment on the local network.Subnet Mask - The subnet mask for
the network.Default Router - The
IP address of the network's default
gateway.The next screen will ask if the interface should be
configured for IPv6. If
IPv6 is available and desired, choose
[ Yes ] to select it.Choose IPv6 NetworkingIPv6 also has two methods of
configuration. StateLess Address AutoConfiguration
(SLAAC) will automatically request the
correct configuration information from a local router. Refer
to http://tools.ietf.org/html/rfc4862
for more information. Static configuration requires manual
entry of network information.If an IPv6 router is available, select
[ Yes ] in the next menu to
automatically configure the network interface. The installer
will appear to pause for a minute or so as it finds the router
and obtains the addressing information for the system.Choose IPv6 SLAAC ConfigurationIf an IPv6 router is not available,
select [ No ] and input the
following addressing information in this menu:IPv6 Static ConfigurationIPv6 Address - The
IPv6 address assigned to this computer.
The address must be unique and not already in use by
another piece of equipment on the local network.Default Router - The
IPv6 address of the network's default
gateway.The last network configuration menu is used to configure
the Domain Name System (DNS) resolver,
which converts hostnames to and from network addresses. If
DHCP or SLAAC was used
to autoconfigure the network interface, the Resolver
Configuration values may already be filled in.
Otherwise, enter the local network's domain name in the
Search field. DNS #1
and DNS #2 are the IPv4
and/or IPv6 addresses of the
DNS servers. At least one
DNS server is required.DNS ConfigurationSetting the Time ZoneThe next menu asks if the system clock uses
UTC or local time. When in doubt, select
[ No ] to choose the more
commonly-used local time.Select Local or UTC ClockThe next series of menus are used to determine the correct
local time by selecting the geographic region, country, and
time zone. Setting the time zone allows the system to
automatically correct for regional time changes, such as
daylight savings time, and perform other time zone related
functions properly.The example shown here is for a machine located in the
Eastern time zone of the United States. The selections will
vary according to the geographical location.Select a RegionThe appropriate region is selected using the arrow keys
and then pressing Enter.Select a CountrySelect the appropriate country using the arrow keys and
press Enter.Select a Time ZoneThe appropriate time zone is selected using the arrow keys
and pressing Enter.Confirm Time ZoneConfirm the abbreviation for the time zone is correct. If
it is, press Enter to continue with the
post-installation configuration.Enabling ServicesThe next menu is used to configure which system services
will be started whenever the system boots. All of these
services are optional. Only start the services that are
needed for the system to function.Selecting Additional Services to EnableHere is a summary of the services which can be enabled in
this menu:sshd - The Secure Shell
(SSH) daemon is used to remotely access
a system over an encrypted connection. Only enable this
service if the system should be available for remote
logins.moused - Enable this service if the
mouse will be used from the command-line system
console.ntpd - The Network Time Protocol
(NTP) daemon for automatic clock
synchronization. Enable this service if there is a
&windows;, Kerberos, or LDAP server on
the network.powerd - System power control
utility for power control and energy saving.Enabling Crash DumpsThe next menu is used to configure whether or not crash
dumps should be enabled. Enabling crash dumps can be useful
in debugging issues with the system, so users are encouraged
to enable crash dumps.Enabling Crash DumpsAdd UsersThe next menu prompts to create at least one user account.
It is recommended to login to the system using a user account
rather than as root.
When logged in as root, there are essentially no
limits or protection on what can be done. Logging in as a
normal user is safer and more secure.Select [ Yes ] to add new
users.Add User AccountsFollow the prompts and input the requested information for
the user account. The example shown in creates the asample user account.Enter User InformationHere is a summary of the information to input:Username - The name the user will
enter to log in. A common convention is to use the first
letter of the first name combined with the last name, as
long as each username is unique for the system. The
username is case sensitive and should not contain any
spaces.Full name - The user's full name.
This can contain spaces and is used as a description for
the user account.Uid - User ID.
Typically, this is left blank so the system will assign a
value.Login group - The user's group.
Typically this is left blank to accept the default.Invite user into
other groups? - Additional groups to which the
user will be added as a member. If the user needs
administrative access, type wheel
here.Login class - Typically left blank
for the default.Shell - Type in one of the listed
values to set the interactive shell for the user. Refer
to for more information about
shells.Home directory - The user's home
directory. The default is usually correct.Home directory permissions -
Permissions on the user's home directory. The default is
usually correct.Use password-based authentication?
- Typically yes so that the user is
prompted to input their password at login.Use an empty password? -
Typically no as it is insecure to have
a blank password.Use a random password? - Typically
no so that the user can set their own
password in the next prompt.Enter password - The password for
this user. Characters typed will not show on the
screen.Enter password again - The password
must be typed again for verification.Lock out the account after
creation? - Typically no so
that the user can login.After entering everything, a summary is shown for review.
If a mistake was made, enter no and try
again. If everything is correct, enter yes
to create the new user.Exit User and Group ManagementIf there are more users to add, answer the Add
another user? question with
yes. Enter no to finish
adding users and continue the installation.For more information on adding users and user management,
see .Final ConfigurationAfter everything has been installed and configured, a
final chance is provided to modify settings.Final ConfigurationUse this menu to make any changes or do any additional
configuration before completing the installation.Add User - Described in .Root Password - Described in .Hostname - Described in .Network - Described in .Services - Described in .Time Zone - Described in .Handbook - Download and install the
&os; Handbook.After any final configuration is complete, select
Exit.Manual Configurationbsdinstall will prompt if there
are any additional configuration that needs to be done before
rebooting into the new system. Select
[ Yes ] to exit to a shell
within the new system or
[ No ] to proceed to the last
step of the installation.Complete the InstallationIf further configuration or special setup is needed,
select [ Live CD ] to
boot the install media into Live CD
mode.If the installation is complete, select
[ Reboot ] to reboot the
computer and start the new &os; system. Do not forget to
remove the &os; install media or the computer may boot from it
again.As &os; boots, informational messages are displayed.
After the system finishes booting, a login prompt is
displayed. At the login: prompt, enter the
username added during the installation. Avoid logging in as
root. Refer to
for instructions on how to
become the superuser when administrative access is
needed.The messages that appeared during boot can be reviewed by
pressing Scroll-Lock to turn on the
scroll-back buffer. The PgUp,
PgDn, and arrow keys can be used to scroll
back through the messages. When finished, press
Scroll-Lock again to unlock the display and
return to the console. To review these messages once the
system has been up for some time, type less
/var/run/dmesg.boot from a command prompt. Press
q to return to the command line after
viewing.If sshd was enabled in , the first boot may be
a bit slower as the system will generate the
RSA and DSA keys.
Subsequent boots will be faster. The fingerprints of the keys
will be displayed, as seen in this example: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:
10:a0:f5:af:93:ae:a3:1a:b2:bb:3c:35:d9:5a:b3:f3 root@machine3.example.com
The key's randomart image is:
+--[RSA1 1024]----+
| o.. |
| o . . |
| . o |
| o |
| o S |
| + + o |
|o . + * |
|o+ ..+ . |
|==o..o+E |
+-----------------+
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:
7e:1c:ce:dc:8a:3a:18:13:5b:34:b5:cf:d9:d1:47:b2 root@machine3.example.com
The key's randomart image is:
+--[ DSA 1024]----+
| .. . .|
| o . . + |
| . .. . E .|
| . . o o . . |
| + S = . |
| + . = o |
| + . * . |
| . . o . |
| .o. . |
+-----------------+
Starting sshd.Refer to for more information
about fingerprints and SSH.&os; does not install a graphical environment by default.
Refer to for more information about
installing and configuring a graphical window manager.Proper shutdown of a &os; computer helps protect data and
hardware from damage. Do not turn off the power
before the system has been properly shut down! If
the user is a member of the wheel group, become the
superuser by typing su at the command line
and entering the root password. Then, type
shutdown -p now and the system will shut
down cleanly, and if the hardware supports it, turn itself
off.TroubleshootinginstallationtroubleshootingThis section covers basic installation
troubleshooting, such as common problems people have
reported.Check the Hardware Notes (http://www.freebsd.org/releases/index.html)
document for the version of &os; to make sure the hardware is
supported. If the hardware is supported and lock-ups or other
problems occur, build a custom kernel using the instructions in
to add support for devices which
are not present in the GENERIC kernel. The
default kernel assumes that most hardware devices are in their
factory default configuration in terms of
IRQs, I/O addresses, and
DMA channels. If the hardware has been
reconfigured, a custom kernel configuration file can tell &os;
where to find things.Some installation problems can be avoided or alleviated by
updating the firmware on various hardware components, most
notably the motherboard. Motherboard firmware is usually
referred to as the BIOS. Most motherboard
and computer manufacturers have a website for upgrades and
upgrade information.Manufacturers generally advise against upgrading the
motherboard BIOS unless there is a good
reason for doing so, like a critical update. The upgrade
process can go wrong, leaving the
BIOS incomplete and the computer
inoperative.If the system hangs while probing hardware during boot, or
it behaves strangely during install, ACPI may
be the culprit. &os; makes extensive use of the system
ACPI service on the &arch.i386;,
&arch.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 firmware.
ACPI can be disabled by setting the
hint.acpi.0.disabled hint in the third stage
boot loader:set hint.acpi.0.disabled="1"This is reset each time the system is booted, so it is
necessary to add hint.acpi.0.disabled="1" to
the file /boot/loader.conf. More
information about the boot loader can be found in .Using the Live CDThe welcome menu of bsdinstall,
shown in , provides a
[ Live CD ] option. This
is useful for those who are still wondering whether &os; is the
right operating system for them and want to test some of the
features before installing.The following points should be noted before using the
[ Live CD ]:To gain access to the system, authentication is
required. The username is root and the password is
blank.As the system runs directly from the installation media,
performance will be significantly slower than that of a
system installed on a hard disk.This option only provides a command prompt and not a
graphical interface.
Index: head/en_US.ISO8859-1/books/handbook/virtualization/chapter.xml
===================================================================
--- head/en_US.ISO8859-1/books/handbook/virtualization/chapter.xml (revision 47272)
+++ head/en_US.ISO8859-1/books/handbook/virtualization/chapter.xml (revision 47273)
@@ -1,1633 +1,1633 @@
VirtualizationMurrayStokelyContributed by AllanJudebhyve section by SynopsisVirtualization software allows multiple operating systems to
run simultaneously on the same computer. Such software systems
for PCs often involve a host operating system which runs the
virtualization software and supports any number of guest
operating systems.After reading this chapter, you will know:The difference between a host operating system and a
guest operating system.How to install &os; on an &intel;-based &apple;
&mac; computer.How to install &os; on µsoft.windows; with
Virtual PC.How to install &os; as a guest in
bhyve.How to tune a &os; system for best performance under
virtualization.Before reading this chapter, you should:Understand the basics of &unix;
and &os;.
- Know how to install
+ Know how to install
&os;.Know how to set up a
network connection.Know how to install additional
third-party software.&os; as a Guest OSParallels on &macos; XParallels Desktop for &mac; is
a commercial software product available for &intel; based
&apple; &mac; computers running &macos; 10.4.6 or higher.
&os; is a fully supported guest operating system. Once
Parallels has been installed on
&macos; X, the user must configure a virtual machine and then
install the desired guest operating system.Installing &os; on Parallels/&macos; XThe first step in installing &os; on
Parallels is to create a new
virtual machine for installing &os;. Select
&os; as the Guest OS
Type when prompted:Choose a reasonable amount of disk and memory
depending on the plans for this virtual &os; instance.
4GB of disk space and 512MB of RAM work well for most uses
of &os; under Parallels:Select the type of networking and a network
interface:Save and finish the configuration:After the &os; virtual machine has been created, &os;
can be installed on it. This is best done with an
official &os; CD/DVD or with an ISO image downloaded from an
official FTP site. Copy the appropriate ISO image to the
local &mac; filesystem or insert a CD/DVD in the &mac;'s CD
drive. Click on the disc icon in the bottom right corner of
the &os; Parallels window. This
will bring up a window that can be used to associate the
CDROM drive in the virtual machine with the ISO file on disk
or with the real CDROM drive.Once this association with the CDROM source has been
made, reboot the &os; virtual machine by clicking the reboot
icon. Parallels will reboot with
a special BIOS that first checks if there is a CDROM.In this case it will find the &os; installation media
and begin a normal &os; installation. Perform the
installation, but do not attempt to configure
&xorg; at this time.When the installation is finished, reboot into the
newly installed &os; virtual machine.Configuring &os; on
ParallelsAfter &os; has been successfully installed on &macos;
X with Parallels, there are a
number of configuration steps that can be taken to
optimize the system for virtualized operation.Set Boot Loader VariablesThe most important step is to reduce the
tunable to reduce the CPU
utilization of &os; under the Parallels
environment. This is accomplished by
adding the following line to
/boot/loader.conf:kern.hz=100Without this setting, an idle &os;
Parallels guest will use
roughly 15% of the CPU of a single processor &imac;.
After this change the usage will be closer to 5%.Create a New Kernel Configuration FileAll of the SCSI, FireWire, and USB device drivers
can be removed from a custom kernel configuration file.
Parallels provides a virtual
network adapter used by the &man.ed.4; driver, so all
network devices except for &man.ed.4; and &man.miibus.4;
can be removed from the kernel.Configure NetworkingThe most basic networking setup uses DHCP to connect
the virtual machine to the same local area network as
the host &mac;. This can be accomplished by adding
ifconfig_ed0="DHCP" to
/etc/rc.conf. More advanced
networking setups are described in
.Virtual PC on
&windows;Virtual PC for &windows; is a
µsoft; software product available for free download. See
this website for the system
requirements. Once Virtual
PC has been installed on µsoft.windows;,
the user can configure a virtual machine and then install the
desired guest operating system.Installing &os; on Virtual
PCThe first step in installing &os; on
Virtual PC is to create a new
virtual machine for installing &os;. Select
Create a virtual machine when
prompted:Select Other as the
Operating system when
prompted:Then, choose a reasonable amount of disk and memory
depending on the plans for this virtual &os; instance.
4GB of disk space and 512MB of RAM work well for most uses
of &os; under Virtual PC:Save and finish the configuration:Select the &os; virtual machine and click
Settings, then set the type of networking
and a network interface:After the &os; virtual machine has been created, &os;
can be installed on it. This is best done with an
official &os; CD/DVD or with an ISO image downloaded from an
official FTP site. Copy the appropriate ISO image to the
local &windows; filesystem or insert a CD/DVD in the CD
drive, then double click on the &os; virtual machine to
boot. Then, click CD and choose
Capture ISO Image... on the
Virtual PC window. This will
bring up a window where the CDROM drive in the virtual
machine can be associated with an ISO file on disk or
with the real CDROM drive.Once this association with the CDROM source has been
made, reboot the &os; virtual machine by clicking
Action and Reset.
Virtual PC will reboot with a
special BIOS that first checks for a CDROM.In this case it will find the &os; installation media
and begin a normal &os; installation. Continue with the
installation, but do not attempt to configure
&xorg; at this time.When the installation is finished, remember to eject
the CD/DVD or release the ISO image. Finally, reboot into
the newly installed &os; virtual machine.Configuring &os; on Virtual
PCAfter &os; has been successfully installed on
µsoft.windows; with Virtual PC
, there are a number of configuration
steps that can be taken to optimize the system for
virtualized operation.Set Boot Loader VariablesThe most important step is to reduce the
tunable to reduce the CPU
utilization of &os; under the Virtual
PC environment. This is accomplished
by adding the following line to
/boot/loader.conf:kern.hz=100Without this setting, an idle &os;
Virtual PC guest OS will
use roughly 40% of the CPU of a single processor
computer. After this change, the usage will be
closer to 3%.Create a New Kernel Configuration FileAll of the SCSI, FireWire, and USB device drivers
can be removed from a custom kernel configuration file.
Virtual PC provides a virtual
network adapter used by the &man.de.4; driver, so all
network devices except for &man.de.4; and &man.miibus.4;
can be removed from the kernel.Configure NetworkingThe most basic networking setup uses DHCP to connect
the virtual machine to the same local area network as
the µsoft.windows; host. This can be accomplished
by adding ifconfig_de0="DHCP" to
/etc/rc.conf. More advanced
networking setups are described in
.VMware Fusion on
&macos;VMware Fusion for &mac; is a
commercial software product available for &intel; based
&apple; &mac; computers running &macos; 10.4.9 or higher.
&os; is a fully supported guest operating system. Once
VMware Fusion has been
installed on &macos; X, the user can configure a virtual
machine and then install the desired guest operating
system.Installing &os; on VMware
FusionThe first step is to start VMware
Fusion which will load the Virtual
Machine Library. Click New to
create the virtual machine:This will load the New Virtual Machine Assistant. Click
Continue to proceed:Select Other as the
Operating System and either
&os; or
&os; 64-bit, as the
Version when prompted:Choose the name of the virtual machine and the directory
where it should be saved:Choose the size of the Virtual Hard Disk for the virtual
machine:Choose the method to install the virtual machine,
either from an ISO image or from a CD/DVD:Click Finish and the virtual
machine will boot:Install &os; as usual:Once the install is complete, the settings
of the virtual machine can be modified, such as memory
usage:The System Hardware settings of the virtual machine
cannot be modified while the virtual machine is
running.The number of CPUs the virtual machine will have access
to:The status of the CDROM device. Normally the
CD/DVD/ISO is disconnected from the virtual machine when it
is no longer needed.The last thing to change is how the virtual machine will
connect to the network. To allow connections to the virtual
machine from other machines besides the host, choose
Connect directly to the physical network
(Bridged). Otherwise, Share the
host's internet connection (NAT) is
preferred so that the virtual machine can have access to the
Internet, but the network cannot access the virtual
machine.After modifying the settings, boot the newly installed
&os; virtual machine.Configuring &os; on VMware
FusionAfter &os; has been successfully installed on &macos; X
with VMware Fusion, there are a
number of configuration steps that can be taken to optimize
the system for virtualized operation.Set Boot Loader VariablesThe most important step is to reduce the
tunable to reduce the CPU
utilization of &os; under the
VMware Fusion environment.
This is accomplished by adding the following line to
/boot/loader.conf:kern.hz=100Without this setting, an idle &os;
VMware Fusion guest will use
roughly 15% of the CPU of a single processor &imac;.
After this change, the usage will be closer to
5%.Create a New Kernel Configuration FileAll of the FireWire, and USB device drivers can be
removed from a custom kernel configuration file.
VMware Fusion provides a
virtual network adapter used by the &man.em.4; driver,
so all network devices except for &man.em.4; can be
removed from the kernel.Configure NetworkingThe most basic networking setup uses DHCP to connect
the virtual machine to the same local area network as
the host &mac;. This can be accomplished by adding
ifconfig_em0="DHCP" to
/etc/rc.conf. More advanced
networking setups are described in
.&virtualbox; Guest Additions on a &os; GuestThe &virtualbox; guest
additions provide support for:Clipboard sharing.Mouse pointer integration.Host time synchronization.Window scaling.Seamless mode.The following commands are run in the &os; guest.First, install the
emulators/virtualbox-ose-additions package
or port in the &os; guest. This will install the port:&prompt.root; cd /usr/ports/emulators/virtualbox-ose-additions && make install cleanAdd these lines to
/etc/rc.conf:vboxguest_enable="YES"
vboxservice_enable="YES"When Xorg will be used in the
guest, any required supporting services must also be enabled
just as if the guest was a physical machine. Typically, these
lines would also be added to
/etc/rc.conf:hald_enable="YES"
dbus_enable="YES"See for details.If &man.ntpd.8; or &man.ntpdate.8; is used, disable host
time synchronization:vboxservice_flags="--disable-timesync"Xorg will automatically
recognize the vboxvideo driver.
It can also be manually entered in
/etc/X11/xorg.conf:Section "Device"
### Available Driver options are:-
### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
### <string>: "String", <freq>: "<f> Hz/kHz/MHz"
### [arg]: arg optional
Identifier "Card0"
Driver "vboxvideo"
VendorName "InnoTek Systemberatung GmbH"
BoardName "VirtualBox Graphics Adapter"
BusID "PCI:0:2:0"
EndSectionTo use the vboxmouse driver, adjust the
mouse section in
/etc/X11/xorg.conf:Section "InputDevice"
Identifier "Mouse0"
Driver "vboxmouse"
EndSectionHAL users should create the following
/usr/local/etc/hal/fdi/policy/90-vboxguest.fdi
or copy it from
/usr/local/share/hal/fdi/policy/10osvendor/90-vboxguest.fdi:<?xml version="1.0" encoding="utf-8"?>
<!--
# Sun VirtualBox
# Hal driver description for the vboxmouse driver
# $Id: chapter.xml,v 1.33 2012-03-17 04:53:52 eadler Exp $
Copyright (C) 2008-2009 Sun Microsystems, Inc.
This file is part of VirtualBox Open Source Edition (OSE, as
available from http://www.virtualbox.org. This file is free software;
you can redistribute it and/or modify it under the terms of the GNU
General Public License (GPL) as published by the Free Software
Foundation, in version 2 as it comes in the "COPYING" file of the
VirtualBox OSE distribution. VirtualBox OSE is distributed in the
hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa
Clara, CA 95054 USA or visit http://www.sun.com if you need
additional information or have any questions.
-->
<deviceinfo version="0.2">
<device>
<match key="info.subsystem" string="pci">
<match key="info.product" string="VirtualBox guest Service">
<append key="info.capabilities" type="strlist">input</append>
<append key="info.capabilities" type="strlist">input.mouse</append>
<merge key="input.x11_driver" type="string">vboxmouse</merge>
<merge key="input.device" type="string">/dev/vboxguest</merge>
</match>
</match>
</device>
</deviceinfo>&os; as a Host with
VirtualBox&virtualbox; is an actively
developed, complete virtualization package, that is available
for most operating systems including &windows;, &macos;, &linux;
and &os;. It is equally capable of running &windows; or
&unix;-like guests. It is released as open source software, but
with closed-source components available in a separate extension
pack. These components include support for USB 2.0 devices.
More information may be found on the Downloads
page of the &virtualbox;
wiki. Currently, these extensions are not available
for &os;.Installing &virtualbox;&virtualbox; is available as a
&os; package or port in
emulators/virtualbox-ose. The port can be
installed using these commands:&prompt.root; cd /usr/ports/emulators/virtualbox-ose
&prompt.root; make install cleanOne useful option in the port's configuration menu is the
GuestAdditions suite of programs. These
provide a number of useful features in guest operating
systems, like mouse pointer integration (allowing the mouse to
be shared between host and guest without the need to press a
special keyboard shortcut to switch) and faster video
rendering, especially in &windows; guests. The guest
additions are available in the Devices
menu, after the installation of the guest is finished.A few configuration changes are needed before
&virtualbox; is started for the
first time. The port installs a kernel module in
/boot/modules which
must be loaded into the running kernel:&prompt.root; kldload vboxdrvTo ensure the module always gets loaded after a reboot,
add the following line to
/boot/loader.conf:vboxdrv_load="YES"To use the kernel modules that allow bridged or host-only
networking, add the following to
/etc/rc.conf and reboot the
computer:vboxnet_enable="YES"The vboxusers
group is created during installation of
&virtualbox;. All users that need
access to &virtualbox; will have to
be added as members of this group. pw can
be used to add new members:&prompt.root; pw groupmod vboxusers -m yourusernameThe default permissions for
/dev/vboxnetctl are restrictive and need
to be changed for bridged networking:&prompt.root; chown root:vboxusers /dev/vboxnetctl
&prompt.root; chmod 0660 /dev/vboxnetctlTo make this permissions change permanent, add these
lines to /etc/devfs.conf:own vboxnetctl root:vboxusers
perm vboxnetctl 0660To launch &virtualbox;,
type from a &xorg; session:&prompt.user; VirtualBoxFor more information on configuring and using
&virtualbox;, refer to the
official
website. For &os;-specific information and
troubleshooting instructions, refer to the relevant
page in the &os; wiki.&virtualbox; USB SupportIn order to be able to read and write to USB devices,
users need to be members of
operator:&prompt.root; pw groupmod operator -m jerryThen, add the following to
/etc/devfs.rules, or create this file if
it does not exist yet:[system=10]
add path 'usb/*' mode 0660 group operatorTo load these new rules, add the following to
/etc/rc.conf:devfs_system_ruleset="system"Then, restart devfs:&prompt.root; service devfs restartUSB can now be enabled in the guest operating system. USB
devices should be visible in the &virtualbox;
preferences.&virtualbox; Host DVD/CD AccessAccess to the host DVD/CD drives from guests is achieved
through the sharing of the physical drives. Within
&virtualbox;, this is set up from the Storage window in the
Settings of the virtual machine. If needed, create an empty
IDE CD/DVD device first. Then choose the Host Drive from the
popup menu for the virtual CD/DVD drive selection. A checkbox
labeled Passthrough will appear. This
allows the virtual machine to use the hardware directly. For
example, audio CDs or the burner will only function if this
option is selected.HAL needs to run for
&virtualbox; DVD/CD functions to
work, so enable it in /etc/rc.conf and
start it if it is not already running:hald_enable="YES"&prompt.root; service hald startIn order for users to be able to use
&virtualbox; DVD/CD functions, they
need access to /dev/xpt0,
/dev/cdN, and
/dev/passN.
This is usually achieved by making the user a member of
operator.
Permissions to these devices have to be corrected by adding
these lines to /etc/devfs.conf:perm cd* 0660
perm xpt0 0660
perm pass* 0660&prompt.root; service devfs restart&os; as a Host with
bhyveStarting with &os; 10.0-RELEASE, the
bhyve BSD-licensed
hypervisor is part of the base system. This hypervisor supports
a number of guests, including &os;, OpenBSD, and many &linux;
distributions. Currently, bhyve only
supports a serial console and does not emulate a graphical
console. As a legacy-free hypervisor, it relies on the
virtualization offload features of newer
CPUs, instead of translating instructions and
manually managing memory mappings.Due to the design of bhyve, it
requires a computer with a newer processor that supports &intel;
Extended Page Tables (EPT) or &amd; Rapid
Virtualization Indexing (RVI), also known as
Nested Page Tables (NPT). In addition, to
host &linux; guests, or &os; guests with more than one
vCPU, VMX unrestricted
mode support (UG) is also required. Most
newer processors, specifically the &intel; &core;
i3/i5/i7 and &intel; &xeon; E3/E5/E7, support these
features. UG support was introduced with
Intel's Westmere micro-architecture. For a complete list of
&intel; processors that support EPT, refer
to .
RVI is found on the third generation and
later of the &amd.opteron; (Barcelona) processors. The easiest
way to tell if a processor will support
bhyve is to run
dmesg or look in
/var/run/dmesg.boot for the
POPCNT processor feature flag on the
Features2 line and EPT and
UG on the VT-x
line.Preparing the HostThe first step to creating a virtual machine in
bhyve is configuring the host
system. First, load the bhyve
kernel module:&prompt.root; kldload vmmThen, create a tap interface for the
network device in the virtual machine to attach to. In order
for the network device to participate in the network, also
create a bridge interface containing the
tap interface and the physical interface
as members. In this example, the physical interface is
igb0:&prompt.root; ifconfig tap0 create
&prompt.root; sysctl net.link.tap.up_on_open=1
net.link.tap.up_on_open: 0 -> 1
&prompt.root; ifconfig bridge0 create
&prompt.root; ifconfig bridge0 addm igb0 addm tap0
&prompt.root; ifconfig bridge0 upCreating a FreeBSD GuestCreate a file to use as the virtual disk for the guest
machine. Specify the size and name of the virtual
disk:&prompt.root; truncate -s 16Gguest.imgDownload an installation image of &os; to install:&prompt.root; fetch ftp://ftp.freebsd.org/pub/FreeBSD/ISO-IMAGES-amd64/10.0/FreeBSD-10.0-RELEASE-amd64-bootonly.iso
FreeBSD-10.0-RELEASE-amd64-bootonly.iso 100% of 209 MB 570 kBps 06m17s&os; comes with an example script for running a virtual
machine in bhyve. The script will
start the virtual machine and run it in a loop, so it will
automatically restart if it crashes. The script takes a
number of options to control the configuration of the machine:
controls the number of virtual CPUs,
limits the amount of memory available to
the guest, defines which
tap device to use,
indicates which disk image to use, tells
bhyve to boot from the
CD image instead of the disk, and
defines which CD image
to use. The last parameter is the name of the virtual
machine, used to track the running machines. This example
starts the virtual machine in installation mode:&prompt.root; sh /usr/share/examples/bhyve/vmrun.sh -c 4 -m 1024M -t tap0 -d guest.img -i -I FreeBSD-10.0-RELEASE-amd64-bootonly.isoguestnameThe virtual machine will boot and start the installer.
After installing a system in the virtual machine, when the
system asks about dropping in to a shell at the end of the
installation, choose Yes. A small
change needs to be made to make the system start with a serial
console. Edit /etc/ttys and replace the
existing ttyu0 line with:ttyu0 "/usr/libexec/getty 3wire" xterm on secureBeginning with &os; 9.3-RELEASE and
10.1-RELEASE the console is configured
automatically.Reboot the virtual machine. While rebooting the virtual
machine causes bhyve to exit, the
vmrun.sh script runs
bhyve in a loop and will automatically
restart it. When this happens, choose the reboot option from
the boot loader menu in order to escape the loop. Now the
guest can be started from the virtual disk:&prompt.root; sh /usr/share/examples/bhyve/vmrun.sh -c 4 -m 1024M -t tap0 -d guest.imgguestnameCreating a &linux; GuestIn order to boot operating systems other than &os;, the
sysutils/grub2-bhyve port must be first
installed.Next, create a file to use as the virtual disk for the
guest machine:&prompt.root; truncate -s 16Glinux.imgStarting a virtual machine with
bhyve is a two step process. First
a kernel must be loaded, then the guest can be started. The
&linux; kernel is loaded with
sysutils/grub2-bhyve. Create a
device.map that
grub will use to map the virtual
devices to the files on the host system:(hd0) ./linux.img
(cd0) ./somelinux.isoUse sysutils/grub2-bhyve to load the
&linux; kernel from the ISO image:&prompt.root; grub-bhyve -m device.map -r cd0 -M 1024MlinuxguestThis will start grub. If the installation
CD contains a
grub.cfg, a menu will be displayed.
If not, the vmlinuz and
initrd files must be located and loaded
manually:grub> ls
(hd0) (cd0) (cd0,msdos1) (host)
grub> ls (cd0)/isolinux
boot.cat boot.msg grub.conf initrd.img isolinux.bin isolinux.cfg memtest
splash.jpg TRANS.TBL vesamenu.c32 vmlinuz
grub> linux (cd0)/isolinux/vmlinuz
grub> initrd (cd0)/isolinux/initrd.img
grub> bootNow that the &linux; kernel is loaded, the guest can be
started:&prompt.root; bhyve -A -H -P -s 0:0,hostbridge -s 1:0,lpc -s 2:0,virtio-net,tap1 -s 3:0,virtio-blk,./linux.img \
-s 4:0,ahci-cd,./somelinux.iso -l com1,stdio -c 4 -m 1024MlinuxguestThe system will boot and start the installer. After
installing a system in the virtual machine, reboot the virtual
machine. This will cause bhyve to
exit. The instance of the virtual machine needs to be
destroyed before it can be started again:&prompt.root; bhyvectl --destroy --vm=linuxguestNow the guest can be started directly from the virtual
disk. Load the kernel:&prompt.root; grub-bhyve -m device.map -r hd0,msdos1 -M 1024Mlinuxguest
grub> ls
(hd0) (hd0,msdos2) (hd0,msdos1) (cd0) (cd0,msdos1) (host)
(lvm/VolGroup-lv_swap) (lvm/VolGroup-lv_root)
grub> ls (hd0,msdos1)/
lost+found/ grub/ efi/ System.map-2.6.32-431.el6.x86_64 config-2.6.32-431.el6.x
86_64 symvers-2.6.32-431.el6.x86_64.gz vmlinuz-2.6.32-431.el6.x86_64
initramfs-2.6.32-431.el6.x86_64.img
grub> linux (hd0,msdos1)/vmlinuz-2.6.32-431.el6.x86_64 root=/dev/mapper/VolGroup-lv_root
grub> initrd (hd0,msdos1)/initramfs-2.6.32-431.el6.x86_64.img
grub> bootBoot the virtual machine:&prompt.root; bhyve -A -H -P -s 0:0,hostbridge -s 1:0,lpc -s 2:0,virtio-net,tap1 \
-s 3:0,virtio-blk,./linux.img -l com1,stdio -c 4 -m 1024Mlinuxguest&linux; will now boot in the virtual machine and
eventually present you with the login prompt. Login and use
the virtual machine. When you are finished, reboot the
virtual machine to exit bhyve.
Destroy the virtual machine instance:&prompt.root; bhyvectl --destroy --vm=linuxguestUsing ZFS with
bhyve GuestsIf ZFS is available on the host
machine, using ZFS volumes
instead of disk image files can provide significant
performance benefits for the guest VMs. A
ZFS volume can be created by:&prompt.root; zfs create -V16G -o volmode=dev zroot/linuxdisk0When starting the VM, specify the
ZFS volume as the disk drive:&prompt.root; bhyve -A -H -P -s 0:0,hostbridge -s 1:0,lpc -s 2:0,virtio-net,tap1 -s3:0,virtio-blk,/dev/zvol/zroot/linuxdisk0 \
-l com1,stdio -c 4 -m 1024MlinuxguestVirtual Machine ConsolesIt is advantageous to wrap the
bhyve console in a session
management tool such as sysutils/tmux or
sysutils/screen in order to detach and
reattach to the console. It is also possible to have the
console of bhyve be a null modem
device that can be accessed with cu. To do
this, load the nmdm kernel module and
replace with
. The
/dev/nmdm devices are created
automatically as needed, where each is a pair, corresponding
to the two ends of the null modem cable
(/dev/nmdm1A and
/dev/nmdm1B). See &man.nmdm.4; for more
information.&prompt.root; kldload nmdm
&prompt.root; bhyve -A -H -P -s 0:0,hostbridge -s 1:0,lpc -s 2:0,virtio-net,tap1 -s 3:0,virtio-blk,./linux.img \
-l com1,/dev/nmdm0A -c 4 -m 1024Mlinuxguest
&prompt.root; cu -l /dev/nmdm0B -s 9600
Connected
Ubuntu 13.10 handbook ttyS0
handbook login:Managing Virtual MachinesA device node is created in /dev/vmm for each virtual
machine. This allows the administrator to easily see a list
of the running virtual machines:&prompt.root; ls -al /dev/vmm
total 1
dr-xr-xr-x 2 root wheel 512 Mar 17 12:19 ./
dr-xr-xr-x 14 root wheel 512 Mar 17 06:38 ../
crw------- 1 root wheel 0x1a2 Mar 17 12:20 guestname
crw------- 1 root wheel 0x19f Mar 17 12:19 linuxguest
crw------- 1 root wheel 0x1a1 Mar 17 12:19 otherguestA specified virtual machine can be destroyed using
bhyvectl:&prompt.root; bhyvectl --destroy --vm=guestnamePersistent ConfigurationIn order to configure the system to start
bhyve guests at boot time, add
the following entries to in the following files:/etc/sysctl.confnet.link.tap.up_on_open=1/boot/loader.confvmm_load="YES"
nmdm_load="YES"
if_bridge_load="YES"
if_tap_load="YES"/etc/rc.confcloned_interfaces="bridge0tap0"
ifconfig_bridge0="addm igb0 addm tap0"
Index: head/en_US.ISO8859-1/books/handbook/x11/chapter.xml
===================================================================
--- head/en_US.ISO8859-1/books/handbook/x11/chapter.xml (revision 47272)
+++ head/en_US.ISO8859-1/books/handbook/x11/chapter.xml (revision 47273)
@@ -1,1628 +1,1628 @@
The X Window SystemSynopsisAn installation of &os; using
bsdinstall does not automatically
install a graphical user interface. This chapter describes how
to install and configure &xorg;,
which provides the open source X Window System used to provide a
graphical environment. It then describes how to find and
install a desktop environment or window manager.Users who prefer an installation method that automatically
configures the &xorg; and offers a
choice of window managers during installation should refer to
the pcbsd.org
website.For more information on the video hardware that
&xorg; supports, refer to the x.org website.After reading this chapter, you will know:The various components of the X Window System, and how
they interoperate.How to install and configure
&xorg;.How to install and configure several window managers
and desktop environments.How to use &truetype; fonts in
&xorg;.How to set up your system for graphical logins
(XDM).Before reading this chapter, you should:Know how to install additional third-party
software as described in .TerminologyWhile it is not necessary to understand all of the details
of the various components in the X Window System and how they
interact, some basic knowledge of these components can be
useful:X serverX was designed from the beginning to be
network-centric, and adopts a client-server
model. In this model, the X server runs on
the computer that has the keyboard, monitor, and mouse
attached. The server's responsibility includes tasks such
as managing the display, handling input from the keyboard
and mouse, and handling input or output from other devices
such as a tablet or a video projector. This confuses some
people, because the X terminology is exactly backward to
what they expect. They expect the X server
to be the big powerful machine down the hall, and the
X client to be the machine on their
desk.X clientEach X application, such as
XTerm or
Firefox, is a
client. A client sends messages to the
server such as Please draw a window at these
coordinates, and the server sends back messages
such as The user just clicked on the OK
button.In a home or small office environment, the X server
and the X clients commonly run on the same computer. It
is also possible to run the X server on a less powerful
computer and to run the X applications on a more powerful
system. In this scenario, the communication between the X
client and server takes place over the network.window managerX does not dictate what windows should look like on
screen, how to move them around with the mouse, which
keystrokes should be used to move between windows, what
the title bars on each window should look like, whether or
not they have close buttons on them, and so on. Instead,
X delegates this responsibility to a separate window
manager application. There are dozens of window
managers available. Each window manager provides
a different look and feel: some support virtual desktops,
some allow customized keystrokes to manage the desktop,
some have a Start button, and some are
themeable, allowing a complete change of the desktop's
look-and-feel. Window managers are available in the
x11-wm category of the Ports
Collection.Each window manager uses a different configuration
mechanism. Some expect configuration file written by hand
while others provide graphical tools for most
configuration tasks.desktop environmentKDE and
GNOME are considered to be
desktop environments as they include an entire suite of
applications for performing common desktop tasks. These
may include office suites, web browsers, and games.focus policyThe window manager is responsible for the mouse focus
policy. This policy provides some means for choosing
which window is actively receiving keystrokes and it
should also visibly indicate which window is currently
active.One focus policy is called
click-to-focus. In this model, a window
becomes active upon receiving a mouse click. In the
focus-follows-mouse policy, the window that
is under the mouse pointer has focus and the focus is
changed by pointing at another window. If the mouse is
over the root window, then this window is focused. In the
sloppy-focus model, if the mouse is moved
over the root window, the most recently used window still
has the focus. With sloppy-focus, focus is only changed
when the cursor enters a new window, and not when exiting
the current window. In the click-to-focus
policy, the active window is selected by mouse click. The
window may then be raised and appear in front of all other
windows. All keystrokes will now be directed to this
window, even if the cursor is moved to another
window.Different window managers support different focus
models. All of them support click-to-focus, and the
majority of them also support other policies. Consult the
documentation for the window manager to determine which
focus models are available.widgetsWidget is a term for all of the items in the user
interface that can be clicked or manipulated in some way.
This includes buttons, check boxes, radio buttons, icons,
and lists. A widget toolkit is a set of widgets used to
create graphical applications. There are several popular
widget toolkits, including Qt, used by
KDE, and GTK+, used by
GNOME. As a result,
applications will have a different look and feel,
depending upon which widget toolkit was used to create the
application.Installing &xorg;&xorg; is the implementation of
the open source X Window System released by the X.Org
Foundation. In &os;, it can be installed as a package or port.
The meta-port for the complete distribution which includes X
servers, clients, libraries, and fonts is located in
x11/xorg. A minimal distribution is located
in x11/xorg-minimal, with separate ports
available for docs, libraries, and apps. The examples in this
section install the complete &xorg;
distribution.To build and install &xorg; from
the Ports Collection:&prompt.root; cd /usr/ports/x11/xorg
&prompt.root; make install cleanTo build &xorg; in its
entirety, be sure to have at least 4 GB of free disk
space available.Alternatively, &xorg; can be
installed directly from packages with this command:&prompt.root; pkg install xorg&xorg; Configuration&xorg;&xorg;In most cases, &xorg; is
self-configuring. Autoconfiguration is the preferred method,
and should be tried first. When X is started without a
configuration file, the video card and input devices are
automatically detected and used. If the system already has a
configuration file and you wish to create a new configuration,
save a copy of the old one first:&prompt.root; mv /etc/X11/xorg.conf ~/xorg.conf.etc
&prompt.root; mv /usr/local/etc/X11/xorg.conf ~/xorg.conf.localetcTo generate the configuration file and start the X system,
issue this command:&prompt.user; startxIf a black and grey grid and an X mouse cursor appear, the
configuration was successful. Test the system by moving the
mouse and typing text into the windows. To exit the test,
switch to the virtual console used to start it by pressing
CtrlAltFn
(F1 for the first virtual console) and press
CtrlC.If the mouse or keyboard do not work, continue with .Desktop environments like GNOME,
KDE or
Xfce provide graphical tools to set
parameters such as video resolution. If the default
configuration works, skip to for
examples on how to install a desktop environment.The CtrlAltBackspace key combination may also be used to break out of
&xorg;. To enable it, you can
either type the following command from any X terminal
emulator:&prompt.user; setxkbmap -option terminate:ctrl_alt_bkspor create a keyboard configuration file for
hald called
x11-input.fdi and saved in the
/usr/local/etc/hal/fdi/policy directory.
This file should contain the following lines:<?xml version="1.0" encoding="iso-8859-1"?>
<deviceinfo version="0.2">
<device>
<match key="info.capabilities" contains="input.keyboard">
<merge key="input.x11_options.XkbOptions" type="string">terminate:ctrl_alt_bksp</merge>
</match>
</device>
</deviceinfo>The following line will also have to be added to
xorg.conf.new, in the
ServerLayout or
ServerFlags section:Option "DontZap" "off"CaveatsThe ability to configure optimal resolution is dependent
upon the video hardware and the support provided by its
driver. At this time, driver support includes:Intel: as of &os; 9.3 and &os; 10.1, 3D
acceleration on most Intel graphics, including IronLake,
SandyBridge, and IvyBridge, is supported. Support for
switching between X and virtual consoles is provided by
&man.vt.4;.ATI/Radeon: 2D and 3D acceleration is supported on
most Radeon cards up to the HD6000 series.NVIDIA: several NVIDIA drivers are available in the
x11 category of the Ports Collection.
Install the driver that matches the video card.Optimus: currently there is no switching support
between the two graphics adapters provided by Optimus.
Optimus implementations vary, and &os; will not be able to
drive all versions of the hardware. Some computers
provide a BIOS option to disable one of
the graphics adapters or select a
discrete mode.Using Fonts in &xorg;Type1 FontsThe default fonts that ship with
&xorg; are less than ideal for
typical desktop publishing applications. Large presentation
fonts show up jagged and unprofessional looking, and small
fonts are almost completely unintelligible. However, there
are several free, high quality Type1 (&postscript;) fonts
available which can be readily used with
&xorg;. For instance, the URW font
collection (x11-fonts/urwfonts) includes
high quality versions of standard type1 fonts (Times Roman, Helvetica, Palatino and others). The
Freefonts collection (x11-fonts/freefonts)
includes many more fonts, but most of them are intended for
use in graphics software such as the
Gimp, and are not complete enough
to serve as screen fonts. In addition,
&xorg; can be configured to use
&truetype; fonts with a minimum of effort. For more details
on this, see the &man.X.7; manual page or .To install the above Type1 font collections from the Ports
Collection, run the following commands:&prompt.root; cd /usr/ports/x11-fonts/urwfonts
&prompt.root; make install cleanAnd likewise with the freefont or other collections. To
have the X server detect these fonts, add an appropriate line
to the X server configuration file
(/etc/X11/xorg.conf), which reads:FontPath "/usr/local/share/fonts/urwfonts/"Alternatively, at the command line in the X session
run:&prompt.user; xset fp+ /usr/local/share/fonts/urwfonts
&prompt.user; xset fp rehashThis will work but will be lost when the X session is
closed, unless it is added to the startup file
(~/.xinitrc for a normal
startx session, or
~/.xsession when logging in through a
graphical login manager like XDM).
A third way is to use the new
/usr/local/etc/fonts/local.conf as
demonstrated in .&truetype; FontsTrueType FontsfontsTrueType&xorg; has built in support for
rendering &truetype; fonts. There are two different modules
that can enable this functionality. The freetype module is
used in this example because it is more consistent with the
other font rendering back-ends. To enable the freetype module
just add the following line to the "Module"
section of /etc/X11/xorg.conf.Load "freetype"Now make a directory for the &truetype; fonts (for
example,
/usr/local/share/fonts/TrueType) and
copy all of the &truetype; fonts into this directory. Keep in
mind that &truetype; fonts cannot be directly taken from an
&apple; &mac;; they must be in &unix;/&ms-dos;/&windows;
format for use by &xorg;. Once the
files have been copied into this directory, use
ttmkfdir to create a
fonts.dir, so that the X font renderer
knows that these new files have been installed.
ttmkfdir is available from the FreeBSD
Ports Collection as
x11-fonts/ttmkfdir.&prompt.root; cd /usr/local/share/fonts/TrueType
&prompt.root; ttmkfdir -o fonts.dirNow add the &truetype; directory to the font path. This
is just the same as described in :&prompt.user; xset fp+ /usr/local/share/fonts/TrueType
&prompt.user; xset fp rehashor add a FontPath line to
xorg.conf.Now Gimp,
OpenOffice, and all of the other X
applications should now recognize the installed &truetype;
fonts. Extremely small fonts (as with text in a high
resolution display on a web page) and extremely large fonts
(within &staroffice;) will look
much better now.Anti-Aliased Fontsanti-aliased fontsfontsanti-aliasedAll fonts in &xorg; that are
found in /usr/local/share/fonts/ and
~/.fonts/ are automatically made
available for anti-aliasing to Xft-aware applications. Most
recent applications are Xft-aware, including
KDE,
GNOME, and
Firefox.In order to control which fonts are anti-aliased, or to
configure anti-aliasing properties, create (or edit, if it
already exists) the file
/usr/local/etc/fonts/local.conf. Several
advanced features of the Xft font system can be tuned using
this file; this section describes only some simple
possibilities. For more details, please see
&man.fonts-conf.5;.XMLThis file must be in XML format. Pay careful attention to
case, and make sure all tags are properly closed. The file
begins with the usual XML header followed by a DOCTYPE
definition, and then the <fontconfig>
tag:<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>As previously stated, all fonts in
/usr/local/share/fonts/ as well as
~/.fonts/ are already made available to
Xft-aware applications. If you wish to add another directory
outside of these two directory trees, add a line similar to
the following to
/usr/local/etc/fonts/local.conf:<dir>/path/to/my/fonts</dir>After adding new fonts, and especially new font
directories, you should run the following command to rebuild
the font caches:&prompt.root; fc-cache -fAnti-aliasing makes borders slightly fuzzy, which makes
very small text more readable and removes
staircases from large text, but can cause
eyestrain if applied to normal text. To exclude font sizes
smaller than 14 point from anti-aliasing, include these
lines: <match target="font">
<test name="size" compare="less">
<double>14</double>
</test>
<edit name="antialias" mode="assign">
<bool>false</bool>
</edit>
</match>
<match target="font">
<test name="pixelsize" compare="less" qual="any">
<double>14</double>
</test>
<edit mode="assign" name="antialias">
<bool>false</bool>
</edit>
</match>fontsspacingSpacing for some monospaced fonts may also be
inappropriate with anti-aliasing. This seems to be an issue
with KDE, in particular. One
possible fix for this is to force the spacing for such fonts
to be 100. Add the following lines: <match target="pattern" name="family">
<test qual="any" name="family">
<string>fixed</string>
</test>
<edit name="family" mode="assign">
<string>mono</string>
</edit>
</match>
<match target="pattern" name="family">
<test qual="any" name="family">
<string>console</string>
</test>
<edit name="family" mode="assign">
<string>mono</string>
</edit>
</match>(this aliases the other common names for fixed fonts as
"mono"), and then add: <match target="pattern" name="family">
<test qual="any" name="family">
<string>mono</string>
</test>
<edit name="spacing" mode="assign">
<int>100</int>
</edit>
</match> Certain fonts, such as Helvetica, may have a problem when
anti-aliased. Usually this manifests itself as a font that
seems cut in half vertically. At worst, it may cause
applications to crash. To avoid this, consider adding the
following to local.conf: <match target="pattern" name="family">
<test qual="any" name="family">
<string>Helvetica</string>
</test>
<edit name="family" mode="assign">
<string>sans-serif</string>
</edit>
</match> Once you have finished editing
local.conf make sure you end the file
with the </fontconfig> tag. Not
doing this will cause your changes to be ignored.Finally, users can add their own settings via their
personal .fonts.conf files. To do this,
each user should simply create a
~/.fonts.conf. This file must also be in
XML format.LCD screenFontsLCD screenOne last point: with an LCD screen, sub-pixel sampling may
be desired. This basically treats the (horizontally
separated) red, green and blue components separately to
improve the horizontal resolution; the results can be
dramatic. To enable this, add the line somewhere in
local.conf:<match target="font">
<test qual="all" name="rgba">
<const>unknown</const>
</test>
<edit name="rgba" mode="assign">
<const>rgb</const>
</edit>
</match>Depending on the sort of display,
rgb may need to be changed to
bgr, vrgb or
vbgr: experiment and see which works
best.The X Display ManagerSethKingsleyContributed by X Display Manager&xorg; provides an X Display
Manager, XDM, which can be used for
login session management. XDM
provides a graphical interface for choosing which display server
to connect to and for entering authorization information such as
a login and password combination.This section demonstrates how to configure the X Display
Manager on &os;. Some desktop environments provide their own
graphical login manager. Refer to for instructions on how to configure
the GNOME Display Manager and for
instructions on how to configure the KDE Display Manager.Configuring XDMTo install XDM, use the
x11/xdm package or port. Once installed,
XDM can be configured to run when
the machine boots up by editing this entry in
/etc/ttys:ttyv8 "/usr/local/bin/xdm -nodaemon" xterm off secureChange the off to on
and save the edit. The ttyv8 in this entry
indicates that XDM will run on the
ninth virtual terminal.The XDM configuration directory
is located in /usr/local/lib/X11/xdm.
This directory contains several files used to change the
behavior and appearance of XDM, as
well as a few scripts and programs used to set up the desktop
when XDM is running. summarizes the function of each
of these files. The exact syntax and usage of these files is
described in &man.xdm.1;.
XDM Configuration FilesFileDescriptionXaccessThe protocol for connecting to
XDM is called the X Display
Manager Connection Protocol (XDMCP)
This file is a client authorization ruleset for
controlling XDMCP connections from
remote machines. By default, this file does not allow
any remote clients to connect.XresourcesThis file controls the look and feel of the
XDM display chooser and
login screens. The default configuration is a simple
rectangular login window with the hostname of the
machine displayed at the top in a large font and
Login: and Password:
prompts below. The format of this file is identical
to the app-defaults file described in the
&xorg;
documentation.XserversThe list of local and remote displays the chooser
should provide as login choices.XsessionDefault session script for logins which is run by
XDM after a user has logged
in. Normally each user will have a customized session
script in ~/.xsession that
overrides this scriptXsetup_*Script to automatically launch applications
before displaying the chooser or login interfaces.
There is a script for each display being used, named
Xsetup_*, where
* is the local display number.
Typically these scripts run one or two programs in the
background such as
xconsole.xdm-configGlobal configuration for all displays running
on this machine.xdm-errorsContains errors generated by the server program.
If a display that XDM is
trying to start hangs, look at this file for error
messages. These messages are also written to the
user's ~/.xsession-errors on a
per-session basis.xdm-pidThe running process ID of
XDM.
Configuring Remote AccessBy default, only users on the same system can login using
XDM. To enable users on other
systems to connect to the display server, edit the access
control rules and enable the connection listener.To configure XDM to listen for
any remote connection, comment out the
DisplayManager.requestPort line in
/usr/local/lib/X11/xdm/xdm-config by
putting a ! in front of it:! SECURITY: do not listen for XDMCP or Chooser requests
! Comment out this line if you want to manage X terminals with xdm
DisplayManager.requestPort: 0Save the edits and restart XDM.
To restrict remote access, look at the example entries in
/usr/local/lib/X11/xdm/Xaccess and refer
to &man.xdm.1; for further information.Desktop EnvironmentsValentinoVaschettoContributed by This section describes how to install three popular desktop
environments on a &os; system. A desktop environment can range
from a simple window manager to a complete suite of desktop
applications. Over a hundred desktop environments are available
in the x11-wm category of the Ports
Collection.GNOMEGNOMEGNOME is a user-friendly
desktop environment. It includes a panel for starting
applications and displaying status, a desktop, a set of tools
and applications, and a set of conventions that make it easy
for applications to cooperate and be consistent with each
other. More information regarding
GNOME on &os; can be found at http://www.FreeBSD.org/gnome.
That web site contains additional documentation about
installing, configuring, and managing
GNOME on &os;.This desktop environment can be installed from a
package:&prompt.root; pkg install gnome2To instead build GNOME from
ports, use the following command.
GNOME is a large application and
will take some time to compile, even on a fast
computer.&prompt.root; cd /usr/ports/x11/gnome2
&prompt.root; make install cleanFor proper operation, GNOME
requires /proc to be mounted. Add this
line to /etc/fstab to mount this file
system automatically during system startup:proc /proc procfs rw 0 0Once GNOME is installed,
configure &xorg; to start
GNOME. The easiest way to do this
is to enable the GNOME Display Manager,
GDM, which is installed as part of
the GNOME package or port. It can
be enabled by adding this line to
/etc/rc.conf:gdm_enable="YES"It is often desirable to also start all
GNOME services. To achieve this,
add a second line to /etc/rc.conf:gnome_enable="YES"GDM will now start
automatically when the system boots.A second method for starting
GNOME is to type
startx from the command-line after
configuring ~/.xinitrc. If this file
already exists, replace the line that starts the current
window manager with one that starts
/usr/local/bin/gnome-session. If this
file does not exist, create it with this command:&prompt.user; echo "exec /usr/local/bin/gnome-session" > ~/.xinitrcA third method is to use XDM as
the display manager. In this case, create an executable
~/.xsession:&prompt.user; echo "#!/bin/sh" > ~/.xsession
&prompt.user; echo "exec /usr/local/bin/gnome-session" >> ~/.xsession
&prompt.user; chmod +x ~/.xsessionKDEKDEKDE is another easy-to-use
desktop environment. This desktop provides a suite of
applications with a consistent look and feel, a standardized
menu and toolbars, keybindings, color-schemes,
internationalization, and a centralized, dialog-driven desktop
configuration. More information on
KDE can be found at http://www.kde.org/.
For &os;-specific information, consult http://freebsd.kde.org.To install the KDE package,
type:&prompt.root; pkg install x11/kde4To instead build the KDE port,
use the following command. Installing the port will provide a
menu for selecting which components to install.
KDE is a large application and will
take some time to compile, even on a fast computer.&prompt.root; cd /usr/ports/x11/kde4
&prompt.root; make install cleanKDEdisplay managerKDE requires
/proc to be mounted. Add this line to
/etc/fstab to mount this file system
automatically during system startup:proc /proc procfs rw 0 0The installation of KDE
includes the KDE Display Manager,
KDM. To enable this display
manager, add this line to
/etc/rc.conf:kdm4_enable="YES"A second method for launching
KDE is to type
startx from the command line. For this to
work, the following line is needed in
~/.xinitrc:exec /usr/local/bin/startkdeA third method for starting KDE
is through XDM. To do so, create
an executable ~/.xsession as
follows:&prompt.user; echo "#!/bin/sh" > ~/.xsession
&prompt.user; echo "exec /usr/local/bin/startkde" >> ~/.xsession
&prompt.user; chmod +x ~/.xsessionOnce KDE is started, refer to
its built-in help system for more information on how to use
its various menus and applications.XfceXfce is a desktop environment
based on the GTK+ toolkit used by
GNOME. However, it is more
lightweight and provides a simple, efficient, easy-to-use
desktop. It is fully configurable, has a main panel with
menus, applets, and application launchers, provides a file
manager and sound manager, and is themeable. Since it is
fast, light, and efficient, it is ideal for older or slower
machines with memory limitations. More information on
Xfce can be found at http://www.xfce.org.To install the Xfce
package:&prompt.root; pkg install xfceAlternatively, to build the port:&prompt.root; cd /usr/ports/x11-wm/xfce4
&prompt.root; make install cleanUnlike GNOME or
KDE,
Xfce does not provide its own login
manager. In order to start Xfce
from the command line by typing startx,
first add its entry to ~/.xinitrc:&prompt.user; echo "exec /usr/local/bin/startxfce4" > ~/.xinitrcAn alternate method is to use
XDM. To configure this method,
create an executable ~/.xsession:&prompt.user; echo "#!/bin/sh" > ~/.xsession
&prompt.user; echo "exec /usr/local/bin/startxfce4" >> ~/.xsession
&prompt.user; chmod +x ~/.xsessionInstalling Compiz FusionOne way to increase the pleasantness of using a desktop
computer is by having nice 3D effects.Installing the Compiz Fusion
package is easy, but configuring it requires a few steps that
are not described in the port's documentation.Setting up the &os; nVidia DriverDesktop effects can cause quite a load on the graphics
card. For an nVidia-based graphics card, the proprietary
driver is required for good performance. Users of other
graphics cards can skip this section and continue with the
xorg.conf configuration.To determine which nVidia driver is needed see the FAQ question
on the subject.Having determined the correct driver to use for your card,
installation is as simple as installing any other
package.For example, to install the latest driver:&prompt.root; pkg install x11/nvidia-driverThe driver will create a kernel module, which needs to be
loaded at system startup. Add the following line to
/boot/loader.conf:nvidia_load="YES"To immediately load the kernel module into the running
kernel by issuing a command like kldload
nvidia, however it has been noted that the some
versions of &xorg; will not
function properly if the driver is not loaded at boot time.
After editing /boot/loader.conf, a
reboot is recommended.With the kernel module loaded, you normally only need to
change a single line in xorg.conf
to enable the proprietary driver:Find the following line in
/etc/X11/xorg.conf:Driver "nv"and change it to:Driver "nvidia"Start the GUI as usual, and you should be greeted by the
nVidia splash. Everything should work as usual.Configuring xorg.conf for Desktop EffectsTo enable Compiz Fusion,
/etc/X11/xorg.conf needs to be
modified:Add the following section to enable composite
effects:Section "Extensions"
Option "Composite" "Enable"
EndSectionLocate the Screen section which should look
similar to the one below:Section "Screen"
Identifier "Screen0"
Device "Card0"
Monitor "Monitor0"
...and add the following two lines (after
Monitor will do):DefaultDepth 24
Option "AddARGBGLXVisuals" "True"Locate the Subsection that refers to the
screen resolution that you wish to use. For example, if you
wish to use 1280x1024, locate the section that follows. If
the desired resolution does not appear in any subsection, you
may add the relevant entry by hand:SubSection "Display"
Viewport 0 0
Modes "1280x1024"
EndSubSectionA color depth of 24 bits is needed for desktop
composition, change the above subsection to:SubSection "Display"
Viewport 0 0
Depth 24
Modes "1280x1024"
EndSubSectionFinally, confirm that the glx and
extmod modules are loaded in the
Module section:Section "Module"
Load "extmod"
Load "glx"
...The preceding can be done automatically with
x11/nvidia-xconfig by running (as
root):&prompt.root; nvidia-xconfig --add-argb-glx-visuals
&prompt.root; nvidia-xconfig --composite
&prompt.root; nvidia-xconfig --depth=24Installing and Configuring Compiz FusionInstalling Compiz Fusion
is as simple as any other package:&prompt.root; pkg install x11-wm/compiz-fusionWhen the installation is finished, start your graphic
desktop and at a terminal, enter the following commands (as a
normal user):&prompt.user; compiz --replace --sm-disable --ignore-desktop-hints ccp &
&prompt.user; emerald --replace &Your screen will flicker for a few seconds, as your window
manager (e.g. Metacity if you are
using GNOME) is replaced by
Compiz Fusion.
Emerald takes care of the window
decorations (i.e. close, minimize, maximize buttons, title
bars and so on).You may convert this to a trivial script and have it run
at startup automatically (e.g. by adding to
Sessions in a GNOME
desktop):#! /bin/sh
compiz --replace --sm-disable --ignore-desktop-hints ccp &
emerald --replace &Save this in your home directory as, for example,
start-compiz and make it
executable:&prompt.user; chmod +x ~/start-compizThen use the GUI to add it to Startup
Programs (located in
System,
Preferences,
Sessions on a
GNOME desktop).To actually select all the desired effects and their
settings, execute (again as a normal user) the
Compiz Config Settings Manager:&prompt.user; ccsmIn GNOME, this can also be
found in the System,
Preferences menu.If you have selected gconf support during
the build, you will also be able to view these settings using
gconf-editor under
apps/compiz.TroubleshootingIf the mouse does not work, you will need to first configure
- it before proceeding. See in the &os;
- install chapter. In recent Xorg
+ it before proceeding.
+ In recent Xorg
versions, the InputDevice sections in
xorg.conf are ignored in favor of the
autodetected devices. To restore the old behavior, add the
following line to the ServerLayout or
ServerFlags section of this file:Option "AutoAddDevices" "false"Input devices may then be configured as in previous
versions, along with any other options needed (e.g., keyboard
layout switching).As previously explained the
hald daemon will, by default,
automatically detect your keyboard. There are chances that
your keyboard layout or model will not be correct, desktop
environments like GNOME,
KDE or
Xfce provide tools to configure
the keyboard. However, it is possible to set the keyboard
properties directly either with the help of the
&man.setxkbmap.1; utility or with a
hald's configuration rule.For example if, one wants to use a PC 102 keys keyboard
coming with a french layout, we have to create a keyboard
configuration file for hald
called x11-input.fdi and saved in the
/usr/local/etc/hal/fdi/policy
directory. This file should contain the following
lines:<?xml version="1.0" encoding="iso-8859-1"?>
<deviceinfo version="0.2">
<device>
<match key="info.capabilities" contains="input.keyboard">
<merge key="input.x11_options.XkbModel" type="string">pc102</merge>
<merge key="input.x11_options.XkbLayout" type="string">fr</merge>
</match>
</device>
</deviceinfo>If this file already exists, just copy and add to your
file the lines regarding the keyboard configuration.You will have to reboot your machine to force
hald to read this file.It is possible to do the same configuration from an X
terminal or a script with this command line:&prompt.user; setxkbmap -model pc102 -layout fr/usr/local/share/X11/xkb/rules/base.lst
lists the various keyboard, layouts and options
available.&xorg;
tuningThe xorg.conf.new configuration file
may now be tuned to taste. Open the file in a text editor
such as &man.emacs.1; or &man.ee.1;. If the monitor is an
older or unusual model that does not support autodetection of
sync frequencies, those settings can be added to
xorg.conf.new under the
"Monitor" section:Section "Monitor"
Identifier "Monitor0"
VendorName "Monitor Vendor"
ModelName "Monitor Model"
HorizSync 30-107
VertRefresh 48-120
EndSectionMost monitors support sync frequency autodetection, making
manual entry of these values unnecessary. For the few
monitors that do not support autodetection, avoid potential
damage by only entering values provided by the
manufacturer.X allows DPMS (Energy Star) features to be used with
capable monitors. The &man.xset.1; program controls the
time-outs and can force standby, suspend, or off modes. If
you wish to enable DPMS features for your monitor, you must
add the following line to the monitor section:Option "DPMS"xorg.confWhile the xorg.conf.new configuration
file is still open in an editor, select the default resolution
and color depth desired. This is defined in the
"Screen" section:Section "Screen"
Identifier "Screen0"
Device "Card0"
Monitor "Monitor0"
DefaultDepth 24
SubSection "Display"
Viewport 0 0
Depth 24
Modes "1024x768"
EndSubSection
EndSectionThe DefaultDepth keyword describes the
color depth to run at by default. This can be overridden with
the command line switch to
&man.Xorg.1;. The Modes keyword describes
the resolution to run at for the given color depth. Note that
only VESA standard modes are supported as defined by the
target system's graphics hardware. In the example above, the
default color depth is twenty-four bits per pixel. At this
color depth, the accepted resolution is 1024 by 768
pixels.Finally, write the configuration file and test it using
the test mode given above.One of the tools available to assist you during
troubleshooting process are the
&xorg; log files, which contain
information on each device that the
&xorg; server attaches to.
&xorg; log file names are in the
format of /var/log/Xorg.0.log. The
exact name of the log can vary from
Xorg.0.log to
Xorg.8.log and so forth.If all is well, the configuration file needs to be
installed in a common location where &man.Xorg.1; can find it.
This is typically /etc/X11/xorg.conf or
/usr/local/etc/X11/xorg.conf.&prompt.root; cp xorg.conf.new /etc/X11/xorg.confThe &xorg; configuration
process is now complete. &xorg;
may be now started with the &man.startx.1; utility. The
&xorg; server may also be started
with the use of &man.xdm.1;.Configuration with &intel; i810
Graphics ChipsetsIntel i810 graphic chipsetConfiguration with &intel; i810 integrated chipsets
requires the agpgart AGP programming
interface for &xorg; to drive the
card. See the &man.agp.4; driver manual page for more
information.This will allow configuration of the hardware as any
other graphics board. Note on systems without the
&man.agp.4; driver compiled in the kernel, trying to load
the module with &man.kldload.8; will not work. This driver
has to be in the kernel at boot time through being compiled
in or using /boot/loader.conf.Adding a Widescreen Flatpanel to the Mixwidescreen flatpanel configurationThis section assumes a bit of advanced configuration
knowledge. If attempts to use the standard configuration
tools above have not resulted in a working configuration,
there is information enough in the log files to be of use in
getting the setup working. Use of a text editor will be
necessary.Current widescreen (WSXGA, WSXGA+, WUXGA, WXGA, WXGA+,
et.al.) formats support 16:10 and 10:9 formats or aspect
ratios that can be problematic. Examples of some common
screen resolutions for 16:10 aspect ratios are:2560x16001920x12001680x10501440x9001280x800At some point, it will be as easy as adding one of these
resolutions as a possible Mode in the
Section "Screen" as such:Section "Screen"
Identifier "Screen0"
Device "Card0"
Monitor "Monitor0"
DefaultDepth 24
SubSection "Display"
Viewport 0 0
Depth 24
Modes "1680x1050"
EndSubSection
EndSection&xorg; is smart enough to
pull the resolution information from the widescreen via
I2C/DDC information so it knows what the monitor can handle
as far as frequencies and resolutions.If those ModeLines do not exist in
the drivers, one might need to give
&xorg; a little hint. Using
/var/log/Xorg.0.log one can extract
enough information to manually create a
ModeLine that will work. Simply look for
information resembling this:(II) MGA(0): Supported additional Video Mode:
(II) MGA(0): clock: 146.2 MHz Image Size: 433 x 271 mm
(II) MGA(0): h_active: 1680 h_sync: 1784 h_sync_end 1960 h_blank_end 2240 h_border: 0
(II) MGA(0): v_active: 1050 v_sync: 1053 v_sync_end 1059 v_blanking: 1089 v_border: 0
(II) MGA(0): Ranges: V min: 48 V max: 85 Hz, H min: 30 H max: 94 kHz, PixClock max 170 MHzThis information is called EDID information. Creating a
ModeLine from this is just a matter of
putting the numbers in the correct order:ModeLine <name> <clock> <4 horiz. timings> <4 vert. timings>So that the ModeLine in
Section "Monitor" for this example would
look like this:Section "Monitor"
Identifier "Monitor1"
VendorName "Bigname"
ModelName "BestModel"
ModeLine "1680x1050" 146.2 1680 1784 1960 2240 1050 1053 1059 1089
Option "DPMS"
EndSectionNow having completed these simple editing steps, X
should start on your new widescreen monitor.Troubleshooting Compiz FusionI have installed
Compiz Fusion, and
after running the commands you mention, my windows are
left without title bars and buttons. What is
wrong?You are probably missing a setting in
/etc/X11/xorg.conf. Review this
file carefully and check especially the
DefaultDepth and
AddARGBGLXVisuals
directives.When I run the command to start
Compiz Fusion, the X
server crashes and I am back at the console. What is
wrong?If you check
/var/log/Xorg.0.log, you
will probably find error messages during the X
startup. The most common would be:(EE) NVIDIA(0): Failed to initialize the GLX module; please check in your X
(EE) NVIDIA(0): log file that the GLX module has been loaded in your X
(EE) NVIDIA(0): server, and that the module is the NVIDIA GLX module. If
(EE) NVIDIA(0): you continue to encounter problems, Please try
(EE) NVIDIA(0): reinstalling the NVIDIA driver.This is usually the case when you upgrade
&xorg;. You will need to
reinstall the x11/nvidia-driver
package so glx is built again.