diff --git a/handbook/booting.sgml b/handbook/booting.sgml index b395b40a24..57a6eeee62 100644 --- a/handbook/booting.sgml +++ b/handbook/booting.sgml @@ -1,165 +1,175 @@ - + $Id: booting.sgml,v 1.2 1995-05-10 11:34:06 jfieber Exp $ + + +
Boot overview Poul-Henning Kamp, v1.1, April 26th Booting FreeBSD is essentially a three step: Load the kernel, determine the root filesystem and initialize user-land things. This leads to some interesting possibilities as shown below... +--> + + Booting FreeBSD on a PC + +

Contributed by &a.phk;. v1.1, April 26th. + + Booting FreeBSD is essentially a three step: Load the kernel, + determine the root filesystem and initialize user-land things. This + leads to some interesting possibilities shown below. Loading a kernel

We presently have three basic mechanisms for loading the kernel: biosboot dosboot netboot Each will be described in detail below. They all pass some information to the kernel to help the kernel decide what to do next. Biosboot

Biosboot is our ``bootblocks'', it consists of two files, which will be installed in the first 8Kbytes of the floppy or hard-disk slice to be booted from. Biosboot can load a kernel from a FreeBSD filesystem. Dosboot

Dosboot was written by DI. Christian Gusenbauer, and is unfortunately at this time one of the few pieces of code that isn't compilable under FreeBSD itself because it is written for MicroSoft compilers. Dosboot will boot the kernel from a MS-DOS file or from a FreeBSD filesystem partition on the disk. It attempts to negotiate with the various and strange kinds of memory manglers that lurk in high memory on MS/DOS systems and usually wins them for it's case. Netboot

Netboot will try to find a supported ethernet card, and use BOOTP, TFTP and NFS to find a kernel file to boot. Determine the root filesystem

Once the kernel is loaded and the boot-code jumps to it, the kernel will initialize itself, trying to determine what hardware is present and so on, and then it needs to find a root filesystem. Presently we support the following types of rootfilesystems: UFS MSDOS MFS CD9660 NFS UFS

This is the most normal type of root filesystem. It can reside on a floppy or on harddisk. MSDOS

While this is technically possible, it isn't particular useful, because of ``FAT'' filesystems inability to make links, device nodes and such ``UNIXisms''. MFS

This is actually a UFS filesystem which has been compiled into the kernel. That means that the kernel does not really need any disks/floppies or other HW to function. CD9660

This is for using a CD-ROM as root filesystem. NFS

This is for using a fileserver as root filesystem, basically making it a diskless machine. Initialize user-land things

To get the user-land going, when the kernel has finished initialization, it will create a with ``/sbin/init''. You can substitute any program for /sbin/init, as long as you keep in mind that: there is no stdin/out/err unless you open it yourself, if you exit, the machine panics signal handling is special for ``Interesting combinations

Boot a kernel with a MFS in it with a special /sbin/init which... mounts your /C: Attaches C:/freebsd.fs on /dev/vn0 mounts /dev/vn0 as /rootfs makes symlinks /rootfs/bin -> /bin /rootfs/etc -> /etc /rootfs/sbin -> /sbin ... Now you run FreeBSD without repartitioning your hard disk... server:˜you/FreeBSD as /nfs, chroots to /nfs and executes /sbin/init there Now you run FreeBSD diskless, even though you don't control the NFS server... /dev/rwd0 and writes it to a remote tape station or fileserver. Now you finally got that backup you should have made a year ago... E -- Acts as a firewall/web-server/what do I know... This is particular interesting since you can boot from a write- protected floppy, but still write to your root filesystem... -

