494 lines
22 KiB
Text
494 lines
22 KiB
Text
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" [
|
|
<!ENTITY base CDATA "../..">
|
|
<!ENTITY date "$FreeBSD: www/en/releases/2.0/install.sgml,v 1.4 2002/03/16 08:04:52 murray Exp $">
|
|
<!ENTITY title "FreeBSD 2.0 Installation Guide">
|
|
<!ENTITY % includes SYSTEM "../../includes.sgml"> %includes;
|
|
]>
|
|
<html>
|
|
&header;
|
|
|
|
<pre>
|
|
Welcome to FreeBSD 2.0, the complete 4.4 BSD Lite based OS for Intel (or
|
|
compatible) based PCs.
|
|
|
|
There are several documents on the floppy and a couple of on-line help
|
|
screens that will greatly assist you in installing your system as you go
|
|
along. Nonetheless, initial user testing has shown that some of the
|
|
terminology used may be difficult for newcomers to UN*X to understand, so
|
|
we've prepared this step-by-step guide explaining a typical installation.
|
|
You may find it useful to print this out and keep it handy as you go
|
|
through the installation, or at least read through it once carefully so
|
|
that some of the prompts and questions you encounter do not come as
|
|
complete surprises.
|
|
|
|
Before you do anything, make two 1.44MB floppies from the two image files
|
|
you'll find in the floppies/ directory - boot.flp and cpio.flp. If you're
|
|
reading this under DOS, you can do it in 1 easy step, or 3 in case this
|
|
doesn't (for some weird reason) work:
|
|
|
|
1. If you're reading this file after typing "go", simply ESC back out for
|
|
a moment and select the "makeflp" batch file to make the two floppies.
|
|
This will invoke the DOS formatter to format the floppies and then
|
|
attempt to write the two disk images onto them. If this doesn't work,
|
|
follow steps 2 through 4:
|
|
|
|
2. Use the DOS format command to format 2 NEW floppies. A lot of problems
|
|
have been caused by people using old and defective floppies, and much
|
|
grief can often be saved by simply using new, or at least trusted,
|
|
media.
|
|
|
|
3. Insert the first floppy and type:
|
|
|
|
tools\dos-tool\rawrite floppies\boot.flp a:
|
|
|
|
4. Insert the second floppy and type
|
|
|
|
tools\dos-tool\rawrite floppies\cpio.flp a:
|
|
|
|
You're now prepared to boot from the boot floppy and begin the installation.
|
|
|
|
|
|
The installation starts with the following screen:
|
|
|
|
+-------------------------- Welcome to FreeBSD! ---------------------------+
|
|
| Use ALT-F2 and ALT-F1 to toggle between debugging |
|
|
| information screen (ALT-F2) or this dialog screen (ALT-F1) |
|
|
| |
|
|
| Please select one of the following options: |
|
|
| +----------------------------------------------------------------------+ |
|
|
| | 1. README READ THIS FIRST. | |
|
|
| | 2. Release Notes Read the 2.0 Release Notes (recommended). | |
|
|
| | 3. Troubleshooting Read this in case of trouble. | |
|
|
| | 4. Partitions and MBRs Verbose description of how these work. | |
|
|
| | 5. COPYRIGHT Read FreeBSD Copyright Information. | |
|
|
| | 6. Install Proceed with full installation. | |
|
|
| | 7. Fixit Repair existing installation (`fixit' mode). | |
|
|
| | 8. Quit Don't do anything, just reboot. | |
|
|
| +----------------------------------------------------------------------+ |
|
|
+--------------------------------------------------------------------------+
|
|
| < OK > <Cancel> |
|
|
+--------------------------------------------------------------------------+
|
|
|
|
|
|
You can move the arrow keys up and down to highlight the various options,
|
|
selecting an option by hitting return when its line is highlighted. You
|
|
can also type the number of the option you want (1 - 7) and hit return.
|
|
It's recommended that you read the README at a minimum, though the Release
|
|
Notes are also helpful. This may seem a like a lot to read, but if you are
|
|
new to FreeBSD then these notes are invaluable for explaining the system
|
|
and are highly recommended.
|
|
|
|
When you're done reading docs, select Install (5) to proceed to the next
|
|
screen.
|
|
|
|
This next screen is the disk editor screen, which looks like this:
|
|
|
|
------------------------------------------------------------------------------
|
|
FreeBSD 2.0-RELEASE Installation -- Diskspace editor
|
|
|
|
Disks Total FreeBSD |You should now assign some
|
|
|space to root, swap, and
|
|
0: sd0 2006 MB 0 MB |(optionally) /usr partitions
|
|
1: sd1 496 MB 0 MB |Root (/) should be a minimum
|
|
|of 18MB with a 30MB /usr
|
|
Filesystems Type Size Action Mountpoint |or 50MB without a /usr.
|
|
|Swap space should be a
|
|
|minimum of 12MB or RAM * 2
|
|
|Be sure to also (A)ssign a
|
|
|mount point to each one or
|
|
|it will NOT be enabled.
|
|
|
|
|
|We suggest that you invoke
|
|
|(F)disk, (W)rite the bootcode
|
|
|then (D)isklabel your disk.
|
|
|If installing on a drive
|
|
|other than 0, also read the
|
|
|TROUBLESHOOTING doc first
|
|
Commands available:
|
|
(H)elp (T)utorial (F)disk (D)isklabel (P)roceed (Q)uit
|
|
|
|
Enter Command>
|
|
|
|
------------------------------------------------------------------------------
|
|
|
|
As we can see, this system has two drives, sd0 and sd1. On an IDE system,
|
|
these would show up as "wd0" and "wd1" (or, on a single drive system, just
|
|
sd0 or wd0). We can see that neither of them has any space assigned to
|
|
FreeBSD (they each show 0MB under the FreeBSD column), so we follow the
|
|
instructions on the right hand side of the screen and invoke the (F)disk
|
|
editor by typing `f':
|
|
|
|
Enter Command> F
|
|
|
|
We're now prompted with the drive number to (F)disk, so we enter 0 for
|
|
the first drive:
|
|
|
|
Enter number of disk to Fdisk> 0
|
|
|
|
This now brings us to the FDISK editor screen, which looks like this:
|
|
|
|
------------------------------------------------------------------------------
|
|
FreeBSD 2.0-RELEASE Installation -- Diskspace editor -- FDISK
|
|
|
|
Disk: sd0 Geometry: 2006 Cyl * 32 Hd * 64 Sect = 2006Mb = 4108600 Sect
|
|
|
|
1 Boot?=No Type=Primary 'big' DOS (> 32MB)
|
|
Phys=(c0/h1/s1..c299/h63/s32) Sector=(32..614399)
|
|
Size=300 MB, 299 Cylinders + 31 Tracks + 32 Sectors
|
|
|
|
2 Unused
|
|
|
|
|
|
3 Unused
|
|
|
|
|
|
4 Unused
|
|
|
|
|
|
Commands available:
|
|
(H)elp (T)utorial (D)elete (E)dit (R)eread (W)rite MBR (Q)uit
|
|
(U)se entire disk for FreeBSD (G)eometry Write MBR (B)ootcode
|
|
Enter Command>
|
|
|
|
------------------------------------------------------------------------------
|
|
|
|
We see that drive 0 has a DOS partition (also called a "slice" in FreeBSD
|
|
parlance, to distinguish it from a FreeBSD partition) on it which is 300MB
|
|
in size (don't worry if the numbers you see are much smaller than these - I
|
|
have a pretty large 2.1GB disk! :-). Let's also say we want to allocate
|
|
the rest to FreeBSD, so to do this we want to (E)dit one of the existing
|
|
slices. We can see that 2, 3, and 4 are unused so let's pick the first
|
|
unused one, which is 2 (if we wanted to replace an existing operating
|
|
system slice with FreeBSD, we'd pick its number instead). We first type
|
|
`E' to edit a slice entry:
|
|
|
|
Enter Command> E
|
|
|
|
And we're prompted for a slice to edit. We type 2:
|
|
|
|
Edit which Slice> 2
|
|
|
|
Now we're prompted for the size of the new slice, the default for which is
|
|
all remaining space on the disk. Let's say that we don't want to allocate
|
|
ALL the space on the disk, but want to reserve 400MB for some other future
|
|
OS. The total amount of free space left is 1706MB, which is the default
|
|
value selected for us, so we backspace over it and enter 1306:
|
|
|
|
Size of slice in MB> 1306
|
|
|
|
Now we're asked for the type of the slice. The type is what tells the PC
|
|
what sort of slice this is. DOS primary slices are, for example, type 6.
|
|
FreeBSD slices are type 0xa5 (hexadecimal). If we wanted to reserve space
|
|
at this time for some other type of OS like Linux or OS/2, and we knew
|
|
their slice type (0x82 for Linux and 0x0A for OS/2, just in case you're
|
|
interested), we could also do that from this editor, but we're only
|
|
interested in FreeBSD for now so we accept the default.
|
|
|
|
Type of slice (0xa5=FreeBSD)> 0xa5
|
|
|
|
The next prompt asks if we want to make this slice bootable by
|
|
default, which we do so we accept the default:
|
|
|
|
Bootflag (0x80 for YES)> 0x80
|
|
|
|
At this point we come back to the main screen, which now shows a new entry
|
|
for slice 2:
|
|
|
|
------------------------------------------------------------------------------
|
|
FreeBSD 2.0-RELEASE Installation -- Diskspace editor -- FDISK
|
|
|
|
Disk: sd0 Geometry: 2006 Cyl * 32 Hd * 64 Sect = 2006Mb = 4108600 Sect
|
|
|
|
1 Boot?=No Type=Primary 'big' DOS (> 32MB)
|
|
Phys=(c0/h1/s1..c299/h63/s32) Sector=(32..614399)
|
|
Size=300 MB, 299 Cylinders + 31 Tracks + 32 Sectors
|
|
|
|
2 Boot?=Yes Type=FreeBSD/NetBSD/386BSD
|
|
Phys=(c300/h0/s1..c1023/h31/s0) Sector=(614400..3289087)
|
|
Size=1306 MB, 1306 Cylinders
|
|
|
|
3 Unused
|
|
|
|
|
|
|
|
4 Unused
|
|
|
|
|
|
|
|
Commands available:
|
|
(H)elp (T)utorial (D)elete (E)dit (R)eread (W)rite MBR (Q)uit
|
|
(U)se entire disk for FreeBSD (G)eometry Write MBR (B)ootcode
|
|
Enter Command>
|
|
|
|
------------------------------------------------------------------------------
|
|
|
|
At this point we're happy with the slices on the first drive, so we type
|
|
`w' to write the new information out. It also prompts to make *sure* we
|
|
really want to do this, so we backspace over the default of `N' and type
|
|
`y'<return>. And this point, we also can decide whether or not we want a
|
|
"boot manager" installed. A boot manager is a little utility that prompts
|
|
you for the operating system you want to boot every time you reset or power
|
|
on your PC, and can be a very handy way of sharing your computer between
|
|
FreeBSD and some other OS, like Linux or DOS. We decide that we want to
|
|
have this feature, so we `b' to write the special MBR (B)ootcode out to the
|
|
disk. This does not harm any of the other operating systems on the disk,
|
|
as it's written to a special area. Now we exit this screen by typing `q',
|
|
for (Q)uit.
|
|
|
|
This brings us back to the main prompt. If we wanted to allocate any
|
|
additional slices on other drives, we also could re-invoke the (F)disk
|
|
editor by typing `f' again and giving a different drive number at the
|
|
prompt, but we'll assume for now that we've only got one disk and want to
|
|
go on. Typing `d' now enters the (D)isklabel screen, which prompts us for
|
|
the drive to write a disklabel onto, like the FDISK editor. We type `0'
|
|
for the first drive and hit return. This brings us to the DISKLABEL editor
|
|
screen, which looks like this:
|
|
|
|
------------------------------------------------------------------------------
|
|
FreeBSD 2.0-RELEASE Installation -- Diskspace editor -- DISKLABEL
|
|
|
|
Part Start End Blocks MB Type Action Mountpoint
|
|
a 0 0 0 0 unused
|
|
b 0 0 0 0 unused
|
|
c 1433600 4108287 2674688 1306 unused <Entire FreeBSD slice>
|
|
d 0 4108599 4108600 2006 unused <Entire Disk>
|
|
e 0 0 0 0 unused
|
|
f 0 0 0 0 unused
|
|
g 0 0 0 0 unused
|
|
h 32 614399 614368 300 MSDOS
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Total size: 2674688 blocks 1306Mb
|
|
Space allocated: 0 blocks 0Mb
|
|
|
|
Commands available:
|
|
(H)elp (T)utorial (E)dit (A)ssign (D)elete (R)eread (W)rite (Q)uit
|
|
(P)reserve (S)lice
|
|
Enter Command>
|
|
|
|
------------------------------------------------------------------------------
|
|
|
|
The BSD partitions, a - h, are FreeBSD's way of dividing up a physical
|
|
slice into multiple filesystems. Every FreeBSD system should have, at
|
|
minimum, a root filesystem and a swap partition allocated. The root
|
|
filesystem is called "/", and is generally put on partition `a' by
|
|
convention. Swap partitions always go on `b', and the `c' and `d'
|
|
partitions are special and point to the entire FreeBSD slice and the entire
|
|
disk, respectively. `c' and `d' cannot and should not be allocated to
|
|
actual filesystems.
|
|
|
|
We also see that partition h points conveniently to the DOS slice,
|
|
which we can also assign to a location in our filesystem hierarchy
|
|
to conveniently share files between FreeBSD and DOS. More on this in
|
|
a moment.
|
|
|
|
A typical filesystem layout might look like this:
|
|
|
|
/ 20MB
|
|
swap 32MB
|
|
/usr 120MB
|
|
|
|
/, or the root filesystem, contains system files and some temporary space.
|
|
It should be at least 18MB in size, though a little extra doesn't hurt.
|
|
Swap space is one of those "it never hurts to have too much" sorts of
|
|
items, though if your system isn't too heavily used then it's probably not
|
|
that important to have lots and lots of it. A good rule of thumb for swap
|
|
is that you want a minimum of 12MB of it, and the overall calculation
|
|
should be the amount of memory you have multiplied by two. That is to
|
|
say that if you have 16MB of memory, then 32MB of swap is good.
|
|
|
|
If you've got several drives, you can also allocate some swap on each one
|
|
and spread the load out a little. On my personal system, I've got 32MB of
|
|
main memory and 64MB of swap on both drives for a total of 128MB of swap.
|
|
This gives me 4X memory for total program swapping, which gives me the
|
|
ability to run some pretty big programs! Emacs and the X Window System, in
|
|
particular, can be real swap hogs.
|
|
|
|
In any case, we'll assume for the moment that we're still configuring the
|
|
ideal system and we'll allocate 64MB of swap space, using the MEM * 2
|
|
equation. If you only had 8MB of memory, you'd allocate 16MB of swap
|
|
instead.
|
|
|
|
The second filesystem of importance is /usr, which contains further system
|
|
binaries and all of the bundled user binaries. /usr should be at least
|
|
80MB in size to hold all of the important binaries, though if you plan on
|
|
having a big /usr/local or on loading the X Window System (also known as
|
|
XFree86 3.1) distribution then you should either create separate
|
|
filesystems for them, or you should make /usr a lot bigger.
|
|
|
|
It's also possible to skip making /usr altogether and simply make a large
|
|
root (/) filesystem. Since /usr fits "underneath" /, a missing /usr won't
|
|
cause any problems if / is large enough to hold the contents for both. In
|
|
any case, it's a user decision and tends to be driven by convention more
|
|
than anything else. For the purposes of this installation guide, we'll
|
|
assume a 200MB /usr, 100MB of space allocated for local binaries, which
|
|
we'll mount on /usr/local, and the rest for user home directories, which
|
|
we'll mount on /usr/users. Don't be put off by the size of these numbers!
|
|
You can make a system fit into less space, but since we're dividing up the
|
|
ideal 2GB dream disk, we might as well do it right! ;-)
|
|
|
|
Getting back to the relevant part of the DISKLABEL screen again, we remember
|
|
that it looked like this:
|
|
|
|
Part Start End Blocks MB Type Action Mountpoint
|
|
a 0 0 0 0 unused
|
|
b 0 0 0 0 unused
|
|
c 1433600 4108287 2674688 1306 unused <Entire FreeBSD slice>
|
|
d 0 4108599 4108600 2006 unused <Entire Disk>
|
|
e 0 0 0 0 unused
|
|
f 0 0 0 0 unused
|
|
g 0 0 0 0 unused
|
|
h 32 614399 614368 300 MSDOS
|
|
|
|
So we'll first allocate some space on partition `a' for that root partition
|
|
by typing `e', for (E)dit partition. This asks us which partition we want
|
|
to change the size of, so we type `a':
|
|
|
|
Change size of which partition> a
|
|
|
|
And it prompts us for the amount of space, so we'll pick 20MB for a nice
|
|
comfortable root filesystem:
|
|
|
|
Size of partition in MB> 20
|
|
|
|
Now we see the display change to:
|
|
|
|
Part Start End Blocks MB Type Action Mountpoint
|
|
a 1433600 1474559 40960 20 4.2BSD
|
|
...
|
|
|
|
The system shows us where the partition starts and stops and indicates that
|
|
it's a 4.2BSD filesystem, which is correct (it's really a 4.4 BSD file
|
|
system, in actuality, but the two are similar enough to share the same
|
|
label).
|
|
|
|
We do the same for swap by typing `e' again and modify the `b' partition
|
|
by filling in 64 for the size, to allocate 64MB of swap.
|
|
|
|
Finally, remembering that `c' and `d' are special, and not for our use, we
|
|
change the size of `e' to 200 for our future /usr, `f' to 100 for our
|
|
/usr/local, and `g' to the rest of the disk for /usr/users. When we're
|
|
done, the top of the disklabel screen should look like this:
|
|
|
|
Part Start End Blocks MB Type Action Mountpoint
|
|
a 1433600 1474559 40960 20 4.2BSD
|
|
b 1474560 1605631 131072 64 swap
|
|
c 1433600 4108287 2674688 1306 unused <Entire FreeBSD slice>
|
|
d 0 4108599 4108600 2006 unused <Entire Disk>
|
|
e 1605632 2015231 409600 200 4.2BSD
|
|
f 2015232 2220031 204800 100 4.2BSD
|
|
g 2220032 4108287 1888256 922 4.2BSD
|
|
h 32 614399 614368 300 MSDOS
|
|
|
|
We left `h' alone, since we actually want to be able to share files with
|
|
our DOS partition. At this point, we want to type `w' for (W)rite to write
|
|
out the new size information to disk.
|
|
|
|
You probably also noticed by now that "/", "/usr" and the other filesystem
|
|
names we've been talking about don't appear anywhere in the above list.
|
|
Where are they? This brings us to the next stage, which is to (A)ssign the
|
|
new partitions to actual filesystem mount points. A filesystem in
|
|
FreeBSD doesn't actually appear anywhere until we "mount" it someplace, a
|
|
convention from the old days when disks were actually large removable packs
|
|
that a system operator physically mounted on a large washing-machine sized
|
|
disk drive spindle! As you can see, not much has changed today! :-)
|
|
|
|
We'll proceed then by starting at the top with the first partition and
|
|
assigning it to the root filesystem (/) by typing `a', for (A)ssign, and
|
|
then typing `a' again, for partition a:
|
|
|
|
Assign which partition> a
|
|
|
|
When it asks us for the name of the mount point, we type /:
|
|
|
|
Directory mountpoint> /
|
|
|
|
And the display adjusts accordingly to show us the new state of affairs:
|
|
|
|
Part Start End Blocks MB Type Action Mountpoint
|
|
a 1433600 1474559 40960 20 4.2BSD newfs /
|
|
..
|
|
|
|
The Action field also now shows "newfs", which means that the partition
|
|
will be created anew. For root filesystems, this is the default and cannot
|
|
be changed, but other partitions can be optionally "Preserved" by typing
|
|
`p' for (P)reserve. There are very few situations in which we'd want to do
|
|
this, but if, say, we were actually installing a disk from an older FreeBSD
|
|
machine which we wanted to mount into our new system but NOT erase, we
|
|
could do it this way. For now, let's assume that this is a new
|
|
installation and we want all the filesystems to be created from scratch.
|
|
We thus go through and assign the rest of the filesystems to their
|
|
respective /usr, /usr/local and /usr/users mountpoints. We also assign the
|
|
`b' partition, which doesn't take a mountpoint (and won't prompt for one
|
|
when we (A)ssign it), but needs us to tell it that we're ready to use it
|
|
for swap.
|
|
|
|
When we're done, the top of the screen should look something like this:
|
|
|
|
Part Start End Blocks MB Type Action Mountpoint
|
|
a 1433600 1474559 40960 20 4.2BSD newfs /
|
|
b 1474560 1605631 131072 64 swap swap swap
|
|
c 1433600 4108287 2674688 1306 unused <Entire FreeBSD slice>
|
|
d 0 4108599 4108600 2006 unused <Entire Disk>
|
|
e 1605632 2015231 409600 200 4.2BSD newfs /usr
|
|
f 2015232 2220031 204800 100 4.2BSD newfs /usr/local
|
|
g 2220032 4108287 1888256 922 4.2BSD newfs /usr/users
|
|
h 32 614399 614368 300 MSDOS
|
|
|
|
As a final bonus, we'll assign the DOS partition to be mounted on /dos. We
|
|
do this with (A)ssign as we did the others, and we also notice that the
|
|
system is smart enough to see that it's not a FreeBSD partition and we
|
|
DON'T want to newfs it, we want to simply mount it:
|
|
|
|
h 32 614399 614368 300 MSDOS mount /dos
|
|
|
|
At this point, our system is all set up and ready to go!
|
|
|
|
We type `q' to go back to the main menu and then type `p' to (P)roceed to
|
|
the next phase of installation.
|
|
|
|
We're now given one last chance to back out of the install, and we hit
|
|
return if we're sure, otherwise we type <Tab> to select "No" and hit return
|
|
to consider our settings again before going on.
|
|
|
|
The rest of the installation is pretty much self-explanatory. After the
|
|
filesystems are initially created and populated, you'll be prompted to
|
|
reboot from the hard disk. Do so and provide the cpio floppy when asked.
|
|
|
|
When the initial flurry of welcome and informational prompts has died down,
|
|
you'll come to a screen asking you to load one or more distributions. At
|
|
the minimum, select "bindist" to load the basic system. If you're loading
|
|
from other than CDROM media, follow the appropriate paths through the
|
|
installation process.
|
|
|
|
If you're loading from CDROM, select CDROM as the media type and select the
|
|
type of CDROM you've got (SCSI or Mitsumi). When it asks you for an
|
|
installation subdirectory, simply hit return if you've got the 2.0 CD from
|
|
Walnut Creek CDROM. You may select additional optional packages to load
|
|
after the bindist extracts, provided that you've got the space for it. Use
|
|
the "?diskfree" menu option from time to time to keep an eye on your free
|
|
space. When you're done, you'll be asked a few more basic questions and
|
|
then that's it! You've got FreeBSD on your hard disk.
|
|
|
|
If you should need to partition another drive or install other packages
|
|
later, you may re-invoke the sysinstall program by typing /sbin/sysinstall.
|
|
The same familiar prompts will then come up.
|
|
|
|
Good luck!
|
|
|
|
Jordan Hubbard
|
|
for Walnut Creek CDROM
|
|
and the FreeBSD Project.
|
|
|
|
|
|
|
|
</pre>
|
|
|
|
<p></p><a href="../index.html">Release Home</a>
|
|
&footer;
|
|
</body>
|
|
</html>
|