+ diff --git a/handbook/handbook.sgml b/handbook/handbook.sgml index e38466fc28..54e7382fd4 100644 --- a/handbook/handbook.sgml +++ b/handbook/handbook.sgml @@ -1,237 +1,198 @@ - + %authors; + ]> FreeBSD Handbook <author> - <name></name> - <!-- <date> --> - + <name>The FreeBSD Documentation Project</name> + </author> + <date>May 6, 1995</date> <abstract>Welcome to FreeBSD! This handbook covers the installation and day to day use of FreeBSD. This manual is a <bf>work in progress</bf> and is the work of many individials. Many sections do not yet exist and some of those that do exist need to be updated. If you are interested in helping with this project, send email to &a.jfieber; or to the FreeBSD Documentantion Project mailing list <tt><doc@freebsd.org></tt>. </abstract> <toc> +<!-- ************************************************************ --> + + <part><heading>Basics</heading> <chapt><heading>Introduction</heading> - <sect><heading>FreeBSD In a nutshell</heading> - <sect><heading>History</heading> - <sect><heading>About this release</heading> - <sect><heading>FreeBSD now and in the future</heading> - <chapt><heading>Installing FreeBSD</heading> - <sect><heading>Preparing for the installation</heading> - <sect1><heading>Hardware checklist</heading> - <sect2><heading>minimal requirements</heading> - <sect2><heading>IRQs, IO Addresses, and DMA channels</heading> - <sect1><heading>Software checklist</heading> - <sect2><heading>Making the installation floppies</heading> - <sect2><heading>CD-ROM</heading> - <sect2><heading>Tape</heading> - <sect2><heading>Disk</heading> - <sect><heading>Installation</heading> - <sect><heading>Set up a user account</heading> &basics; <chapt><heading>Installing applications</heading> - <sect><heading>Installing packages</heading> &ports; &porting; - <chapt><heading>Reconfiguring the kernel</heading> - - <p>Once you have your FreeBSD system installed and - operational it is a good idead to re-configure the - kernel. You may also need to re-configure the kernel if - you add, change, or remove hardware from your system. - - <p> - - <chapt><heading>Basic Networking</heading> - <sect><heading>Ethernet basics</heading> - <sect><heading>Serial basics</heading> - <sect><heading>Hardwired Terminals</heading> - &dialup; - - <chapt><heading>PPP and SLIP</heading> +<!-- ************************************************************ --> - &ppp; - &slipc; - &slips; + <part><heading>System Administration</heading> - <chapt><heading>Advanced networking</heading> - <sect><heading>Gateways and routing</heading> - &nfs; - <sect><heading>Yellow Pages/NIS</heading> - &diskless; - <sect><heading>ISDN</heading> - - <chapt><heading>Mail</heading> + <chapt><heading>Reconfiguring the kernel</heading> - <chapt><heading>Printing</heading> - <chapt><heading>Users, groups and security</heading> - <sect><heading>DES, MD5 and Crypt</heading> - &kerberos; - <sect><heading>S/Key</heading> - <sect><heading>Firewalls</heading> <chapt><heading>The X-Window System</heading> + <chapt><heading>Printing</heading> + <chapt><heading>Managing hardware</heading> &scsi; <sect><heading>adding/reconfiguring disks</heading> <sect><heading>tapes and backups</heading> <sect><heading>serial ports</heading> <sect><heading>sound cards</heading> <chapt><heading>PC Hardware compatibility</heading> - <sect><heading>CORE/PROCESSING</heading> - <sect1><heading>Motherboards</heading> - <sect2><heading>ISA</heading> - <sect2><heading>EISA</heading> - <sect2><heading>VLB</heading> - <sect2><heading>PCI</heading> - <sect1><heading>CPUs/FPUs</heading> - <sect1><heading>Memory</heading> - <sect1><heading>BIOS</heading> - <sect><heading>INPUT/OUTPUT</heading> - <sect1><heading>Video cards</heading> - <sect1><heading>Sound cards</heading> - <sect1><heading>Serial ports (including multiport cards)</heading> - <sect1><heading>Parallel ports</heading> - <sect1><heading>Modems</heading> - <sect1><heading>Etherenet cards</heading> - <sect1><heading>Keyboards</heading> - <sect1><heading>Mice</heading> - <sect1><heading>Other (joysticks? tablets?)</heading> - <sect><heading>STORAGE</heading> - <sect1><heading>Disk/tape controllers</heading> - <sect2><heading>SCSI</heading> - <sect2><heading>IDE</heading> - <sect2><heading>Floppy</heading> - <sect1><heading>Hard drives</heading> - <sect1><heading>Tape drives</heading> - <sect1><heading>CD-ROM drives</heading> - <sect1><heading>Other</heading> - <sect><heading>OTHER</heading> - <sect1><heading>PCMCIA</heading> +<!-- ************************************************************ --> + + <part><heading>Network Communications</heading> + + <chapt><heading>Basic Networking</heading> + <sect><heading>Ethernet basics</heading> + <sect><heading>Serial basics</heading> + <sect><heading>Hardwired Terminals</heading> + &dialup; + + <chapt><heading>PPP and SLIP</heading> + &ppp; + &slipc; + &slips; + + <chapt><heading>Advanced networking</heading> + <sect><heading>Gateways and routing</heading> + &nfs; + <sect><heading>Yellow Pages/NIS</heading> + &diskless; + <sect><heading>ISDN</heading> + + <chapt><heading>Mail</heading> + + + +<!-- ************************************************************ --> + + <part><heading>Advanced topics</heading> + &booting; ¤t; &ctm; ⊃ + <chapt><heading>Kernel debugging</heading> &troubleshooting; &submitters; + <part><heading>Additional resources</heading> &bibliography; &eresources; &glossary; </book> </linuxdoc>