diff --git a/FAQ/FAQ.sgml b/FAQ/FAQ.sgml deleted file mode 100644 index 56d1bc4e8d..0000000000 --- a/FAQ/FAQ.sgml +++ /dev/null @@ -1,67 +0,0 @@ - - - - %includes; - - - - - - - - - - - - - - -]> - -
- - Frequently Asked Questions for FreeBSD 2.X - - The FreeBSD Documentation Project - - - $Date: 1999-07-28 20:26:04 $ - - - This is the FAQ for FreeBSD systems version 2.X All entries are - assumed to be relevant to FreeBSD 2.0.5 and later, unless otherwise noted. - Any entries with a <XXX> are under construction. - If you are interested in helping with this project, send - email to the the FreeBSD documentation project mailing list . - The latest version of this document is always available from the . - It may also be downloaded in , - , - - or with HTTP or gzip'd from the . - You may also want to . - - - - - -&preface; -&install; -&hardware; -&troubleshoot; -&commercial; -&applications; -&kernelconfig; -&admin; -&x; -&network; -&serial; -&misc; -&hackers; -&acknowledgments; - -
diff --git a/FAQ/Makefile b/FAQ/Makefile deleted file mode 100644 index d02b1efffc..0000000000 --- a/FAQ/Makefile +++ /dev/null @@ -1,18 +0,0 @@ -# $Id: Makefile,v 1.8 1999-08-17 21:35:50 nik Exp $ - -.NOTPARALLEL: - -SGMLOPTS=-links -DOC= FAQ -VOLUME= faq -DOCDIR= /usr/local/share/doc/fdp/en_US.ISO_8859-1/books -SRCS= FAQ.sgml acknowledgments.sgml admin.sgml applications.sgml -SRCS+= commercial.sgml hackers.sgml hardware.sgml install.sgml -SRCS+= kernelconfig.sgml misc.sgml network.sgml preface.sgml -SRCS+= serial.sgml troubleshoot.sgml x.sgml - -beforeinstall: - [ -d /usr/local/share/doc/fdp/en_US.ISO_8859-1/books/faq ] || \ - mkdir -p /usr/local/share/doc/fdp/en_US.ISO_8859-1/books/faq - -.include diff --git a/FAQ/acknowledgments.sgml b/FAQ/acknowledgments.sgml deleted file mode 100644 index 6425675498..0000000000 --- a/FAQ/acknowledgments.sgml +++ /dev/null @@ -1,41 +0,0 @@ - - - - - ACKNOWLEDGMENTS - -

- - If you see a problem with this FAQ, or wish to submit an entry, - please mail us at . We appreciate your - feedback, and cannot make this a better FAQ without your help! - - - FreeBSD Core Team - - - - - -

And to any others we've forgotten, apologies and heartfelt thanks! - diff --git a/FAQ/admin.sgml b/FAQ/admin.sgml deleted file mode 100644 index 18cfc06fd4..0000000000 --- a/FAQ/admin.sgml +++ /dev/null @@ -1,1056 +0,0 @@ - - - - - System Administration - - - Where are the system start-up configuration files? - -

From 2.0.5R to 2.2.1R, the primary configuration file is - /etc/sysconfig. All the options are to be specified in - this file and other files such as and - /etc/netstart just include it. - -

Look in the /etc/sysconfig file and change the value to - match your system. This file is filled with comments to show what - to put in there. - -

In post-2.2.1 and 3.0, /etc/sysconfig was renamed - to a more self-describing - file and the syntax cleaned up a bit in the process. - /etc/netstart was also renamed to /etc/rc.network - so that all files could be copied with a /usr/src/etc/rc* - /etc command. - -

/etc/rc.local is here as always and may be used to - start up additional local services like - or set custom options. - -

The /etc/rc.serial is for serial port initialization - (e.g. locking the port characteristics, and so on.). - -

The /etc/rc.i386 is for Intel-specifics settings, such - as iBCS2 emulation or the PC system console configuration. - -

Starting with 2.1.0R, you can also have "local" startup files in a - directory specified in /etc/sysconfig (or - /etc/rc.conf): - - - # Location of local startup files. - local_startup=/usr/local/etc/rc.local.d - - -

Each file ending in If you want to ensure a certain execution order without changing all - the file names, you can use a scheme similar to the following with - digits prepended to each file name to insure the ordering: - - - 10news.sh - 15httpd.sh - 20ssh.sh - - -

It can be seen as ugly (or SysV :-)) but it provides a simple and - regular scheme for locally-added packages without resorting to - magical editing of /etc/rc.local. Many of the ports/packages - assume that /usr/local/etc/rc.d is a local startup directory. - - - How do I add a user easily? - -

Use the command. For more complicated usage, the - command. - -

To remove the user again, use the command. - - - How can I add my new hard disk to my FreeBSD system? - -

See the Disk Formatting Tutorial at - . - - - I have a new removable drive, how do I use it? - -

Whether it's a removable drive like a ZIP or an EZ drive (or - even a floppy, if you want to use it that way), or a new hard - disk, once it's installed and recognized by the system, and - you have your cartridge/floppy/whatever slotted in, things are - pretty much the same for all devices. - -

If it's a ZIP drive or a floppy , you've already got a DOS - filesystem on it, you can use a command like this: - - - mount -t msdos /dev/fd0c /floppy - - -

if it's a floppy, or this: - - - mount -t msdos /dev/da2s4 /zip - - -

for a ZIP disk with the factory configuration. - -

For other disks, see how they're laid out using /stand/sysinstall. - -

The rest of the examples will be for a ZIP drive on da2, the third - SCSI disk. - -

Unless it's a floppy, or a removable you plan on sharing with - other people, it's probably a better idea to stick a BSD file - system on it. You'll get long filename support, at least a 2X - improvement in performance, and a lot more stability. First, you - need to redo the DOS-level partitions/filesystems. You can either - use or /stand/sysinstall, or for a small - drive that you don't want to bother with multiple operating system - support on, just blow away the whole FAT partition table (slices) - and just use the BSD partitioning: - - - dd if=/dev/zero of=/dev/rda2 count=2 - disklabel -Brw sd2 auto - - -

You can use disklabel or /stand/sysinstall to create multiple - BSD partitions. You'll certainly want to do this if you're adding - swap space on a fixed disk, but it's probably irrelevant on a - removable drive like a ZIP. - -

Finally, create a new file system, this one's on our ZIP drive - using the whole disk: - - - newfs /dev/rda2c - - -

and mount it: - - - mount /dev/da2c /zip - - -

and it's probably a good idea to add a line like this to - so you can just type "mount /zip" in the - future: - - - /dev/da2c /zip ffs rw,noauto 0 0 - - - - How do I mount a secondary DOS partition? - -

The secondary DOS partitions are found after ALL the primary - partitions. For example, if you have an "E" partition as the - second DOS partition on the second SCSI drive, you need to create - the special files for "slice 5" in /dev, then mount /dev/da1s5: - - - # cd /dev - # ./MAKEDEV sd1s5 - # mount -t msdos /dev/da1s5 /dos/e - - - - Can I mount other foreign filesystems under FreeBSD? - -

for more information. - -

. - -

Any other information on this subject would be appreciated. - - - How can I use the NT loader to boot FreeBSD? - -

The general idea is that you copy the first sector of your - native root FreeBSD partition into a file in the DOS/NT - partition. Assuming you name that file something like - c:\bootsect.bsd (inspired by c:\bootsect.dos), - you can then edit the c:\boot.ini file to come up with - something like this: - - - [boot loader] - timeout=30 - default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS - [operating systems] - multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows NT" - C:\BOOTSECT.BSD="FreeBSD" - C:\="DOS" - - -

This procedure assumes that DOS, NT, FreeBSD, or whatever - have been installed into their respective fdisk partitions on the - Mount a DOS-formatted floppy (if you've converted to NTFS) or the - FAT partition, under, say, /mnt. - - - dd if=/dev/rda0a of=/mnt/bootsect.bsd bs=512 count=1 - - -

Reboot into DOS or NT. NTFS users copy the - attrib -s -r c:\boot.ini - - -

Edit to add the appropriate entries from the example - - attrib +s +r c:\boot.ini - - -

If FreeBSD is booting from the MBR, restore it with the DOS - `` - - How do I boot FreeBSD and Linux from LILO? - - -

If you have FreeBSD and Linux on the same disk, just follow - LILO's installation instructions for booting a non-Linux operating - system. Very briefly, these are: - -

Boot Linux, and add the following lines to - /etc/lilo.conf: - - other=/dev/hda2 - table=/dev/hda - label=FreeBSD - - (the above assumes that your FreeBSD slice is known to Linux as - /dev/hda2; tailor to suit your setup). Then, - run lilo as root and you should be done. - -

If FreeBSD resides on another disk, you need to add - ``loader=/boot/chain.b'' to the LILO entry. - For example: - - other=/dev/dab4 - table=/dev/dab - loader=/boot/chain.b - label=FreeBSD - - -

In some cases you may need to specify the BIOS drive number - to the FreeBSD boot loader to successfully boot off the second disk. - For example, if your FreeBSD SCSI disk is probed by BIOS as BIOS - disk 1, at the FreeBSD boot loader prompt you need to specify: - - Boot: 1:da(0,a)/kernel - - -

On FreeBSD 2.2.5 and later, you can configure - to automatically do this for you at boot time. - -

The is a good reference for - FreeBSD and Linux interoperability issues. - - - - How do I boot FreeBSD and Linux using BootEasy? - - -

Install LILO at the start of your Linux boot partition instead of - in the Master Boot Record. You can then boot LILO from BootEasy. - -

If you're running Windows-95 and Linux this is recommended anyway, - to make it simpler to get Linux booting again if you should need - to reinstall Windows95 (which is a Jealous Operating System, and - will bear no other Operating Systems in the Master Boot Record). - - - - Will a ``dangerously dedicated'' disk endanger my health? - - -

So why it is called ``dangerous''? A disk in this mode - doesn't contain what normal PC utilities would consider a - valid fdisk table. Depending on how well they have been - designed, they might complain at you once they are getting - in contact with such a disk, or even worse, they might - damage the BSD bootstrap without even asking or notifying - you. In addition, the ``dangerously dedicated'' disk's layout - is known to confuse many BIOSsen, including those from AWARD - (eg. as found in HP Netserver and Micronics systems as well as - many others) and Symbios/NCR (for the popular 53C8xx range of - SCSI controllers). This isn't a complete list, there are more. - Symptoms of this confusion include the "read error" message - printed by the FreeBSD bootstrap when it can't find itself, - as well as system lockups when booting. - -

Why have this mode at all then? It only saves a few kbytes - of disk space, and it can cause real problems for a new - installation. ``Dangerously dedicated'' mode's origins lie - in a desire to avoid one of the most common problems plaguing - new FreeBSD installers - matching the BIOS ``geometry'' numbers - for a disk to the disk itself. - -

``Geometry'' is an outdated concept, but one still at the - heart of the PC's BIOS and its interaction with disks. When - the FreeBSD installer creates slices, it has to record the - location of these slices on the disk in a fashion that - corresponds with the way the BIOS expects to find them. If - it gets it wrong, you won't be able to boot. - -

``Dangerously dedicated'' mode tries to work around this - by making the problem simpler. In some cases, it gets it right. - But it's meant to be used as a last-ditch alternative - there - are better ways to solve the problem 99 times out of 100. - -

So, how do you avoid the need for ``DD'' mode when you're - installing? Start by making a note of the geometry that your - BIOS claims to be using for your disks. You can arrange to have - the kernel print this as it boots by specifying ``-v'' at the - ``boot:'' prompt, or using ``boot -v'' in the loader. Just - before the installer starts, the kernel will print a list of - BIOS geometries. Don't panic - wait for the installer to start - and then use scrollback to read the numbers. Typically the BIOS - disk units will be in the same order that FreeBSD lists your - disks, first IDE, then SCSI. - -

When you're slicing up your disk, check that the disk geometry - displayed in the FDISK screen is correct (ie. it matches the BIOS - numbers); if it's wrong, use the ``g'' key to fix it. You may have - to do this if there's absolutely nothing on the disk, or if the - disk has been moved from another system. Note that this is only - an issue with the disk that you're going to boot from; FreeBSD - will sort itself out just fine with any other disks you may have. - -

Once you've got the BIOS and FreeBSD agreeing about the - geometry of the disk, your problems are almost guaranteed to be - over, and with no need for ``DD'' mode at all. If, however, - you are still greeted with the dreaded ``read error'' message - when you try to boot, it's time to cross your fingers and - go for it - there's nothing left to lose. - -

To return a ``dangerously dedicated'' disk for normal PC - use, there are basically two options. The first is, you - write enough NULL bytes over the MBR to make any subsequent - installation believe this to be a blank disk. You can do - this for example with - - - dd if=/dev/zero of=/dev/rda0 count=15 - - -

Alternatively, the undocumented DOS ``feature'' - - - fdisk /mbr - - -

will to install a new master boot record as well, thus clobbering the - BSD bootstrap. - - - How can I add more swap space? - -

The best way is to increase the size of your swap partition, or - take advantage of this convenient excuse to add another disk. The - general rule of thumb is to have around 2x the swap space as you have - main memory. However, if you have a very small amount of main memory - you may want to configure swap beyond that. It is also a good idea - to configure sufficient swap relative to anticipated future memory - upgrades so you do not have to futz with your swap configuration later. - -

Adding swap onto a separate disk makes things faster than - simply adding swap onto the same disk. As an example, if you - are compiling source located on one disk, and the swap is on - another disk, this is much faster than both swap and compile - on the same disk. This is true for SCSI disks specifically. - -

When you have several disks, configuring a swap partition on - each one is usually beneficial, even if you wind up putting swap on a - work disk. Typically, each fast disk in your system should have some - swap configured. FreeBSD supports up to 4 interleaved swap devices by - default. When configuring multiple swap partitions you generally - want to make them all about the same size, but people sometimes make - their primary swap parition larger in order to accomodate a kernel - core dump. Your primary swap partition must be at least as large as - main memory in order to be able to accomodate a kernel core. - -

IDE drives are not able to allow access to both drives on - the same channel at the same time (FreeBSD doesn't support mode 4, so - all IDE disk I/O is ``programmed''). I would still suggest putting - your swap on a separate drive however. The drives are so cheap, - it is not worth worrying about. - -

Swapping over NFS is only recommended if you do not have a local - disk to swap to. Swapping over NFS is slow and inefficient in FreeBSD - releases prior to 4.x, but reasonably fast in releases greater or - equal to 4.0. Even so, it will be limited to the network bandwidth - available and puts an additional burden on the NFS server. - -

Here is an example for 64Mb vn-swap (/usr/swap0, though - of course you can use any name that you want). - -

Make sure your kernel was built with the line - - - pseudo-device vn 1 #Vnode driver (turns a file into a device) - - -

in your config-file. The GENERIC kernel already contains this. - - - create a vn-device - - - cd /dev - sh ./MAKEDEV vn0 - - - create a swapfile (/usr/swap0) - - - dd if=/dev/zero of=/usr/swap0 bs=1024k count=64 - - - set proper permissions on (/usr/swap0) - - - chmod 0600 /usr/swap0 - - - enable the swap file in /etc/rc.conf - - - swapfile="/usr/swap0" # Set to name of swapfile if aux swapfile desired. - - - reboot the machine - - -

To enable the swap file immediately, type - - - vnconfig -ce /dev/vn0c /usr/swap0 swap - - - - I'm having problems setting up my printer. - -

Please have a look at the Handbook entry on printing. It - should cover most of your problem. See the - - - - The keyboard mappings are wrong for my system. - -

The kbdcontrol program has an option to load a keyboard map file. - Under /usr/share/syscons/keymaps are a number of map - files. Choose the one relevant to your system and load it. - - - kbdcontrol -l uk.iso - - -

Both the /usr/share/syscons/keymaps and the . - -

This can be configured in /etc/sysconfig (or ). - See the appropriate comments in this file. - -

In 2.0.5R and later, everything related to text fonts, keyboard - mapping is in /usr/share/examples/syscons. - -

The following mappings are currently supported: - - - - Belgian ISO-8859-1 - Brazilian 275 keyboard Codepage 850 - Brazilian 275 keyboard ISO-8859-1 - Danish Codepage 865 - Danish ISO-8859-1 - French ISO-8859-1 - German Codepage 850 - German ISO-8859-1 - Italian ISO-8859-1 - Japanese 106 - Japanese 106x - Latin American - Norwegian ISO-8859-1 - Polish ISO-8859-2 (programmer's) - Russian Codepage 866 (alternative) - Russian koi8-r (shift) - Russian koi8-r - Spanish ISO-8859-1 - Swedish Codepage 850 - Swedish ISO-8859-1 - Swiss-German ISO-8859-1 - United Kingdom Codepage 850 - United Kingdom ISO-8859-1 - United States of America ISO-8859-1 - United States of America dvorak - United States of America dvorakx - - - - I can't get user quotas to work properly. - -

- - Don't turn on quotas on '/', - - Put the quota file on the file system that the quotas are - to be enforced on. ie: - - - FS QUOTA FILE - /usr /usr/admin/quotas - /home /home/admin/quotas - ... - - - - - What's inappropriate about my ccd? - -

The symptom of this is: - - - # ccdconfig -C - ccdconfig: ioctl (CCDIOCSET): /dev/ccd0c: Inappropriate file type or format - # - - -

This usually happens when you are trying to concatenate the - `c' partitions, which default to type `unused'. The ccd - driver requires the underlying partition type to be - FS_BSDFFS. Edit the disklabel of the disks you are trying - to concatenate and change the types of partitions to - `4.2BSD'. - - - Why can't I edit the disklabel on my ccd? - -

The symptom of this is: - - - # disklabel ccd0 - (it prints something sensible here, so let's try to edit it) - # disklabel -e ccd0 - (edit, save, quit) - disklabel: ioctl DIOCWDINFO: No disk label on disk; - use "disklabel -r" to install initial label - # - - -

This is because the disklabel returned by ccd is actually a - `fake' one that is not really on the disk. You can solve - this problem by writing it back explicitly, as in: - - - # disklabel ccd0 > /tmp/disklabel.tmp - # disklabel -Rr ccd0 /tmp/disklabel.tmp - # disklabel -e ccd0 - (this will work now) - - - - Does FreeBSD support System V IPC primitives? - -

Yes, FreeBSD supports System V-style IPC. This includes shared - memory, messages and semaphores. You need to add the following - lines to your kernel config to enable them. - - - options SYSVSHM - options "SHMMAXPGS=64" # 256Kb of sharable memory - options SYSVSEM # enable for semaphores - options SYSVMSG # enable for messaging - - -

Recompile and install. - -

- - How do I use sendmail for mail delivery with UUCP? - -

The sendmail configuration that ships with FreeBSD is - suited for sites that connect directly to the Internet. - Sites that wish to exchange their mail via UUCP must install - another sendmail configuration file. - -

Tweaking /etc/sendmail.cf manually is considered - something for purists. Sendmail version 8 comes with a - new approach of generating config files via some - preprocessing, where the actual hand-crafted configuration - is on a higher abstraction level. You should use the - configuration files under - - - /usr/src/usr.sbin/sendmail/cf - - -

If you didn't install your system with full sources, the sendmail - config stuff has been broken out into a separate source distribution - tarball just for you. Assuming you've got your CD-ROM mounted, do: - - - cd /usr/src - tar -xvzf /cdrom/dists/src/ssmailcf.aa - - -

Don't panic, this is only a few hundred kilobytes in size. - The file README in the cf directory can - serve as a basic introduction to m4 configuration. - -

For UUCP delivery, you are best advised to use the - mailertable feature. This constitutes a database - that sendmail can use to base its routing decision upon. - -

First, you have to create your .mc file. The - directory /usr/src/usr.sbin/sendmail/cf/cf is the - home of these files. Look around, there are already a few - examples. Assuming you have named your file foo.mc, - all you need to do in order to convert it into a valid - sendmail.cf is: - - - cd /usr/src/usr.sbin/sendmail/cf/cf - make foo.cf - cp foo.cf /etc/sendmail.cf - - -

A typical .mc file might look like: - - - include(`../m4/cf.m4') - VERSIONID(`Your version number') - OSTYPE(bsd4.4) - - FEATURE(nodns) - FEATURE(nocanonify) - FEATURE(mailertable) - - define(`UUCP_RELAY', your.uucp.relay) - define(`UUCP_MAX_SIZE', 200000) - - MAILER(local) - MAILER(smtp) - MAILER(uucp) - - Cw your.alias.host.name - Cw youruucpnodename.UUCP - - -

The nodns and nocanonify features will - prevent any usage of the DNS during mail delivery. The - UUCP_RELAY clause is needed for bizarre reasons, - don't ask. Simply put an Internet hostname there that - is able to handle .UUCP pseudo-domain addresses; most likely, - you will enter the mail relay of your ISP there. - -

Once you've got this, you need this file called - /etc/mailertable. A typical example of this - gender again: - - - # - # makemap hash /etc/mailertable.db < /etc/mailertable - # - horus.interface-business.de uucp-dom:horus - .interface-business.de uucp-dom:if-bus - interface-business.de uucp-dom:if-bus - .heep.sax.de smtp8:%1 - horus.UUCP uucp-dom:horus - if-bus.UUCP uucp-dom:if-bus - . uucp-dom:sax - - -

As you can see, this is part of a real-life file. The first - three lines handle special cases where domain-addressed mail - should not be sent out to the default route, but instead to - some UUCP neighbor in order to ``shortcut'' the delivery - path. The next line handles mail to the local Ethernet - domain that can be delivered using SMTP. Finally, the UUCP - neighbors are mentioned in the .UUCP pseudo-domain notation, - to allow for a ``uucp-neighbor!recipient'' override of the - default rules. The last line is always a single dot, matching - everything else, with UUCP delivery to a UUCP neighbor that - serves as your universal mail gateway to the world. All of - the node names behind the uucp-dom: keyword must - be valid UUCP neighbors, as you can verify using the - command uuname. - -

As a reminder that this file needs to be converted into a - DBM database file before being usable, the command line to - accomplish this is best placed as a comment at the top of - the mailertable. You always have to execute this command - each time you change your mailertable. - -

Final hint: if you are uncertain whether some particular - mail routing would work, remember the -bt option to - sendmail. It starts sendmail in address test mode; - simply enter ``0 '', followed by the address you wish to - test for the mail routing. The last line tells you the used - internal mail agent, the destination host this agent will be - called with, and the (possibly translated) address. Leave - this mode by typing Control-D. - - - j@uriah 191% sendmail -bt - ADDRESS TEST MODE (ruleset 3 NOT automatically invoked) - Enter

- > 0 foo@interface-business.de - rewrite: ruleset 0 input: foo @ interface-business . de - ... - rewrite: ruleset 0 returns: $# uucp-dom $@ if-bus $: foo \ - < @ interface-business . de > - > ^D - j@uriah 192% - - - - - How do I set up mail with a dialup connection to the 'net? - - -

If you've got a statically assigned IP number, you should not - need to adjust anything from the default. Set your host name up - as your assigned internet name and sendmail will do the rest. - -

If you've got a dynamically assigned IP number and use a dialup - In order to retrieve mail from your mailbox, you'll need to - install a retrieval agent. /etc/ppp/ppp.linkup: - - - MYADDR: - !bg su user -c fetchmail - - -

If you are using sendmail (as shown below) to deliver mail to - non-local accounts, put the command - - - !bg su user -c "sendmail -q" - - - after the above shown entry. This forces sendmail to process your - mailqueue as soon as the connection to the 'net is established. - -

I'm assuming that you have an account for - poll myISP.com protocol pop3 fetchall pass MySecret; - - -

Needless to say, this file should not be readable by anyone except - In order to send mail with the correct The following - VERSIONID(`bsd.home.mc version 1.0') - OSTYPE(bsd4.4)dnl - FEATURE(nouucp)dnl - MAILER(local)dnl - MAILER(smtp)dnl - Cwlocalhost - Cwbsd.home - MASQUERADE_AS(`myISP.com')dnl - FEATURE(allmasquerade)dnl - FEATURE(masquerade_envelope)dnl - FEATURE(nocanonify)dnl - FEATURE(nodns)dnl - define(SMART_HOST, `relay.myISP.com') - Dmbsd.home - define(`confDOMAIN_NAME',`bsd.home')dnl - define(`confDELIVERY_MODE',`deferred')dnl - - -

Refer to the previous section for details of how to turn this - - Eek! I forgot the root password! - -

Don't Panic! Simply restart the system, type -s at the Boot: prompt - to enter Single User mode. At the question about the shell to use, - hit ENTER. You'll be dropped to a # prompt. Enter mount -u / to - remount your root filesystem read/write, then run - How do I keep Control-Alt-Delete from rebooting the system? - - -

Edit the keymap you are using for the console and replace the - /usr/share/syscons/keymaps/us.iso.kbd. You may have to instruct - /etc/rc.conf to load this keymap explicitly for the change to - take effect. Of course if you are using an alternate keymap for your - country, you should edit that one instead. - - - How do I reformat DOS text files to UNIX ones? - -

Simply use this perl command: - - -perl -i.bak -npe 's/\r\n/\n/g' file ... - - -

file is the file(s) to process. The modification is done in-place, - with the original file stored with a .bak extension. - -

Alternatively you can use the command: - - -tr -d '\r' < dos-text-file > unix-file - - -

dos-text-file is the file containing DOS text while - unix-file will contain the converted output. This can - be quite a bit faster than using perl. - - - How do I kill processes by name? - -

Use . - - - Why is su bugging me about not being in root's ACL? - - -

The error comes from the Kerberos distributed authentication system. - The problem isn't fatal but annoying. You can either run su with the -K - option, or uninstall Kerberos as described in the next question. - - - How do I uninstall Kerberos? - -

To remove Kerberos from the system, reinstall the bin distribution - for the release you are running. If you have the CDROM, you can - mount the cd (we'll assume on /cdrom) and run - - -cd /cdrom/bin -./install.sh - - - - How do I add pseudoterminals to the system? - -

If you have lots of telnet, ssh, X, or screen users, you'll probably run - out of pseudoterminals. Here's how to add more: - - - Build and install a new kernel with the line - - - pseudo-device pty 256 - - -

in the configuration file. - - Run the command - - - # cd /dev - # ./MAKEDEV pty{1,2,3,4,5,6,7} - - -

to make 256 device nodes for the new terminals. - - Edit /etc/ttys and add lines for each of the 256 - terminals. They should match the form of the existing entries, i.e. they look like - - - ttyqc none network - - -

The order of the letter designations is tty[pqrsPQRS][0-9a-v], - using a regular expression. - - Reboot the system with the new kernel and you're ready to go. - - - - I can't create the snd0 device! - -

The command to create the devices for the sound card is: - - # cd /dev - # sh MAKEDEV snd0 - - -

However, this does not make a device named /dev/snd0. - Instead, it creates devices named mixer0, audio0, - dsp0, and others. Running the command is still necessary - to add sound devices, however. - - - How do I re-read /etc/rc.conf and re-start /etc/rc without - a reboot? - -

Go into single user mode and than back to multi user mode. - - On the console do: - - # shutdown now - (Note: without -r or -h) - - # return - # exit - - - - What is a sandbox? - -

"Sandbox" is a security term. It can mean two things: - - - -

A process which is placed inside a set of virtual walls - that are designed to prevent someone who breaks into the - process from being able to break into the wider system. - -

The process is said to be able to "play" inside the - walls. That is, nothing the process does in regards to - executing code is supposed to be able to breech the walls - so you do not have to do a detailed audit of its code to - be able to say certain things about its security. - -

The walls might be a userid, for example. This is the - definition used in the security and named man pages. - -

Take the 'ntalk' service, for example (see - /etc/inetd.conf). This service used to run as userid - root. Now it runs as userid tty. The tty user is a - sandbox designed to make it more difficult for someone - who has successfully hacked into the system via ntalk from - being able to hack beyond that user id. - - - -

A process which is placed inside a simulation of the - machine. This is more hard-core. Basically it means that - someone who is able to break into the process may believe - that he can break into the wider machine but is, in fact, - only breaking into a simulation of that machine and not - modifying any real data. - -

The most common way to accomplish this is to build a - simulated environment in a subdirectory and then run the - processes in that directory chroot'd (i.e. "/" for that - process is this directory, not the real "/" of the - system). - -

Another common use is to mount an underlying filesystem - read-only and then create a filesystem layer on top of it - that gives a process a seemingly writeable view into that - filesystem. The process may believe it is able to write - to those files, but only the process sees the effects - ‐ other processes in the system do not, necessarily. -

An attempt is made to make this sort of sandbox so - transparent that the user (or hacker) does not realize - that he is sitting in it. - - - -

UNIX implements two core sanboxes. One is at the process - level, and one is at the userid level. - -

Every UNIX process is completely firewalled off from every - other UNIX process. One process can not modify the address space - of another. This is unlike Windows where a process can easily - overwrite the address space of any other, leading to a crash. - -

A UNIX process is owned by a patricular userid. If the - userid is not the root user, it serves to firewall the process - off from processes owned by other users. The userid is also - used to firewall off on-disk data. - - - - diff --git a/FAQ/applications.sgml b/FAQ/applications.sgml deleted file mode 100644 index 2e8de7e769..0000000000 --- a/FAQ/applications.sgml +++ /dev/null @@ -1,179 +0,0 @@ - - - - - User Applications - - - So, where are all the user applications? - -

Please take a look at for info on software packages ported to - FreeBSD. The list currently tops 1800 and is growing daily, so come - back to check often or subscribe to the for periodic updates on new - entries. - -

Most ports should be available for the 2.2, 3.x and 4.0 - branches, and many of them should work on 2.1.x systems as - well. Each time a FreeBSD release is made, a snapshot of the - ports tree at the time of release in also included in the - ports/ directory. - -

We also support the concept of a ``package'', essentially no - more than a gzipped binary distribution with a little extra - intelligence embedded in it for doing whatever custom installation - work is required. A package can be installed and uninstalled - again easily without having to know the gory details of which - files it includes. - -

Use the package installation menu in /stand/sysinstall - (under the post-configuration menu item) or invoke the - pkg_add(1) command on the specific package files you're - interested in installing. Package files can usually be identified by - their .tgz suffix and CDROM distribution people will have - a packages/All directory on their CD which contains such - files. They can also be downloaded over the net for various versions - of FreeBSD at the following locations: - - - for 2.2.8-release/2.2.8-stable - - - for 3.2-release/3.2-stable - - - for 4.0-current - - - -

or your nearest local mirror site. - -

Note that all ports may not be available as packages since - new ones are constantly being added. It is always a good - idea to check back periodically to see which packages are available - at the master site. - - - - Where do I find libc.so.3.0? - -

You are trying to run a package for 2.2/3.x/4.0 on a 2.1.x - system. Please take a look at the previous section and get - the correct port/package for your system. - - - - - ghostscript gives lots of errors with my 386/486SX. - -

You don't have a math co-processor, right? - You will need to add the alternative math emulator to your kernel; - you do this by adding the following to your kernel config file - and it will be compiled in. - - - options GPL_MATH_EMULATE - - -

- - - When I run a SCO/iBCS2 application, it bombs on - -

You first need to edit the /etc/sysconfig - (or ) file in the last section to change the - following variable to - # Set to YES if you want ibcs2 (SCO) emulation loaded at startup - ibcs2=NO - - -

It will load the - kernel module at startup. - -

You'll then need to set up /compat/ibcs2/dev to look like: - - -lrwxr-xr-x 1 root wheel 9 Oct 15 22:20 X0R@ -> /dev/null -lrwxr-xr-x 1 root wheel 7 Oct 15 22:20 nfsd@ -> socksys --rw-rw-r-- 1 root wheel 0 Oct 28 12:02 null -lrwxr-xr-x 1 root wheel 9 Oct 15 22:20 socksys@ -> /dev/null -crw-rw-rw- 1 root wheel 41, 1 Oct 15 22:14 spx - - -

You just need socksys to go to - to fake the open & close. The code in -current will handle the - rest. This is much cleaner than the way it was done before. If you - want the - - - How do I configure INN (Internet News) for my machine? - - -

After installing the inn package or port, an excellent place to - start is where you'll find the INN FAQ. - - - - - What version of Microsoft FrontPage should I get? - -

Use the Port, Luke! A pre-patched version of Apache is available - in the ports tree. - - - - - Does FreeBSD support Java? - -

Yes. Please see . - - - - Why can't I build this port on my 3.x-stable machine? - -

If you're running a FreeBSD version that lags significantly behind - -current or -stable, you may need a ports upgrade kit from - . If you are up to date, then - someone might have committed a change to the port which works for - -current but which broke the port for -stable. Please submit a bug - report on this with the send-pr(1) command, since the ports - collection is supposed to work for both the -current and -stable - branches. - - - - Where do I find ld.so? - -

If you want to run some aout applications like - Netscape Navigator on an Elf'ened machine such as 3.1-R or later, - it would need /usr/libexec/ld.so and some aout libs. - They are included in the compat22 distribution. - Use /stand/sysinstall or install.sh in the compat22 subdirectory - and install it. - Also read ERRATAs for 3.1-R and 3.2-R. - - - - - diff --git a/FAQ/commercial.sgml b/FAQ/commercial.sgml deleted file mode 100644 index 98f8a6d9b7..0000000000 --- a/FAQ/commercial.sgml +++ /dev/null @@ -1,178 +0,0 @@ - - - - - Commercial Applications - -

- for a longer list. - - - Where can I get Motif for FreeBSD? - -

Contact for an ELF Motif 2.1 - distribution for FreeBSD.

This distribution includes: - - OSF/Motif manager, xmbind, panner, wsm. - - Development kit with uil, mrm, xm, xmcxx, include and Imake - files. - - Static and dynamic ELF libraries (for use with FreeBSD 3.0 - and above). - - Demonstration applets. - - -

Be sure to specify that you want the FreeBSD version of Motif - when ordering! Versions for NetBSD and OpenBSD are also sold by - Apps2go. This is currently a FTP only download. - - - - - or - email addresses. - - - -

Contact for an either ELF or - a.out Motif 2.1 distribution for FreeBSD. - -

This distribution includes: - - OSF/Motif manager, xmbind, panner, wsm. - - Development kit with uil, mrm, xm, xmcxx, include and Imake - files. - - Static and dynamic libraries (specify ELF for use with FreeBSD - 3.0 and later; or a.out for use with FreeBSD 2.2.8 and eariler). - - Demonstration applets. - - Preformatted man pages. - - -

Be sure to specify that you want the FreeBSD version of Motif - when ordering! Versions for Linux are also sold by - Metro Link. This is available on either a CDROM or for - FTP download. - -

Contact for an a.out Motif 2.0 - distribution for FreeBSD. - -

This distribution includes: - - OSF/Motif manager, xmbind, panner, wsm. - - Development kit with uil, mrm, xm, xmcxx, include and Imake - files. - - Static and dynamic libraries (for use with FreeBSD 2.2.8 and - eariler). - - Demonstration applets. - - Preformatted man pages. - - -

Be sure to specify that you want the FreeBSD version of Motif - when ordering! Versions for BSDI and Linux are also sold by - Xi Graphics. This is currently a 4 diskette set... in the - future this will change to a unified CD distribution like their CDE. - - - Where can I get CDE for FreeBSD? - -

used to sell CDE for - FreeBSD, but no longer do. - -

is an open source - X11 desktop which is similar to CDE in many respects. - - - - Are there any commercial high-performance X servers? - - -

Yes, and - sells - Accelerated-X product for FreeBSD and other Intel based systems. -

The Metro Link offering is a high performance X Server that offers - easy configuration using the FreeBSD Package suite of tools, support - for multiple concurrent video boards and is distributed in binary - form only, in a convienent FTP download. Not to mention the Metro - Link offering is available at the very reasonable price of $39. -

Metro Link also sells both ELF and a.out Motif for FreeBSD (see above). - - - - - or - email addresses. - - - -

The Xi Graphics offering is a high performance X Server that offers - easy configuration, support - for multiple concurrent video boards and is distributed in binary - form only, in a unified diskette distribution for FreeBSD and Linux. - Xi Graphics also offers a high performance X Server taylored for - laptop support. - -

There is a free "compatibility demo" of version 5.0 available. - -

Xi Graphics also sells Motif and CDE for FreeBSD (see above). - - - - - or - email addresses. - - - - - Are there any Database systems for FreeBSD? - -

Yes! See the section of FreeBSD's Web site. - -

Also see the section of the Ports collection. - - - Can I run Oracle on FreeBSD? - -

Yes. The following pages tell you exactly how to setup Linux-Oracle - on FreeBSD: - - - - - - - - diff --git a/FAQ/hackers.sgml b/FAQ/hackers.sgml deleted file mode 100644 index 4ecc718d44..0000000000 --- a/FAQ/hackers.sgml +++ /dev/null @@ -1,582 +0,0 @@ - - - - - For serious FreeBSD hackers only - - - - What are SNAPs and RELEASEs? - - -

There are currently three active/semi-active branches in the FreeBSD - : - - - - -

Right now, The The - - How do I make my own custom release? - -

To make a release you need to do three things: First, you need to - be running a kernel with the driver configured - in. Add this to your kernel config file and build a new kernel: - - - pseudo-device vn #Vnode driver (turns a file into a device) - - -

Second, you have to have the whole CVS repository at hand. - To get this you can use - but in your supfile set the release name to cvs and remove any tag or - date fields: - - - *default prefix=/home/ncvs - *default base=/a - *default host=cvsup.FreeBSD.org - *default release=cvs - *default delete compress use-rel-suffix - - ## Main Source Tree - src-all - src-eBones - src-secure - - # Other stuff - ports-all - www - doc-all - - -

Then run Finally, you need a chunk of empty space to build into. Let's - say it's in /some/big/filesystem, and from the example - above you've got the CVS repository in /home/ncvs: - - - setenv CVSROOT /home/ncvs # or export CVSROOT=/home/ncvs - cd /usr/src/release - make release BUILDNAME=3.0-MY-SNAP CHROOTDIR=/some/big/filesystem/release - - -

An entire release will be built in - /some/big/filesystem/release and you will have a full FTP-type - installation in /some/big/filesystem/release/R/ftp when you're - done. If you want to build your SNAP along some other branch than - -current, you can also add - How do I create customized installation disks? - -

The entire process of creating installation disks and source and - binary archives is automated by various targets in - /usr/src/release/Makefile. The information there should - be enough to get you started. However, it should be said that this - involves doing a ``make world'' and will therefore take up a lot of - time and disk space. - - - ``make world'' clobbers my existing installed binaries. - -

Yes, this is the general idea; as its name might suggest, - ``make world'' rebuilds every system binary from scratch, so you can be - certain of having a clean and consistent environment at the end (which - is why it takes so long). - -

If the environment variable ${DESTDIR}. - Some random combination of shared libraries modifications and - program rebuilds can cause this to fail in `` - - When my system boots, it says ``(bus speed defaulted)''. - - -

The Adaptec 1542 SCSI host adapters allow the user to configure - their bus access speed in software. Previous versions of the - 1542 driver tried to determine the fastest usable speed and set - the adapter to that. We found that this breaks some users' - systems, so you now have to define the `` - - Can I follow current with limited Internet access? - -

Yes, you can do this - - - How did you split the distribution into 240k files? - -

Newer BSD based systems have a ``Here is an example from /usr/src/Makefile. - - - bin-tarball: - (cd ${DISTDIR}; \ - tar cf - . \ - gzip --no-name -9 -c | \ - split -b 240640 - \ - ${RELEASEDIR}/tarballs/bindist/bin_tgz.) - - - - I've written a kernel extension, who do I send it to? - -

Please take a look at - -

And thanks for the thought! - - - How are Plug N Play ISA cards detected and initialized? - -

By: - -

In a nutshell, there a few I/O ports that all of the PnP boards - respond to when the host asks if anyone is out there. So when - the PnP probe routine starts, he asks if there are any PnP boards - present, and all the PnP boards respond with their model # to - a I/O read of the same port, so the probe routine gets a wired-OR - ``yes'' to that question. At least one bit will be on in that - reply. Then the probe code is able to cause boards with board - model IDs (assigned by Microsoft/Intel) lower than X to go - ``off-line''. It then looks to see if any boards are still - responding to the query. If the answer was ``The IDs are two 32-bit fields (hence 2ˆ64) + 8 bit checksum. - The first 32 bits are a vendor identifier. They never come out - and say it, but it appears to be assumed that different types of - boards from the same vendor could have different 32-bit vendor - ids. The idea of needing 32 bits just for unique manufacturers - is a bit excessive. - -

The lower 32 bits are a serial #, ethernet address, something - that makes this one board unique. The vendor must never produce - a second board that has the same lower 32 bits unless the upper - 32 bits are also different. So you can have multiple boards of - the same type in the machine and the full 64 bits will still be - unique. - -

The 32 bit groups can never be all zero. This allows the - wired-OR to show non-zero bits during the initial binary search. - -

Once the system has identified all the board IDs present, it will - reactivate each board, one at a time (via the same I/O ports), - and find out what resources the given board needs, what interrupt - choices are available, etc. A scan is made over all the boards - to collect this information. - -

This info is then combined with info from any ECU files on the - hard disk or wired into the MLB BIOS. The ECU and BIOS PnP - support for hardware on the MLB is usually synthetic, and the - peripherals don't really do genuine PnP. However by examining - the BIOS info plus the ECU info, the probe routines can cause the - devices that are PnP to avoid those devices the probe code cannot - relocate. - -

Then the PnP devices are visited once more and given their I/O, - DMA, IRQ and Memory-map address assignments. The devices will - then appear at those locations and remain there until the next - reboot, although there is nothing that says you can't move them - around whenever you want. - -

There is a lot of oversimplification above, but you should get - the general idea. - -

Microsoft took over some of the primary printer status ports to - do PnP, on the logic that no boards decoded those addresses for - the opposing I/O cycles. I found a genuine IBM printer board - that did decode writes of the status port during the early PnP - proposal review period, but MS said ``tough''. So they do a - write to the printer status port for setting addresses, plus that - use that address + - Does FreeBSD support architectures other than the x86? - -

Several groups of people have expressed interest in working on - multi-architecture ports for FreeBSD and the FreeBSD/AXP (ALPHA) - port is one such effort which has been quite successful, now - available in 3.0 SNAPshot release form at . The ALPHA - port currently runs on a growing number of ALPHA machine - types, among them the AlphaStation, AXPpci, PC164, Miata and Multia - models. This port is not yet considered a full release and won't be - until a full compliment of system installation tools and a distribution - on CDROM installation media is available, including a reasonable - number of working ports and packages. - FreeBSD/AXP should be considered BETA quality software at this - time. For status information, please join the - <freebsd-alpha@FreeBSD.org>. - - Interest has also been expressed in a port of FreeBSD to - the SPARC architecture, join the <freebsd-sparc@FreeBSD.org> - if you are interested - in joining that project. For general discussion on new architectures, - join the <freebsd-platforms@FreeBSD.org> - . - - - I need a major number for a device driver I've written. - -

This depends on whether or not you plan on making the driver - publicly available. If you do, then please send us a copy of the - driver source code, plus the appropriate modifications to - files.i386, a sample configuration file entry, and the - appropriate code to create any special files your device uses. If - you do not, or are unable to because of licensing restrictions, then - character major number 32 and block major number 8 have been reserved - specifically for this purpose; please use them. In any case, we'd - appreciate hearing about your driver on - <freebsd-hackers@FreeBSD.org>. - - - - Alternative layout policies for directories - -

- In answer to the question of alternative layout policies for - directories, the scheme that is currently in use is unchanged - from what I wrote in 1983. I wrote that policy for the original - fast filesystem, and never revisited it. It works well at keeping - cylinder groups from filling up. As several of you have noted, - it works poorly for find. Most filesystems are created from - archives that were created by a depth first search (aka ftw). - These directories end up being striped across the cylinder groups - thus creating a worst possible senario for future depth first - searches. If one knew the total number of directories to be - created, the solution would be to create (total / fs_ncg) per - cylinder group before moving on. Obviously, one would have to - create some heuristic to guess at this number. Even using a - small fixed number like say 10 would make an order of magnitude - improvement. To differentiate restores from normal operation - (when the current algorithm is probably more sensible), you - could use the clustering of up to 10 if they were all done - within a ten second window. Anyway, my conclusion is that this - is an area ripe for experimentation.

- -

Kirk McKusick, September 1998

- - - Making the most of a kernel panic - -

- [This section was extracted from a mail written by on the - freebsd-current by , who fixed a few typos and added the bracketed - comments] - -

- -From: Bill Paul -Subject: Re: the fs fun never stops -To: ben@rosengart.com -Date: Sun, 20 Sep 1998 15:22:50 -0400 (EDT) -Cc: current@FreeBSD.org - - -

- [<ben@rosengart.com> posted the following panic - message] - -> Fatal trap 12: page fault while in kernel mode -> fault virtual address = 0x40 -> fault code = supervisor read, page not present -> instruction pointer = 0x8:0xf014a7e5 - ^^^^^^^^^^ -> stack pointer = 0x10:0xf4ed6f24 -> frame pointer = 0x10:0xf4ed6f28 -> code segment = base 0x0, limit 0xfffff, type 0x1b -> = DPL 0, pres 1, def32 1, gran 1 -> processor eflags = interrupt enabled, resume, IOPL = 0 -> current process = 80 (mount) -> interrupt mask = -> trap number = 12 -> panic: page fault - - -

[When] you see a message like this, it's not enough to just - reproduce it and send it in. The instruction pointer value that - I highlighted up there is important; unfortunately, it's also - configuration dependent. In other words, the value varies - depending on the exact kernel image that you're using. If you're - using a GENERIC kernel image from one of the snapshots, then - it's possible for somebody else to track down the offending - function, but if you're running a custom kernel then only - What you should do is this: - - - Write down the instruction pointer value. Note that the - When the system reboots, do the following: - -% nm /kernel.that.caused.the.panic | grep f0xxxxxx - - where -% nm /kernel.that.caused.the.panic | grep f0xxxxx - - If that doesn't yield any results, chop off another digit. - Repeat until you get some sort of output. The result will be - a possible list of functions which caused the panic. This is - a less than exact mechanism for tracking down the point of - failure, but it's better than nothing. - - -

I see people constantly show panic messages like this but - rarely do I see someone take the time to match up the - instruction pointer with a function in the kernel symbol table. - -

The best way to track down the cause of a panic is by - capturing a crash dump, then using - In any case, the method I normally use is this: - - - Set up a kernel config file, optionally adding 'options DDB' if you - think you need the kernel debugger for something. (I use this mainly - for setting beakpoints if I suspect an infinite loop condition of - some kind.) - Use cd /sys/compile/KERNELCONFIG; make - Wait for kernel to finish compiling. - cp kernel / - reboot - - -

[Note: Now that FreeBSD 3.x kernels are Elf by default, - you should use - -

Note that YOU DO To make sure you capture a crash dump, you need edit - /etc/rc.conf and set /etc/rc.conf, the /var/crash. - -

NOTE: FreeBSD crash dumps are usually the same size as the - physical RAM size of your machine. That is, if you have 64MB of - RAM, you will get a 64MB crash dump. Therefore you must make sure - there's enough space in /var/crash to hold the dump. - Alternatively, you run Once you have recovered the crash dump, you can get a stack - trace with - -% gdb -k /sys/compile/KERNELCONFIG/kernel.debug /var/crash/vmcore.0 -(gdb) where - - -

Note that there may be several screens worth of information; - ideally you should use Now, if you're really insane and have a second computer, you - can also configure [Bill adds: "I forgot to mention one thing: if you have - DDB enabled and the kernel drops into the debugger, you can - force a panic (and a crash dump) just by typing 'panic' at the - ddb prompt. It may stop in the debugger again during the panic - phase. If it does, type 'continue' and it will finish the crash - dump." -ed] - - - dlsym() stopped working for ELF executables! - -

The ELF toolchain does not, by default, make the symbols - defined in an executable visible to the dynamic linker. - Consequently dlsym() searches on handles obtained - from calls to dlopen(NULL, flags) will fail to find - such symbols. - -

If you want to search, using dlsym(), for symbols - present in the main executable of a process, you need to link - the executable using the -export-dynamic option to the - . - - - - Increasing or reducing the kernel address space - -

- By default, the kernel address space is 256 MB on FreeBSD 3.x - and 1 GB on FreeBSD 4.x. If you run a network-intensive server - (e.g. a large FTP or HTTP server), you might find that 256 MB is - not enough. - -

- So how do you increase the address space? There are two aspects - to this. First, you need to tell the kernel to reserve a larger - portion of the address space for itself. Second, since the - kernel is loaded at the top of the address space, you need to - lower the load address so it doesn't bump its head against the - ceiling. - -

- The first goal is achieved by increasing the value of - src/sys/i386/include/pmap.h. Here's what - it looks like for a 1 GB address space: - - -#ifndef NKPDE -#ifdef SMP -#define NKPDE 254 /* addressable number of page tables/pde's */ -#else -#define NKPDE 255 /* addressable number of page tables/pde's */ -#endif /* SMP */ -#endif - - -

- To find the correct value of - To achieve the second goal, you need to compute the correct load - address: simply subtract the address space size (in bytes) from - 0x100100000; the result is 0xc0100000 for a 1 GB address space. - Set src/sys/i386/conf/Makefile.i386 - to that value; then set the location counter in the beginning of - the section listing in src/sys/i386/conf/kernel.script - to the same value, as follows: - - -OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386") -OUTPUT_ARCH(i386) -ENTRY(btext) -SEARCH_DIR(/usr/lib); SEARCH_DIR(/usr/obj/elf/home/src/tmp/usr/i386-unknown-freebsdelf/lib); -SECTIONS -{ - /* Read-only sections, merged into text segment: */ - . = 0xc0100000 + SIZEOF_HEADERS; - .interp : { *(.interp) } - - -

- Then reconfig and rebuild your kernel. You will probably have - problems with /usr/include/vm/. - -

- NOTE: the size of the kernel address space must be a multiple of - four megabytes. - -

- [ - adds: I think the kernel address space needs to be a power - of two, but I'm not certain about that. The old(er) boot code - used to monkey with the high order address bits and I think - expected at least 256MB granularity.] - - diff --git a/FAQ/hardware.sgml b/FAQ/hardware.sgml deleted file mode 100644 index ce2edc5447..0000000000 --- a/FAQ/hardware.sgml +++ /dev/null @@ -1,419 +0,0 @@ - - - - - Hardware compatibility - - - What kind of hard drives does FreeBSD support? - -

FreeBSD supports EIDE and SCSI drives (with a compatible - controller; see the next section), and all drives using the - original "Western Digital" interface (MFM, RLL, ESDI, and - of course IDE). A few ESDI controllers that use proprietary - interfaces may not work: stick to WD1002/3/6/7 interfaces - and clones. - - - Which SCSI controllers are supported? - -

See the complete list in the - . - - - Which CD-ROM drives are supported by FreeBSD? - -

Any SCSI drive connected to a supported controller is supported. - -

The following proprietary CD-ROM interfaces are also supported: - - - Mitsumi LU002 (8bit), LU005 (16bit) and FX001D (16bit 2x Speed). - Sony CDU 31/33A - Sound Blaster Non-SCSI CD-ROM - Matsushita/Panasonic CD-ROM - ATAPI compatible IDE CD-ROMs - - -

All non-SCSI cards are known to be extremely slow compared to - SCSI drives, and some ATAPI CDROMs may not work. - -

As of 2.2 the FreeBSD CDROM from Walnut Creek supports booting - directly from the CD. - - - Does FreeBSD support ZIP drives? - -

FreeBSD supports the SCSI ZIP drive out of the box, of course. The - ZIP drive can only be set to run at SCSI target IDs 5 or 6, but if - your SCSI host adapter's BIOS supports it you can even boot from - it. I don't know which host adapters let you boot from targets - other than 0 or 1... look at your docs (and let me know if it works - out for you). - -

ATAPI (IDE) Zip drives are supported in FreeBSD 2.2.6 and - later releases. - -

FreeBSD has contained support for Parallel Port Zip Drives since - version 3.0. If you are using a sufficiently up to date version, then - you should check that your kernel contains the scbus0, da0 - , ppbus0, and vp0 drivers (the GENERIC kernel - contains everything except vp0). With all these drivers present, the - Parallel Port drive should be available as /dev/da0s4. Disks can - be mounted using mount /dev/da0s4 /mnt OR (for dos disks) - mount_msdos /dev/da0s4 /mnt as appropriate. - -

Also check out , - and . - - - - Does FreeBSD support JAZ, EZ and other removable drives? - - -

Apart from the IDE version of the EZ drive, these are all SCSI - devices, so the should all look like SCSI disks to FreeBSD, and - the IDE EZ should look like an IDE drive. - -

See . - - - Which multi-port serial cards are supported by FreeBSD? - -

There is a list of these in the - section of the handbook. - -

Some unnamed clone cards have also been known to work, especially - those that claim to be AST compatible. - -

Check the man page to get more information on configuring such cards. - - - I have an unusual bus mouse. How do I set it up? - -

FreeBSD supports the bus mouse and the InPort bus mouse from such - manufactures as Microsoft, Logitech and ATI. The bus device driver - is compiled in the GENERIC kernel by default. If you are building - a custom kernel with the bus mouse driver, make sure to add the - following line to the kernel config file: - - - device mse0 at isa? port 0x23c tty irq5 vector mseintr - - -

The bus mouse usually comes with an dedicatd interface card. - It may allow you to set the port address and the IRQ number other - than shown above. Refer to the manual of your mouse and the - - man page for more information. - - - - How do I use my PS/2 (``mouse port'' or ``keyboard'') mouse? - -

If you're running a post-2.2.5 version of FreeBSD, the necessary - driver, psm, is included and enabled in the kernel. The kernel - should detect your PS/2 mouse at boot time. - -

If you're running a previous but relatively recent version of - FreeBSD (2.1.x or better) then you can simply enable it in the - kernel configuration menu at installation time, otherwise later with - -c at the boot: prompt. It is disabled by default, so you will need - to enable it explicitly. - -

If you're running an older version of FreeBSD then you'll have to - add the following lines to your kernel configuration file and compile - a new kernel: - - - device psm0 at isa? port "IO_KBD" conflicts tty irq 12 vector psmintr - - -

See the if you've no - experience with building kernels. - -

Once you have a kernel detecting psm0 correctly at boot time, - make sure that an entry for psm0 exists in /dev. You can do this - by typing: - - - cd /dev; sh MAKEDEV psm0 - - -

when logged in as root. - - - Is it possible to make use of a mouse in any way outside the X Window? - -

If you are using the default console driver, syscons, you can - use a mouse pointer in text consoles to cut & paste text. - Run the mouse daemon, moused, and turn on the mouse pointer - in the virtual console: - - - moused -p /dev/xxxx -t yyyy - vidcontrol -m on - - -

Where xxxx is the mouse device name and yyyy - is a protocol type for the mouse. See the - - man page for supported protocol types. - -

You may wish to run the mouse daemon automatically when the - system starts. In version 2.2.1, set the following variables in - /etc/sysconfig. - - - mousedtype="yyyy" - mousedport="xxxx" - mousedflags="" - - - In versions 2.2.2 or later, set the following variables in - /etc/rc.conf. - - - moused_type="yyyy" - moused_port="xxxx" - moused_flags="" - - -

Staring from FreeBSD 2.2.6, the mouse daemon is capable of - determining the correct protocol type automatically unless the mouse - is a relatively old serial mouse model. Specify ``auto'' as - the protocol to invoke automatic detection. - -

When the mouse daemon is running, access to the mouse needs to be - coordinated between the mouse daemon and other programs such as the - X Window. Refer to - on this issue". - - - How do I cut and paste text with mouse in the text console? - -

Once you get the mouse daemon running (see ), hold down the button 1 (left button) - and move the mouse to select a region of - text. Then, press the button 2 (middle button) or the button 3 (right - button) to paste it at the text cursor. - -

In versions 2.2.6 and later, pressing the button 2 will paste - the text. Pressing the button 3 will ``extend'' the selected region - of text. If your mouse does not have the middle button, you may wish - to emulate it or remap buttons using moused options. See the - - man page for details. - - - My mouse has a fancy wheel and buttons. Can I use them in FreeBSD? - -

The answer is, unfortunately, ``It depends.'' These mice with - additional features require specialized driver in most cases. - Unless the mouse device driver or the user program has specific - support for the mouse, it will act just like a standard two, or - three button mouse. - - - - How do I use the mouse/trackball/touchpad on my laptop? - - -

Please refer to . And check out on the Mobile - Computing page. - - - What types of tape drives are supported? - -

FreeBSD supports SCSI, QIC-36 (with a QIC-02 interface) and - QIC-40/80 (Floppy based) tape drives. This includes 8-mm (aka Exabyte) - and DAT drives. The QIC-40/80 drives are known to be slow. - -

Some of the early 8-mm drives are not quite compatible with SCSI-2, - and may not work well with FreeBSD. - - - Does FreeBSD support tape changers? - -

FreeBSD 2.2 supports SCSI changers using the device and - the - command. The details of how you actually control the changer can be - found in the man page. - -

If you're not using or - some other product that already understands changers, remember that - they're only know how to move a tape from one point to another, so - you need to keep track of which slot a tape is in, and which slot the - tape currently in the drive needs to go back to. - - - Which sound cards are supported by FreeBSD? - -

FreeBSD supports the SoundBlaster, SoundBlaster Pro, SoundBlaster - 16, Pro Audio Spectrum 16, AdLib and Gravis UltraSound sound cards. - There is also limited support for MPU-401 and compatible MIDI cards. - Cards conforming to the Microsoft Sound System specification are also - supported through the pcm driver. - -

- Workarounds for no sound from es1370 with pcm driver? - -

You can run the following command everytime the machine booted up: - -

mixer pcm 100 vol 100 cd 100 - - - Which network cards does FreeBSD support? - -

See the section of the handbook for a more - complete list. - - - I don't have a math co-processor - is that bad? - -

In general this will not cause any problems, but there are - circumstances where you will take a hit, either in performance or - accuracy of the math emulation code (see the section ). In particular, drawing arcs in X will be - VERY slow. It is highly recommended that you buy a math - co-processor; it's well worth it. - -

- What other devices does 2.X support? - -

See the - for the list of other devices supported. - - - - - Does FreeBSD support power management on my laptop? - -

FreeBSD supports APM on certain machines. Please look in the - keyword. - - - Workarounds for specific hardware problems -

This section contains workarounds for specific hardware - problems encountered by our users. - - Micron systems hang at boot time -

Certain Micron motherboards have a non-conforming PCI BIOS - implementation that causes grief when FreeBSD boots because - PCI devices don't get configured at their reported addresses. -

Disable the "Plug and Play Operating System" flag in the BIOS - to work around this problem. More information can be found at - - - - - - I have a newer Adaptec controller and FreeBSD can't find it. - - -

The newer AIC789x series Adaptec chips are supported under the CAM SCSI - framework which made it's debut in 3.0. Patches against 2.2-STABLE - are in . - A CAM-enhanced boot floppy is available at . In both cases read the README before - beginning.

- -
- - - I have an internal Plug & Play modem and FreeBSD can't find it. - - -

You will need to add the modem's PnP ID to the PnP ID list in the serial driver. - To enable Plug & Play support, compile a new kernel with /sys/i386/isa/sio.c, at about line 2777. Look for the string "SUP1310" - in the structure "siopnp_ids[]" to - find the table. Build the kernel again, install, reboot, and your modem should be found.

- -

You may have to manually configure the PnP devices using the `pnp' command in the - boot-time configuration with a command like - - pnp 1 0 enable os irq0 3 drq0 0 port0 0x2f8 - - to make the modem show.

- -
- - - How do I get the boot: prompt to show on the serial console? - - -

- Build a kernel with Create /boot.config and place Unplug the keyboard from the system. -

- -

See /usr/src/sys/i386/boot/biosboot/README.serial for information.

- -
- - - - - Why doesn't my 3Com PCI network card work with my Micron - computer? -

Certain Micron motherboards have a non-conforming PCI BIOS - implementation that does not configure PCI devices at - the addresses reported. This causes grief when FreeBSD boots. -

To work around this problem, disable the "Plug and Play Operating - System" flag in the BIOS. -

More information on this problem is available at URL: - - - - Does FreeBSD support Symmetric Multiproccessing (SMP)? - - -

SMP is supported in 3.0-STABLE and later releases only. - - - diff --git a/FAQ/includes.sgml b/FAQ/includes.sgml deleted file mode 100644 index 4531dcf12d..0000000000 --- a/FAQ/includes.sgml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/FAQ/install.sgml b/FAQ/install.sgml deleted file mode 100644 index 4886712ae4..0000000000 --- a/FAQ/install.sgml +++ /dev/null @@ -1,710 +0,0 @@ - - - - - Installation - - - Which file do I download to get FreeBSD? - -

You generally need just one floppy image, the floppies/boot.flp - file, which you image-copy onto a 1.44MB floppy and then boot from - in order to download the rest (and the installation will manage your - TCP/IP connection, deal with tapes, CDROMs, floppies, DOS - partitions, whatever's necessary to get the rest of the bits - installed). - -

If you need to download the distributions yourself (for a DOS - filesystem install, for instance), below are some recommendations - for distributions to grab: - - - bin/ - manpages/ - compat*/ - doc/ - src/ssys.* - - -

Full instructions on this procedure and a little bit more about - installation issues in general can be found in the - - - Help! The boot floppy image will not fit on a single floppy! - -

A 3.5 inch (1.44MB) floppy can accomodate 1474560 bytes of data. - The boot image is exactly 1474560 bytes in size. -

Common mistakes when preparing the boot floppy are: - - Not downloading the floppy image in binary mode when - using FTP. -

Some FTP clients default their transfer mode to ascii - and attempt to change any end-of-line characters received to match - the conventions used by the client's system. - This will almost invariably corrupt the boot image. Check the - size of the downloaded boot image: if it is not exactly - that on the server, then the download process is suspect. -

To workaround: type binary at the FTP command prompt - after getting connected to the server and before starting the - download of the image. - Using the DOS copy command (or equivalent GUI tool) to - transfer the boot image to floppy. -

Programs like copy will not work as the boot - image has been created to be booted into directly. The image has - the complete content of the floppy, track for track, and is not - meant to be placed on the floppy as a regular file. - You have to transfer it to the floppy ``raw'', using the - low-level tools (e.g. fdimage or rawrite) - described in the . - - - - Where are the instructions for installing FreeBSD? - -

Installation instructions can be found in the - - - - What do I need in order to run FreeBSD? - -

You'll need a 386 or better PC, with 5 MB or more of RAM and at - least 60 MB of hard disk space. It can run with a low end MDA - graphics card but to run X11R6, a VGA or better video card is needed. - -

See also the section on - - - I have only 4 MB of RAM. Can I install FreeBSD? - -

FreeBSD 2.1.7 was the last version of FreeBSD that could be installed - on a 4MB system. Newer versions of FreeBSD, like 2.2, need at least 5MB - to install on a new system. - -

All versions of FreeBSD, including 3.0, will RUN in 4MB of ram, they - just can't run the installation program in 4MB. You can add - extra memory for the install process, if you like, and then - after the system is up and running, go back to 4MB. Or you could - always just swap your disk into a system which has >4MB, install onto - it and then swap it back. - -

There are also situations in which FreeBSD 2.1.7 will not install - in 4 MB. To be exact: it does not install with 640 kB base + 3 MB - extended memory. If your motherboard can remap some of the ``lost'' - memory out of the 640kB to 1MB region, then you may still be able - to get FreeBSD 2.1.7 up. - -

Try to go into your BIOS setup and look for a ``remap'' option. - Enable it. You may also have to disable ROM shadowing. - -

It may be easier to get 4 more MB just for the install. Build a - custom kernel with only the options you need and then get the 4 - MB out again. - -

You may also install 2.0.5 and then upgrade your system to 2.1.7 - with the ``upgrade'' option of the 2.1.7 installation program. - -

After the installation, if you build a custom kernel, it will run - in 4 MB. Someone has even succeeded in booting with 2 MB (the - system was almost unusable though :-)) - - - - How can I make my own custom install floppy? - - -

Currently there's no way to *just* make a custom install floppy. - You have to cut a whole new release, which will include your install - floppy. There's some code in /usr/src/release/floppies/Makefile - that's supposed to let you *just* make those floppies, but it's not - really gelled yet. - -

To make a custom release, follow the instructions . - - - Can I have more than one operating system on my PC? - -

Have a look at - - - Can Windows 95 co-exist with FreeBSD? - -

Install Windows 95 first, after that FreeBSD. FreeBSD's boot - manager will then manage to boot Win95 and FreeBSD. If you - install Windows 95 second, it will boorishly overwrite your - boot manager without even asking. If that happens, see - the next section. - - - - Windows 95 killed my boot manager! How do I get it back? - - -

You can reinstall the boot manager FreeBSD comes with in one of - two ways: - - - Running DOS, go into the tools/ directory of your FreeBSD - distribution and look for bootinst.exe. You run it like so: - -

bootinst.exe boot.bin - -

and the boot manager will be reinstalled. - - Boot the FreeBSD boot floppy again and go to the Custom - installation menu item. Choose Partition. Select the drive which - used to contain your boot manager (likely the first one) and when you - come to the partition editor for it, as the very first thing (e.g. - do not make any changes) select (W)rite. This will ask for - confirmation, say yes, and when you get the Boot Manager selection - prompt, be sure to select "Boot Manager." - This will re-write the boot manager to disk. Now quit out of the - installation menu and reboot off the hard disk as normal. - - - - Can I install on a disk with bad blocks? - -

FreeBSD's bad block (the - command) handling is still not 100% (to put it charitably) and - it must unfortunately be said that if you've got an IDE or ESDI drive - with lots of bad blocks, then FreeBSD is probably not for you! - That said, it does work on thousands of IDE based systems, so - you'd do well to try it first before simply giving up. - -

If you have a SCSI drive with bad blocks, see . - - - Strange things happen when I boot the install floppy! - -

If you're seeing things like the machine grinding to a halt or - spontaneously rebooting when you try to boot the install floppy, - here are three questions to ask yourself:- - - - Did you use a new, freshly-formatted, error-free floppy - (preferably a brand-new one straight out of the box, as - opposed to the magazine coverdisk that's been lying under - the bed for the last three years)? - - Did you download the floppy image in binary (or image) mode? - (don't be embarrassed, even the best of us have accidentally - downloaded a binary file in ASCII mode at least once!) - - If you're using one of these new-fangled operating systems - like Windows95 or Windows NT, did you shut it down and restart - the system in plain, honest DOS? It seems these OS's can - interfere with programs that write directly to hardware, which - the disk creation program does; even running it inside a DOS - shell in the GUI can cause this problem. - - -

There have also been reports of Netscape causing problems when - downloading the boot floppy, so it's probably best to use a different - FTP client if you can. - - - Help! I can't install from tape! - -

If you are installing 2.1.7R from tape, you must create the tape - using a tar blocksize of 10 (5120 bytes). The default tar - blocksize is 20 (10240 bytes), and tapes created using this - default size cannot be used to install 2.1.7R; with these tapes, - you will get an error that complains about the record size being - too big. - - - Connect two FreeBSD boxes over a parallel line (PLIP) - - -

Get a laplink cable. Make sure both computer have a kernel - with lpt driver support. - - - $ dmesg | grep lp - lpt0 at 0x378-0x37f irq 7 on isa - lpt0: Interrupt-driven port - lp0: TCP/IP capable interface - - -

Plug in the laplink cable into the parallel interface. - -

Configure the network interface parameters for lp0 on both - sites as root. For example, if you want connect the host max - with moritz - - - max <-----> moritz -IP Address 10.0.0.1 10.0.0.2 - - - on max start - - # ifconfig lp0 10.0.0.1 10.0.0.2 - - -on moritz start - - - # ifconfig lp0 10.0.0.2 10.0.0.1 - - -

Thats all! Please read also the manpages - and - . - -

You should also add the hosts to /etc/hosts - - - 127.0.0.1 localhost.my.domain localhost - 10.0.0.1 max.my.domain max - 10.0.0.2 moritz.my.domain moritz - - -

To check if it works do: - - on max: - - -$ ifconfig lp0 -lp0: flags=8851 mtu 1500 - inet 10.0.0.1 --> 10.0.0.2 netmask 0xff000000 - - - -$ netstat -r -Routing tables - -Internet: -Destination Gateway Flags Refs Use Netif Expire -moritz max UH 4 127592 lp0 - - - -$ ping -c 4 moritz -PING moritz (10.0.0.2): 56 data bytes -64 bytes from 10.0.0.2: icmp_seq=0 ttl=255 time=2.774 ms -64 bytes from 10.0.0.2: icmp_seq=1 ttl=255 time=2.530 ms -64 bytes from 10.0.0.2: icmp_seq=2 ttl=255 time=2.556 ms -64 bytes from 10.0.0.2: icmp_seq=3 ttl=255 time=2.714 ms - ---- moritz ping statistics --- -4 packets transmitted, 4 packets received, 0% packet loss -round-trip min/avg/max/stddev = 2.530/2.643/2.774/0.103 ms - - - - - Can I install on my laptop over PLIP (Parallel Line IP)? - - -

Connect the two computers using a Laplink parallel cable to use - this feature: - - - +----------------------------------------+ - |A-name A-End B-End Descr. Port/Bit | - +----------------------------------------+ - |DATA0 2 15 Data 0/0x01 | - |-ERROR 15 2 1/0x08 | - +----------------------------------------+ - |DATA1 3 13 Data 0/0x02 | - |+SLCT 13 3 1/0x10 | - +----------------------------------------+ - |DATA2 4 12 Data 0/0x04 | - |+PE 12 4 1/0x20 | - +----------------------------------------+ - |DATA3 5 10 Strobe 0/0x08 | - |-ACK 10 5 1/0x40 | - +----------------------------------------+ - |DATA4 6 11 Data 0/0x10 | - |BUSY 11 6 1/0x80 | - +----------------------------------------+ - |GND 18-25 18-25 GND - | - +----------------------------------------+ - - -

See also on the Mobile Computing page. - - - - Which geometry should I use for a disk drive? - -

(By the "geometry" of a disk, we mean the number of cylinders, - heads and sectors/track on a disk - I'll refer to this as - C/H/S for convenience. This is how the PC's BIOS works out - which area on a disk to read/write from). - -

This seems to cause a lot of confusion for some reason. First - of all, the All that matters is the For SCSI disks, the geometry to use depends on whether extended - translation support is turned on in your controller (this is - often referred to as "support for DOS disks >1GB" or something - similar). If it's turned off, then use N cylinders, 64 heads - and 32 sectors/track, where 'N' is the capacity of the disk in - MB. For example, a 2GB disk should pretend to have 2048 cylinders, - 64 heads and 32 sectors/track. - -

If it If you are not sure about this, or FreeBSD fails to detect the - geometry correctly during installation, the simplest way around - this is usually to create a small DOS partition on the disk. The - correct geometry should then be detected (and you can always remove - the DOS partition in the partition editor if you don't want to keep - it, or leave it around for programming network cards and the like). - -

Alternatively, there is a freely available utility distributed with - FreeBSD called ``tools - subdirectory on the FreeBSD CDROM or on the various FreeBSD - ftp sites) which can be used to work out what geometry the other - operating systems on the disk are using. You can then enter this - geometry in the partition editor. - - - Any restrictions on how I divide the disk up? - -

Yes. You must make sure that your root partition is below 1024 - cylinders so the BIOS can boot the kernel from it. (Note that this - is a limitation in the PC's BIOS, not FreeBSD). - -

For a SCSI drive, this will normally imply that the root partition - will be in the first 1024MB (or in the first 4096MB if extended - translation is turned on - see previous question). For IDE, the - corresponding figure is 504MB. - - - - What about disk managers? Or, I have a large drive! - - -

FreeBSD recognizes the Ontrack Disk Manager and makes allowances - for it. Other disk managers are not supported. - -

If you just want to use the disk with FreeBSD you don't need a - disk manager. Just configure the disk for as much space as the - BIOS can deal with (usually 504 megabytes), and FreeBSD - should figure out how much space you really have. If you're using - an old disk with an MFM controller, you may need to explicitly - tell FreeBSD how many cylinders to use. - -

If you want to use the disk with FreeBSD and another operating - system, you may be able to do without a disk manager: just make sure - the the FreeBSD boot partition and the slice for the other - operating system are in the first 1024 cylinders. If you're - reasonably careful, a 20 megabyte boot partition should be plenty. - - - - When I boot FreeBSD I get ``Missing Operating System'' - - -

This is classically a case of FreeBSD and DOS or some other OS - conflicting over their ideas of disk You will have to reinstall FreeBSD, but obeying the - instructions given above will almost always get you going. - - - I can't get past the boot manager's `F?' prompt. - -

This is another symptom of the problem described in the preceding - question. Your BIOS geometry and FreeBSD geometry settings do - not agree! If your controller or BIOS supports cylinder - translation (often marked as ``>1GB drive support''), try - toggling its setting and reinstalling FreeBSD. - - - - I have >16MB of RAM. Will this cause any problems? - -

Apart from performance issues, no. FreeBSD 2.X comes with bounce - buffers which allow your bus mastering controller access to greater - than 16MB. (Note that this should only be required if you are using - ISA devices, although one or two broken EISA and VLB devices may - need it as well). - -

Also look at the section on if you have that much memory, - or if you're using a Compaq or other BIOS that lies about - the available memory. - - - Do I need to install the complete sources? - -

In general, no. However, we would strongly recommend that you - install, at a minimum, the ``. With the exception - of the kernel sources, our build structure is set up so that you - can read-only mount the sources from elsewhere via NFS and still - be able to make new binaries. (Because of the kernel-source - restriction, we recommend that you not mount this on - /usr/src directly, but rather in some other location - with appropriate symbolic links to duplicate the top-level - structure of the source tree.) - -

Having the sources on-line and knowing how to build a system with - them will make it much easier for you to upgrade to future - releases of FreeBSD. - -

To actually select a subset of the sources, use the Custom - menu item when you are in the Distributions menu of the - system installation tool. The src/install.sh script - will also install partial pieces of the source distribution, - depending on the arguments you pass it. - - - Do I need to build a kernel? - -

Building a new kernel was originally pretty much a required - step in a FreeBSD installation, but more recent releases have - benefited from the introduction of a much friendlier kernel - configuration tool. When at the FreeBSD boot prompt (boot:), - use the "-c" flag and you will be dropped into a visual - configuration screen which allows you to configure the kernel's - settings for most common ISA cards. - -

It's still recommended that you eventually build a new - kernel containing just the drivers that you need, just to save a - bit of RAM, but it's no longer a strict requirement for most - systems. - - - I live outside the US. Can I use DES encryption? - -

If it is not absolutely imperative that you use DES style - encryption, you can use FreeBSD's default encryption for even - Since the DES encryption algorithm cannot legally be exported - from the US, non-US users should not download this software (as - part of the There is however a replacement libcrypt available, based on - sources written in Australia by David Burren. This code is now - available on some non-US FreeBSD mirror sites. Sources for the - unencumbered libcrypt, and binaries of the programs which use it, - can be obtained from the following FTP sites: - - - ftp://ftp.internat.FreeBSD.org/pub/FreeBSD - ftp://storm.sea.uct.ac.za/pub/FreeBSD - - ftp://ftp.iqm.unicamp.br/pub/FreeBSD - - ftp://nic.funet.fi/pub/unix/FreeBSD/eurocrypt - - -

The non-US Non-US users should please not download any encryption software - from the USA. This can get the maintainers of the sites from - which the software is downloaded into severe legal difficulties. - -

A non-US distribution of Kerberos is also being developed, and - current versions can generally be obtained by anonymous FTP from - braae.ru.ac.za. - -

There is also a for the - discussion of non-US encryption software. For more information, send - an email message with a single line saying ``<majordomo@braae.ru.ac.za>. - - - The boot floppy starts but hangs at the ``Probing Devices...'' - screen. - -

If you have a IDE Zip or Jaz drive installed, remove it and try again. - The boot floppy can get confused by the drives. - After the system is installed you can reconnect the drive. Hopefully - this will be fixed in a later release. - - - I get a ``panic: cant mount root'' error when rebooting the system after installation. - -

This error comes from confusion between the boot block's and the - kernel's understanding of the disk devices. The error usually - manifests on two-disk IDE systems, with the hard disks arranged as the - master or single device on separate IDE controllers, with FreeBSD - installed on the secondary IDE controller. The boot blocks think - the system is installed on wd1 (the second BIOS disk) while the kernel - assigns the first disk on the secondary controller device wd2. After - the device probing, the kernel tries to mount what the boot blocks - think is the boot disk, wd1, while it is really wd2, and fails. - -

To fix the problem, do one of the following: - - - At the Boot: prompt, enter - 1:wd(2,a)kernel and press Enter. If the system starts, then - run the command - -echo "1:wd(2,a)kernel" > /boot.config - - to make it the default boot string. - Move the FreeBSD disk onto the primary IDE controller, so the - hard disks are consecutive. - - modify the wd configuration lines to read: - - -controller wdc0 at isa? port "IO_WD1" bio irq 14 vector wdintr -disk wd0 at wdc0 drive 0 -# disk wd1 at wdc0 drive 1 # comment out this line - -controller wdc1 at isa? port "IO_WD2" bio irq 15 vector wdintr -disk wd1 at wdc1 drive 0 # change from wd2 to wd1 -disk wd2 at wdc1 drive 1 # change from wd3 to wd2 - - - Install the new kernel. - If you moved your disks and wish to restore the previous - configuration, replace the disks in the desired configuration and reboot. - Your system should boot successfully. - - - - - What are the limits for memory? - -

For memory, the (theoretical) limit is 4 gigabytes. One gigabyte - has been tested; you generally can't buy i386 PCs that can support - much more than that. - - - What are the limits for ffs filesystems? - -

For ffs filesystems, the maximum theoretical limit is 8 terabytes - (2G blocks), or 16TB for the default block size of 8K. - In practice, there is a soft limit of 1 terabyte, but with modifications - filesystems with 4 terabytes are possible (and exist). - -

The maximum size of a single ffs file is approximately 1G blocks - (4TB) if the block size is 4K. - - - maxfilesize - ---------------------------------- - 2.2.7 3.0 -fs block size -stable -current works should-work -------------- ------- -------- ----- ----------- -4K 4T-1 4T-1 4T-1 4+T -8K 32+G 8T-1 32+G 16T-1 -16K 128+G 16T-1 128+G 32T-1 -32K 512+G 32T-1 512+G 64T-1 -64K 2048+G 64T-1 2048+G 128T-1 - - -

When the fs block size is 4K, triple indirect blocks work and - everything should be limited by the maximum fs block number that can - be represented using triple indirect blocks (approx. 1K^3 + 1K^2 + - 1K), but everything is limited by a (wrong) limit of 1G-1 on fs block - numbers. The limit on fs block numbers should be 2G-1. There are - some bugs for fs block numbers near 2G-1, but such block numbers are - unreachable when the fs block size is 4K. - -

For block sizes of 8K and larger, everything should be limited - by the 2G-1 limit on fs block numbers, but is actually limited by the - 1G-1 limit on fs block numbers, except under -stable triple indirect - blocks are unreachable, so the limit is the maxiumum fs block number - that can be represented using double indirect blocks - (approx. (blocksize/4)^2 + (blocksize/4)), and under -current - exceeding this limit may cause problems. Using the correct limit of - 2G-1 blocks does cause problems. - - - How can I put 1TB files on my floppy? - -

I keep several virtual ones on floppies :-). The maxiumum - file size is not closely related to the maximum disk size. The - maximum disk size is 1TB. It is a feature that the file size can be - larger than the disk size. - -

The following example creates a file of size 8T-1 using a - whole 32K of disk space (3 indirect blocks and 1 data block) on a - small root partition. The dd command requires a dd that works with - large files. - - -ttyv0:bde@alphplex:/tmp/q> cat foo -df . -dd if=/dev/zero of=z bs=1 seek=`echo 2^43 - 2 | bc` count=1 -ls -l z -du z -df . -ttyv0:bde@alphplex:/tmp/q> sh foo -Filesystem 1024-blocks Used Avail Capacity Mounted on -/dev/sd0a 64479 27702 31619 47% / -1+0 records in -1+0 records out -1 bytes transferred in 0.000187 secs (5346 bytes/sec) --rw-r--r-- 1 bde bin 8796093022207 Sep 7 16:04 z -32 z -Filesystem 1024-blocks Used Avail Capacity Mounted on -/dev/sd0a 64479 27734 31587 47% / -ttyv0:bde@alphplex:/tmp/q> exit - - -

Bruce Evans, September 1998 - - - I compiled a new kernel and now I get the error message "archsw.readin.failed" when booting. - -

You can boot by specifying the kernel directly at the second - stage, pressing any key when the | shows up before loader is - started. More specifically, you have upgraded the source for your - kernel, and installed a new kernel builtin from them without making - world. This is not supported. Make world. - - diff --git a/FAQ/kernelconfig.sgml b/FAQ/kernelconfig.sgml deleted file mode 100644 index 02e6d417ce..0000000000 --- a/FAQ/kernelconfig.sgml +++ /dev/null @@ -1,96 +0,0 @@ - - - - - Kernel Configuration - - - - I'd like to customize my kernel. Is it difficult? - - -

Not at all! Check out the . - -

- - My kernel compiles fail because - -

Let me guess. You removed from your - kernel configuration file because you don't have a math co-processor, - right? Wrong! :-) The - Interrupt conflicts with multi-port serial code. - -

- # - # Multiport high-speed serial line - 16550 UARTS - # - device sio2 at isa? port 0x2a0 tty irq 5 flags 0x501 vector siointr - device sio3 at isa? port 0x2a8 tty flags 0x501 vector siointr - device sio4 at isa? port 0x2b0 tty flags 0x501 vector siointr - device sio5 at isa? port 0x2b8 tty flags 0x501 vector siointr - - - - How do I enable support for QIC-40/80 drives? - -

You need to uncomment the following line in the generic config - file (or add it to your config file), add a `` line and recompile. - - -controller fdc0 at isa? port "IO_FD1" bio irq 6 drq 2 flags 0x1 vector fdintr -disk fd0 at fdc0 drive 0 ^^^^^^^^^ -disk fd1 at fdc0 drive 1 -#tape ft0 at fdc0 drive 2 -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - - -

Next, you create a device called /dev/ft0 by going into - /dev and run the following command: - - - sh ./MAKEDEV ft0 - - -

for the first device. You will have a device called /dev/ft0, which you can - write to through a special program to manage it called - `` - for further details. - -

Versions previous to /usr/src/sbin/ft in - - diff --git a/FAQ/misc.sgml b/FAQ/misc.sgml deleted file mode 100644 index be5de3b43b..0000000000 --- a/FAQ/misc.sgml +++ /dev/null @@ -1,428 +0,0 @@ - - - - - Miscellaneous Questions - - - - FreeBSD uses far more swap space than Linux. Why? - - -

FreeBSD only appears to use more swap than Linux. In actual fact, - it does not. The main difference between FreeBSD and Linux in this - regard is that FreeBSD will proactively move entirely idle, unused pages - of main memory into swap in order to make more main memory available - for active use. Linux tends to only move pages to swap as a last resort. - The perceived heavier use of swap is balanced by the more efficient use - of main memory. - -

Note that while FreeBSD is proactive in this regard, it does not - arbitrarily decide to swap pages when the system is truely idle. Thus - you will not find your system all paged out when you get up in the - morning after leaving it idle overnight. - - - - Why use (what are) a.out and ELF executable formats? - - -

To understand why FreeBSD uses the a.out format, you must - first know a little about the 3 currently "dominant" executable - formats for UNIX: - - - - -

The oldest and `classic' unix object format. It uses a - short and compact header with a magic number at the beginning - that's often used to characterize the format (see - for more details). It contains three loaded - segments: .text, .data, and .bss plus a symbol table and a - string table. - - COFF -

The SVR3 object format. The header now comprises a section - table, so you can have more than just .text, .data, and .bss - sections. - - ELF -

The successor to FreeBSD tries to work around this problem somewhat by - providing a utility for branding a known for more information. - - -

FreeBSD comes from the "classic" camp and has traditionally used - the format, a technology tried and proven through - many generations of BSD releases. Though it has also been possible - for some time to build and run native In FreeBSD's case, our shared - library mechanism is based more closely on Sun's - SunOS-style shared library mechanism and, as such, is very - easy to use. - However, starting with 3.0, FreeBSD officially supports - Yes, but why are there so many different - formats? - -

Back in the dim, dark past, there was simple hardware. This - simple hardware supported a simple, small system. a.out was - completely adequate for the job of representing binaries on this - simple system (a PDP-11). As people ported unix from this - simple system, they retained the a.out format because it was - sufficient for the early ports of unix to architectures like the - Motorola 68k, VAXen, etc. - -

Then some bright hardware engineer decided that if he could - force software to do some sleazy tricks, then he'd be able to - shave a few gates off the design and allow his CPU core to run - faster. While it was made to work with this new kind of - hardware (known these days as RISC), In addition, program sizes were getting huge and disks (and - physical memory) were still relatively small so the concept of a - shared library was born. The VM system also became more - sophisticated. While each one of these advancements was done - using the However, as time passed, the build tools that FreeBSD derived - their build tools from (the assembler and loader especially) - evolved in two parallel trees. The FreeBSD tree added shared - libraries and fixed some bugs. The GNU folks that originally - write these programs rewrote them and added simpler support for - building cross compilers, plugging in different formats at will, - etc. Since many people wanted to build cross compilers - targeting FreeBSD, they were out of luck since the older sources - that FreeBSD had for as and ld weren't up to the task. The new - gnu tools chain (binutils) does support cross compiling, - - Why won't chmod change the permissions on symlinks? - -

You have to use either `` and - - man pages for more info. - -

- without any options and follow the symlink with a trailing slash - (``/''). For example, if `` - chmod 555 foo/ - - -

With the trailing slash, will - follow the symlink, `` - - Why are login names - -

You'd think it'd be easy enough to change In FreeBSD 3.0 and later, the maximum name length has been - increased to 16 characters and those various utilities with - hard-coded name sizes have been found and fixed. The fact that this - touched so many areas of the system is why, in fact, the change was - not made until 3.0.

- -

If you're absolutely confident in your ability to find and fix - these sorts of problems for yourself when and if they pop up, you - can increase the login name length in earlier releases by editing - /usr/include/utmp.h and changing UT_NAMESIZE accordingly. You must - also update MAXLOGNAME in /usr/include/sys/param.h to match - the UT_NAMESIZE change. Finally, if you build from sources, don't - forget that /usr/include is updated each time! Change the appropriate - files in /usr/src/.. instead.

- - - Can I run DOS binaries under FreeBSD? - -

Yes, starting with version 3.0 you can using BSDI's if you're interested in - joining this ongoing effort! - -

For pre-3.0 systems, there is a neat utility called - - in the ports collection which emulates an 8088 and enough BIOS services - to run DOS text mode applications. It requires the X Window - System (provided as XFree86). - - - - What is `` - -

- stands for Software Update Protocol, and was developed by CMU - for keeping their development trees in sync. We used it to keep - remote sites in sync with our central development sources. - -

SUP is not bandwidth friendly, and has been retired. The current - recommended method to keep your sources up to date is - - - - How cool is FreeBSD? - -

Q. Has anyone done any temperature testing while running FreeBSD? - I know Linux runs cooler than dos, but have never seen a mention of - FreeBSD. It seems to run really hot. - -

A. No, but we have done numerous taste tests on blindfolded - volunteers who have also had 250 micrograms of LSD-25 - administered beforehand. 35% of the volunteers said that FreeBSD - tasted sort of orange, whereas Linux tasted like purple haze. - Neither group mentioned any particular variances in temperature - that I can remember. We eventually had to throw the results of - this survey out entirely anyway when we found that too many - volunteers were wandering out of the room during the tests, thus - skewing the results. I think most of the volunteers are at Apple - now, working on their new ``scratch and sniff'' GUI. It's a - funny old business we're in! - -

Seriously, both FreeBSD and Linux use the `` - Who's scratching in my memory banks?? - -

Q. Is there anything "odd" that FreeBSD does when compiling the - kernel which would cause the memory to make a scratchy sound? When - compiling (and for a brief moment after recognizing the floppy drive - upon startup, as well), a strange scratchy sound emanates from what - appears to be the memory banks. - -

A. Yes! You'll see frequent references to ``daemons'' in the BSD - documentation, and what most people don't know is that this - refers to genuine, non-corporeal entities that now possess your - computer. The scratchy sound coming from your memory is actually - high-pitched whispering exchanged among the daemons as they best - decide how to deal with various system administration tasks. - -

If the noise gets to you, a good ``fdisk /mbr'' from DOS - will get rid of them, but don't be surprised if they react - adversely and try to stop you. In fact, if at any point during - the exercise you hear the satanic voice of Bill Gates coming from - the built-in speaker, take off running and don't ever look back! - Freed from the counterbalancing influence of the BSD daemons, the - twin demons of DOS and Windows are often able to re-assert total - control over your machine to the eternal damnation of your soul. - Given a choice, I think I'd prefer to get used to the scratchy - noises, myself! - - - What does 'MFC' mean? - -

MFC is an acronym for 'Merged From -CURRENT.' It's used in the CVS - logs to denote when a change was migrated from the CURRENT to the STABLE - branches. - - - What does 'BSD' mean? - -

It stands for something in a secret language that only - members can know. It doesn't translate literally but its ok to - tell you that BSD's translation is something between, 'Formula-1 - Racing Team', 'Penguins are tasty snacks', and 'We have a better - sense of humor than Linux.' :-) - -

Seriously, BSD is an acronym for 'Berkeley Software - Distribution', which is the name the Berkeley CSRG (Computer - Systems Research Group) chose for their Unix distribution way - back when. - - - How many FreeBSD hackers does it take to change a lightbulb? - -

One thousand, one hundred and seventy-two: - -

Twenty-three to complain to -current about the lights being - out; - -

Four to claim that it is a configuration problem, and that - such matters really belong on -questions; - -

Three to submit PRs about it, one of which is misfiled under - doc and consists only of "it's dark"; - -

One to commit an untested lightbulb which breaks buildworld, - then back it out five minutes later; - -

Eight to flame the PR originators for not including patches - in their PRs; - -

Five to complain about buildworld being broken; - -

Thirty-one to answer that it works for them, and they must - have cvsupped at a bad time; - -

One to post a patch for a new lightbulb to -hackers; - -

One to complain that he had patches for this three years ago, - but when he sent them to -current they were just ignored, and he - has had bad experiences with the PR system; besides, the - proposed new lightbulb is non-reflexive; - -

Thirty-seven to scream that lightbulbs do not belong in the - base system, that committers have no right to do things like - this without consulting the Community, and WHAT IS -CORE DOING - ABOUT IT!? - -

Two hundred to complain about the color of the bicycle shed; - -

Three to point out that the patch breaks style(9); - -

Seventeen to complain that the proposed new lightbulb is - under GPL; - -

Five hundred and eighty-six to engage in a flame war about - the comparative advantages of the GPL, the BSD license, the MIT - license, the NPL, and the personal hygiene of unnamed FSF - founders; - -

Seven to move various portions of the thread to -chat and - -advocacy; - -

One to commit the suggested lightbulb, even though it shines - dimmer than the old one; - -

Two to back it out with a furious flame of a commit message, - arguing that FreeBSD is better off in the dark than with a dim - lightbulb; - -

Forty-six to argue vociferously about the backing out of the - dim lightbulb and demanding a statement from -core; - -

Eleven to request a smaller lightbulb so it will fit their - Tamagotchi if we ever decide to port FreeBSD to that platform; - -

Seventy-three to complain about the SNR on -hackers and -chat - and unsubscribe in protest; - -

Thirteen to post "unsubscribe", "How do I unsubscribe?", or - "Please remove me from the list", followed by the usual footer; - -

One to commit a working lightbulb while everybody is too busy - flaming everybody else to notice; - -

Thirty-one to point out that the new lightbulb would shine - 0.364% brighter if compiled with TenDRA (although it will have - to be reshaped into a cube), and that FreeBSD should therefore - switch to TenDRA instead of EGCS; - -

One to complain that the new lightbulb lacks fairings; - -

Nine (including the PR originators) to ask "what is MFC?"; - -

Fifty-seven to complain about the lights being out two weeks - after the bulb has been changed. - -

- adds: - -

diff --git a/FAQ/network.sgml b/FAQ/network.sgml deleted file mode 100644 index f0645749a6..0000000000 --- a/FAQ/network.sgml +++ /dev/null @@ -1,1297 +0,0 @@ - - - - - Networking - - - Where can I get information on ``diskless booting''? - -

``Diskless booting'' means that the FreeBSD box is booted over a - network, and reads the necessary files from a server instead of - its hard disk. For full details, please read - - - - - Can a FreeBSD box be used as a dedicated network router? - - -

Internet standards and good engineering practice prohibit us from - providing packet forwarding by default in FreeBSD. You can - however enable this feature by changing the following variable to - : - - - gateway_enable=YES # Set to YES if this host will be a gateway - - -

This option will put the variable - In most cases, you will also need to run a routing process to - tell other systems on your network about your router; FreeBSD - comes with the standard BSD routing daemon - , or for more complex situations you may want to try - It is our duty to warn you that, even when FreeBSD is configured - in this way, it does not completely comply with the Internet - standard requirements for routers; however, it comes close enough - for ordinary usage. - - - Can I connect my Win95 box to the Internet via FreeBSD? - -

Typically, people who ask this question have two PC's at home, one - with FreeBSD and one with Win95; the idea is to use the FreeBSD - box to connect to the Internet and then be able to access the - Internet from the Windows95 box through the FreeBSD box. This - is really just a special case of the previous question. - -

There's a useful document available which explains how to set - FreeBSD up as a - -

and - - on your FreeBSD box. - -

See also the section on . - - - - Why does recompiling the latest BIND from ISC fail? - - -

There is a conflict between the ``compat/include/sys/cdefs.h. - - - Does FreeBSD support SLIP and PPP? - -

Yes. See the man pages for - , , - and - . - deals exclusively with incoming connections and - deals exclusively with outgoing connections. - -

These programs are described in the following sections of the - : - - - - - - - - - - - -

If you only have access to the Internet through a "shell - account", you may want to have a look at the - package. It can provide you with (limited) access to services - such as ftp and http direct from your local machine. - - - - Does FreeBSD support NAT or Masquerading - -

If you have a local subnet (one or more local machines), but have - been allocated only a single IP number from your Internet provider - (or even if you receive a dynamic IP number), you may want to look at - the - program. The program has similar functionality built in via - the - is used in both cases. - - - - I can't make ppp work. What am I doing wrong ? - -

You should first read the and - the . Enable logging with the command - - - set log Phase Chat Connect Carrier lcp ipcp ccp command - - -

This command may be typed at the /etc/ppp/ppp.conf configuration file - (the start of the default section is the best place to put it). - Make sure that contains the lines - - - !ppp - *.* /var/log/ppp.log - - -

and that the file /var/log/ppp.log exists. You can - now find out a lot about what's going on from the log file. - Don't worry if it doesn't all make sense. If you need to - get help from someone, it may make sense to them. - -

If your version of ppp doesn't understand the "set log" - command, you should download the - . - It will build on FreeBSD version 2.1.5 and higher. - - - Ppp just hangs when I run it - -

This is usually because your hostname won't resolve. The best - way to fix this is to make sure that /etc/hosts is - consoluted by your resolver first by editing /etc/host.conf - and putting the hosts line first. Then, simply put an - entry in /etc/hosts for your local machine. If you have - no local network, change your localhost line: - - -127.0.0.1 foo.bar.com foo localhost - - - Otherwise, simply add another entry for your host. Consult the - relevant man pages for more details. -

You should be able to successfully ping -c1 `hostname` - when you're done. - - - Ppp won't dial in -auto mode - -

First, check that you've got a default route. By running - name="netstat -rn">, you should see two entries like this: - - -Destination Gateway Flags Refs Use Netif Expire -default 10.0.0.2 UGSc 0 0 tun0 -10.0.0.2 10.0.0.1 UH 0 0 tun0 - - -

This is assuming that you've used the addresses from the - handbook, the man page or from the ppp.conf.sample file. - If you haven't got a default route, it may be because you're - running an old version of that doesn't understand the - word - add 0 0 HISADDR - - -

line to one saying - - - add 0 0 10.0.0.2 - - -

Another reason for the default route line being missing is that - you have mistakenly set up a default router in your - file (this file was called - /etc/sysconfig prior to release 2.2.2), and you have - omitted the line saying - - - delete ALL - - -

from ppp.conf. If this is the case, go back to the - section of the handbook. - - - What does "No route to host" mean - -

This error is usually due to a missing - - - MYADDR: - delete ALL - add 0 0 HISADDR - - -

section in your /etc/ppp/ppp.linkup file. This is - only necessary if you have a dynamic IP address or don't know the - address of your gateway. If you're using interactive mode, you can - type the following after entering - delete ALL - add 0 0 HISADDR - - -

Refer to the section of the handbook - for further details. - - - My connection drops after about 3 minutes - -

The default ppp timeout is 3 minutes. This can be adjusted - with the line - - - set timeout NNN - - -

where ppp.conf file, or to type it at the prompt in - interactive mode. It is also possible to adjust it on the fly while - the line is active by connecting to - or . Refer to the - man - page for further details. - - - My connection drops under heavy load - -

If you have Link Quality Reporting (LQR) configured, it is - possible that too many LQR packets are lost between your - machine and the peer. Ppp deduces that the line must therefore - be bad, and disconnects. Prior to FreeBSD version 2.2.5, - LQR was enabled by default. It is now disabled by default. - LQR can be disabled with the line - - - disable lqr - - - - My connection drops after a random amount of time - -

Sometimes, on a noisy phone line or even on a line with - call waiting enabled, your modem may hang up because it - thinks (incorrectly) that it lost carrier. - -

There's a setting on most modems for determining how tolerant - it should be to temporary losses of carrier. On a USR - Sportster for example, this is measured by the S10 register in - tenths of a second. To make your modem more forgiving, you could - add the following send-expect sequence to your dial string: - - - set dial "...... ATS10=10 OK ......" - - -

Refer to your modem manual for details. - - - My connection hangs after a random amount of time - -

Many people experience hung connections with no apparent - explaination. The first thing to establish is which side of the - link is hung. - -

If you are using an external modem, you can simply try using - Having established whether the problem is local or remote, - you now have two possibilities: - - - The remote end isn't responding - -

There's very little you can do about this. Most ISPs will - refuse to help if you're not running a Microsoft OS. You can - First, try disabling all local compression by adding the - following to your configuration: - - - disable pred1 deflate deflate24 protocomp acfcomp shortseq vj - deny pred1 deflate deflate24 protocomp acfcomp shortseq vj - - -

Then reconnect to ensure that this makes no difference. - If things improve or if the problem is solved completely, - determine which setting makes the difference through trial - and error. This will provide good amunition when you contact - your ISP (although it may make it apparent that you're not - running a Microsoft product). - -

Before contacting your ISP, enable async logging locally - and wait until the connection hangs again. This may use up - quite a bit of disk space. The last data read from the port - may be of interest. It is usually ascii data, and may even - describe the problem (``Memory fault, core dumped'' ?). - -

If your ISP is helpful, they should be able to enable logging - on their end, then when the next link drop occurs, they may be - able to tell you why their side is having a problem. Feel free - to send the details to , or even to ask your ISP to - contact me directly. - - - Ppp is hung -

Your best bet here is to rebuild ppp by adding Send the results to . - - - Nothing happens after the Login OK! message - -

Prior to FreeBSD version 2.2.5, once the link was established, - would wait for the peer to initiate the Line Control - Protocol (LCP). Many ISPs will not initiate negotiations and - expect the client to do so. To force - set openmode active - - -

- I keep seeing errors about magic being the same - -

Occasionally, just after connecting, you may see messages in - the log that say "magic is the same". Sometimes, these - messages are harmless, and sometimes one side or the other - exits. Most ppp implementations cannot survive this problem, and - even if the link seems to come up, you'll see repeated configure - requests and configure acknowledgements in the log file until - ppp eventually gives up and closes the connection. - -

This normally happens on server machines with slow disks that - are spawning a getty on the port, and executing ppp from a - login script or program after login. I've also heard reports - of it happening consistently when using slirp. The reason is - that in the time taken between getty exiting and ppp starting, the - client-side ppp starts sending Line Control Protocol (LCP) - packets. Because ECHO is still switched on for the port on - the server, the client ppp sees these packets "reflect" back. - -

One part of the LCP negotiation is to establish a magic number - for each side of the link so that "reflections" can be detected. - The protocol says that when the peer tries to negotiate - the same magic number, a NAK should be sent and a new magic - number should be chosen. During the period that the server - port has ECHO turned on, the client ppp sends LCP packets, - sees the same magic in the reflected packet and NAKs it. It - also sees the NAK reflect (which also means ppp must change - its magic). This produces a potentially enormous number of - magic number changes, all of which are happily piling into - the server's tty buffer. As soon as ppp starts on the server, - it's flooded with magic number changes and almost immediately - decides it's tried enough to negotiate LCP and gives up. - Meanwhile, the client, who no longer sees the reflections, - becomes happy just in time to see a hangup from the server. - -

This can be avoided by allowing the peer to start negotiating - with the following line in your ppp.conf file: - - - set openmode passive - - -

This tells ppp to wait for the server to initiate LCP - negotiations. Some servers however may never initiate negotiations. - If this is the case, you can do something like: - - - set openmode active 3 - - -

This tells ppp to be passive for 3 seconds, and then to start - sending LCP requests. If the peer starts sending requests during - this period, ppp will immediately respond rather than waiting for - the full 3 second period. - - - - LCP negotiations continue 'till the connection is closed - - -

There is currently an implementation mis-feature in This goes on 'till one side figures out that they're getting - nowhere and gives up. - -

The best way to avoid this is to configure one side to be - - set openmode passive - - - command. Care should be taken with this option. You should also - use the - - - set stopped N - - - command to limit the amount of time that - set openmode active N - - - command (where - Ppp locks up shortly after connecting - -

Prior to version 2.2.5 of FreeBSD, it was possible that your - link was disabled shortly after connection due to - disable pred1 - - - - Ppp locks up when I shell out to test it - -

When you execute the If you wish to execute commands like this, use the - - Ppp over a null-modem cable never exits - -

There is no way for - enable lqr - - -

LQR is accepted by default if negotiated by the peer. - - - Why does ppp dial for no reason in -auto mode - -

If To determine the cause, use the following line: - - - set log +tcp/ip - - -

This will log all traffic through the connection. The next - time the line comes up unexpectedly, you will see the reason - logged with a convenient timestamp next to it. - -

You can now disable dialing under these circumstances. Usually, - this sort of problem arises due to DNS lookups. To prevent - DNS lookups from establishing a connection (this will - set dfilter 1 deny udp src eq 53 - set dfilter 2 deny udp dst eq 53 - set dfilter 3 permit 0/0 0/0 - - -

This is not always suitable, as it will effectively break your - demand-dial capabilities - most programs will need a DNS lookup - before doing any other network related things. - -

In the DNS case, you should try to determine what is actually - trying to resolve a host name. A lot of the time, - is the culprit. You should make sure that you tell - sendmail not to do any DNS lookups in its configuration file. See - the section on for - details on how to create your own configuration file and what should - go into it. You may also want to add the following line to your - - define(`confDELIVERY_MODE', `d')dnl - - -

This will make sendmail queue everything until the queue is - run (usually, sendmail is invoked with ``-bd -q30m'', telling it - to run the queue every 30 minutes) or until a ``sendmail -q'' - is done (perhaps from your ppp.linkup file). - - - What do these CCP errors mean - -

I keep seeing the following errors in my log file: - - - CCP: CcpSendConfigReq - CCP: Received Terminate Ack (1) state = Req-Sent (6) - - -

This is because ppp is trying to negotiate Predictor1 - compression, and the peer does not want to negotiate any - compression at all. The messages are harmless, but if you - wish to remove them, you can disable Predictor1 compression - locally too: - - - disable pred1 - - - - Ppp locks up during file transfers with IO errors - -

Under FreeBSD 2.2.2 and before, there was a bug in the tun - driver that prevents incoming packets of a size larger than - the tun interface's MTU size. Receipt of a packet greater than - the MTU size results in an IO error being logged via syslogd. - -

The ppp specification says that an MRU of 1500 should - always be accepted as a minimum, despite any LCP - negotiations, therefore it is possible that should you decrease - the MTU to less than 1500, your ISP will transmit packets of - 1500 regardless, and you will tickle this non-feature - locking - up your link. - -

The problem can be circumvented by never setting an MTU of - less than 1500 under FreeBSD 2.2.2 or before. - - - Why doesn't ppp log my connection speed? - -

In order to log all lines of your modem ``conversation'', - you must enable the following: - - - set log +connect - - -

This will make - - log everything up until the last requested "expect" string. - -

If you wish to see your connect speed and are using PAP or CHAP - (and therefore don't have anything to "chat" after the CONNECT - in the dial script - no "set login" script), you must make sure that - you instruct ppp to "expect" the whole CONNECT line, something like - this: - - - set dial "ABORT BUSY ABORT NO\\sCARRIER TIMEOUT 4 \"\" ATZ OK-ATZ-OK ATDT\\T TIMEOUT 60 CONNECT \\c \\n" - - -

Here, we get our CONNECT, send nothing, then expect a line-feed, - forcing - Ppp ignores the `\' character in my chat script - -

Ppp parses each line in your config files so that it can - interpret strings such as When the chat interpreter parses each argument, it re-interprets - the argument in order to find any special escape sequences such - as ``\P'' or ``\T'' (see the man page). As a result of this - double-parsing, you must remember to use the correct number of - escapes. - -

If you wish to actually send a ``\'' character to (say) your - modem, you'd need something like: - - - set dial "\"\" ATZ OK-ATZ-OK AT\\\\X OK" - - -

resulting in the following sequence: - - - ATZ - OK - AT\X - OK - - -

or - - - set phone 1234567 - set dial "\"\" ATZ OK ATDT\\T" - - -

resulting in the following sequence: - - - ATZ - OK - ATDT1234567 - - - - Ppp gets a seg-fault, but I see no - -

Ppp (or any other program for that matter) should never - dump core. Because ppp runs with an effective user id of 0, - the operating system will not write ppps core image to disk - before terminating it. If, however ppp - $ tar xfz ppp-*.src.tar.gz - $ cd ppp*/ppp - $ echo STRIP= >>Makefile - $ echo CFLAGS+=-g >>Makefile - $ make clean all - $ su - # make install - # chmod 555 /usr/sbin/ppp - - -

You will now have a debuggable version of ppp installed. You - will have to be root to run ppp as all of its privileges have - been revoked. When you start ppp, take a careful note of what - your current directory was at the time. - -

Now, if and when ppp receives the segmentation violation, it - will dump a core file called ppp.core. You should then do the - following: - - - $ su - # gdb /usr/sbin/ppp ppp.core - (gdb) bt - ..... - (gdb) f 0 - ..... - (gdb) i args - ..... - (gdb) l - ..... - - -

All of this information should be given alongside your - question, making it possible to diagnose the problem. -

If you're familiar with gdb, you may wish to find out some - other bits and pieces such as what actually caused the dump and - the addresses & values of the relevant variables. - - - - The process that forces a dial in auto mode never connects - - -

This was a known problem with The problem was that when that initial program calls - , the IP number of the tun interface is - assigned to the socket endpoint. The kernel creates the first - outgoing packet and writes it to the tun device. There are several theoretical ways to approach this problem. - It would be nicest if the peer would re-assign the same IP number - if possible The easiest method from our side would be to never change the - tun interface IP number, but instead to change all outgoing packets - so that the source IP number is changed from the interface IP to - the negotiated IP on the fly. This is essentially what the - - and ppp's Another alternative (and probably the most reliable) would be - to implement a system call that changes all bound sockets from one - IP to another. Yet another possibility is to allow an interface to be brought - up without an IP number. Outgoing packets would be given - an IP number of 255.255.255.255 up until the first SIOCAIFADDR - ioctl is done. This would result in fully binding the socket. It - would be up to - Why don't most games work with the -alias switch - -

The reason games and the like don't work when libalias is - in use is that the machine on the outside will try to open a - connection or send (unsolicited) UDP packets to the machine - on the inside. The packet alias software doesn't know that - it should send these packets to the interior machine. - -

To make things work, make sure that the only thing running - is the software that you're having problems with, then either - run tcpdump on the tun interface of the gateway or enable ppp - tcp/ip logging (``set log +tcp/ip'') on the gateway. - -

When you start the offending software, you should see packets - passing through the gateway machine. When something comes back - from the outside, it'll be dropped (that's the problem). Note - the port number of these packets then shut down the offending - software. Do this a few times to see if the port numbers are - consistent. If they are, then the following line in the relevant - section of /etc/ppp/ppp.conf will make the software functional: - - - alias port proto internalmachine:port port - - -

where ``proto'' is either ``tcp'' or ``udp'', - ``internalmachine'' is the machine that you want the packets - to be sent to and ``port'' is the destination port number of - the packets. - -

You won't be able to use the software on other machines - without changing the above command, and running the software - on two internal machines at the same time is out of the question - - after all, the outside world is seeing your entire internal - network as being just a single machine. - -

If the port numbers aren't consistent, there are three more - options: - -

1) Submit support in libalias. Examples of ``special - cases'' can be found in /usr/src/lib/libalias/alias_*.c (alias_ftp.c - is a good prototype). This usually involves reading certain - recognised outgoing packets, identifying the instruction that - tells the outside machine to initiate a connection back to the - internal machine on a specific (random) port and setting up a - ``route'' in the alias table so that the subsequent packets - know where to go. - -

This is the most difficult solution, but it is the best and - will make the software work with multiple machines. - -

2) Use a proxy. The application may support socks5 - for example, or (as in the ``cvsup'' case) may have a ``passive'' - option that avoids ever requesting that the peer open connections - back to the local machine. - -

3) Redirect everything to the internal machine using - ``alias addr''. This is the sledge-hammer approach. - - - Has anybody made a list of useful port numbers ? - -

Not yet, but this is intended to grow into such a list (if - any interest is shown). In each example, internal should - be replaced with the IP number of the machine playing the game. - - - Quake -

alias port udp internal:6112 6112 -

Alternatively, you may want to take a look at - for Quake proxy support. - - - - Quake 2 -

alias port udp internal:27901 27910 - - - - Red Alert -

alias port udp internal:8675 8675 -

alias port udp internal:5009 5009 - - - - Half Life -

alias port udp internal:27005 27015 - - - - PCAnywhere 8.0 -

alias port udp internal:5632 5632 -

alias port tcp internal:5631 5631 - - - - What are FCS errors ? - -

FCS stands for show hdlc command. - -

If your link is bad (or if your serial driver is dropping - packets), you will see the occasional FCS error. This is not - usually worth worrying about although it does slow down the - compression protocols substantially. If you have an external - modem, make sure your cable is properly shielded from - interference - this may eradicate the problem. - -

If your link freezes as soon as you've connected and you see - a large number of FCS errors, this may be because your link is - not 8 bit clean. Make sure your modem is not using software - flow control (XON/XOFF). If your datalink must use - software flow control, use the command - set accmap 0x000a0000 to tell ppp to escape - the ^Q and ^S characters. - -

Another reason for seeing too many FCS errors may be that - the remote end has stopped talking close lcp command (a following term command - will reconnect you to the shell on the remote machine. - -

If nothing in your log file indicates why the link might - have been terminated, you should ask the remote administrator - (your ISP?) why the session was terminated. - - - None of this helps - I'm desperate ! - -

If all else fails, send as much information as you can, - including your config files, how you're starting command (before and after connecting) to the - mailing list or the - news group, and someone - should point you in the right direction. - - - I can't create a /dev/ed0 device! - -

In the Berkeley networking framework, network interfaces are only - directly accessible by kernel code. Please see the - /etc/rc.network file and the manual pages for the various - network programs mentioned there for more information. If this - leaves you totally confused, then you should pick up a book - describing network administration on another BSD-related - operating system; with few significant exceptions, administering - networking on FreeBSD is basically the same as on SunOS 4.0 or - Ultrix. - - - How can I setup Ethernet aliases? - -

Add `` - command-line like the following: - - - ifconfig ed0 alias 204.141.95.2 netmask 0xffffffff - - - - How do I get my 3C503 to use the other network port? - -

If you want to use the other ports, you'll have to specify an - additional parameter on the - command line. The - default port is ``. - - - I'm having problems with NFS to/from FreeBSD. - -

Certain PC network cards are better than others (to put it - mildly) and can sometimes cause problems with network intensive - applications like NFS. - -

See - for more information on this topic. - - - Why can't I NFS-mount from a Linux box? - -

Some versions of the Linux NFS code only accept mount requests - from a privileged port; try - - - mount -o -P linuxbox:/blah /mnt - - - - Why can't I NFS-mount from a Sun box? - -

Sun workstations running SunOS 4.X only accept mount requests - from a privileged port; try - - - mount -o -P sunbox:/blah /mnt - - - - I'm having problems talking PPP to NeXTStep machines. - -

Try disabling the TCP extensions in by - changing the following variable to NO: - - - tcp_extensions=NO - - -

Xylogic's Annex boxes are also broken in this regard and you must - use the above change to connect thru them. - - - How do I enable IP multicast support? - -

Multicast host operations are fully supported in FreeBSD 2.0 and - later by default. If you want your box to run as a multicast router, - you will need to recompile your kernel with the MROUTING - option and run /etc/rc.conf. - -

MBONE tools are available in their own ports category, mbone. If - you are looking for the conference tools For more information, see the - . - - - Which network cards are based on the DEC PCI chipset? - -

Here is a list compiled by , with some more modern additions: - - - Vendor Model - ---------------------------------------------- - ASUS PCI-L101-TB - Accton ENI1203 - Cogent EM960PCI - Compex ENET32-PCI - D-Link DE-530 - Dayna DP1203, DP2100 - DEC DE435, DE450 - Danpex EN-9400P3 - JCIS Condor JC1260 - Linksys EtherPCI - Mylex LNP101 - SMC EtherPower 10/100 (Model 9332) - SMC EtherPower (Model 8432) - TopWare TE-3500P - Znyx (2.2.x) ZX312, ZX314, ZX342, ZX345, ZX346, ZX348 - (3.x) ZX345Q, ZX346Q, ZX348Q, ZX412Q, ZX414, ZX442, - ZX444, ZX474, ZX478, ZX212, ZX214 (10mbps/hd) - - - - Why do I have to use the FQDN for hosts on my site? - -

You will probably find that the host is actually in a different - domain; for example, if you are in foo.bar.edu and you wish to reach - a host called ``mumble'' in the bar.edu domain, you will have to - refer to it by the fully-qualified domain name, ``mumble.bar.edu'', - instead of just ``mumble''. - -

Traditionally, this was allowed by BSD BIND resolvers. However - the current version of that ships - with FreeBSD no longer provides default abbreviations for non-fully - qualified domain names other than the domain you are in. - So an unqualified host mumble must either be found - as mumble.foo.bar.edu, or it will be searched for - in the root domain. - -

This is different from the previous behavior, where the - search continued across mumble.bar.edu, and - mumble.edu. Have a look at RFC 1535 for why this - was considered bad practice, or even a security hole. - -

As a good workaround, you can place the line - - - search foo.bar.edu bar.edu - - -

instead of the previous - - - domain foo.bar.edu - - -

into your file. However, make sure that the search order - does not go beyond the ``boundary between local and public - administration'', as RFC 1535 calls it. - - - ``Permission denied'' for all networking operations. - -

If you have compiled your kernel with the If you had unintentionally misconfigured your system for - firewalling, you can restore network operability by typing - the following while logged in as root: - - - ipfw add 65534 allow all from any to any - - -

You can also set "firewall_type='open'" in /etc/rc.conf. - -

For further information on configuring a FreeBSD firewall, - see the . - - - How much overhead does IPFW incur? - -

The answer to this depends mostly on your rule set and processor - speed. For most applications dealing with ethernet and small - rule sets, the answer is, negligible. For those of you that need - actual measurements to satisfy your curiosity, read on. - -

The following measurements were made using 2.2.5-STABLE on - a 486-66. IPFW was modified to measure the time spent within - the Two rule sets, each with 1000 rules were tested. The first set - was designed to demonstrate a worst case scenario by repeating the - rule: - - - ipfw add deny tcp from any to any 55555 - - -

This demonstrates worst case by causing most of IPFW's packet - check routine to be executed before finally deciding that the - packet does not match the rule (by virtue of the port number). - Following the 999th iteration of this rule was an allow ip - from any to any. - -

The second set of rules were designed to abort the rule - check quickly: - - - ipfw add deny ip from 1.2.3.4 to 1.2.3.4 - - -

The nonmatching source IP address for the above rule causes - these rules to be skipped very quickly. As before, the 1000th - rule was an allow ip from any to any. - -

The per-packet processing overhead in the former case was - approximately 2.703ms/packet, or roughly 2.7 microseconds per - rule. Thus the theoretical packet processing limit with these - rules is around 370 packets per second. Assuming 10Mbps ethernet - and a ~1500 byte packet size, we would only be able to achieve a - 55.5% bandwidth utilization. - -

For the latter case each packet was processed in - approximately 1.172ms, or roughly 1.2 microseconds per rule. - The theoretical packet processing limit here would be about - 853 packets per second, which could consume 10Mbps ethernet - bandwidth. - -

The excessive number of rules tested and the nature of those - rules do not provide a real-world scenario -- they were used only - to generate the timing information presented here. Here are a - few things to keep in mind when building an efficient rule set: - - - - Place an `established' rule early on to handle the - majority of TCP traffic. Don't put any allow tcp - statements before this rule. - - Place heavily triggered rules earlier in the rule - set than those rarely used (without changing the - permissiveness of the firewall, of course). You can see - which rules are used most often by examining the packet counting - statistics with ipfw -a l. - - - - - How can I redirect service requests from one machine to another? - - -

You can redirect FTP (and other service) request with the 'socket' - package, available in the ports tree in category 'sysutils'. - Simply replace the service's commandline to call socket instead, like so: - - -ftp stream tcp nowait nobody /usr/local/bin/socket socket ftp.foo.com ftp - - -

where 'ftp.foo.com' and 'ftp' are the host and port to redirect to, - respectively. - - - Where can I get a bandwidth management tool? - -

There are two bandwidth management tools available for FreeBSD. - is available for free; Bandwidth Manager from - is - a commercial product. - - - Why do I get ``/dev/bpf0: device not configured"? - -

The Berkeley Packet Filter driver - needs to be enabled before running programs that utilize it. - Add this to your kernel config file and build a new kernel: - - - pseudo-device bpfilter # Berkeley Packet Filter - - -

Secondly, after rebooting you will have to create the device - node. This can be accomplished by a change to the /dev - directory, followed by the execution of: - - - # sh MAKEDEV bpf0 - - -

Please see the for more information - on creating devices. - - - diff --git a/FAQ/preface.sgml b/FAQ/preface.sgml deleted file mode 100644 index 8e893410e0..0000000000 --- a/FAQ/preface.sgml +++ /dev/null @@ -1,625 +0,0 @@ - - - - - Preface - -

Welcome to the FreeBSD 2.X FAQ! - - - What is the purpose of this FAQ? - -

As is usual with Usenet FAQs, this document aims to cover the most - frequently asked questions concerning the FreeBSD operating system - (and of course answer them!). Although originally intended to reduce - bandwidth and avoid the same old questions being asked over and over - again, FAQs have become recognized as valuable information resources. - -

Every effort has been made to make this FAQ as informative as - possible; if you have any suggestions as to how it may be improved, - please feel free to mail them to the . - - - What is FreeBSD? - -

Briefly, FreeBSD 2.X is a UN*X-like operating system based on - U.C. Berkeley's 4.4BSD-lite release for the i386 platform. It is - also based indirectly on William Jolitz's port of U.C. Berkeley's - Net/2 to the i386, known as 386BSD, though very little of the 386BSD - code remains. A fuller description of what FreeBSD is and how - it can work for you may be found on the . - -

FreeBSD is used by companies, Internet Service Providers, researchers, - computer professionals, students and home users all over the world - in their work, education and recreation. See some of them in the - - -

For more detailed information on FreeBSD, please see the - - - - What are the goals of FreeBSD? - -

The goals of the FreeBSD Project are to provide software that may - be used for any purpose and without strings attached. Many of us - have a significant investment in the code (and project) and would - certainly not mind a little financial compensation now and then, - but we're definitely not prepared to insist on it. We believe - that our first and foremost "mission" is to provide code to any - and all comers, and for whatever purpose, so that the code gets - the widest possible use and provides the widest possible benefit. - This is, we believe, one of the most fundamental goals of Free - Software and one that we enthusiastically support. - -

That code in our source tree which falls under the GNU General - Public License (GPL) or GNU Library General Public License (LGPL) - comes with slightly more strings attached, though at least on the - side of enforced access rather than the usual opposite. Due to the - additional complexities that can evolve in the commercial use of - GPL software, we do, however, endeavor to replace such software - with submissions under the more relaxed BSD copyright whenever - possible. - - - Why is it called FreeBSD? - -

- - It may be used free of charge, even by commercial users. - - Full source for the operating system is freely available, and - the minimum possible restrictions have been placed upon its - use, distribution and incorporation into other work (commercial - or non-commercial). - - Anyone who has an improvement and/or bug fix is free to submit - their code and have it added to the source tree (subject to - one or two obvious provisos). - - -

For those of our readers whose first language is not English, it - may be worth pointing out that the word ``free'' is being used in two - ways here, one meaning ``at no cost'', the other meaning ``you can do - whatever you like''. Apart from one or two things you - What is the latest version of FreeBSD? - -

Version is the latest Briefly explained, Releases are only made . While many people stay more up-to-date with the - FreeBSD sources (see the questions on and ) than that, doing so is more of a - commitment, as the sources are a moving target. - - - What is FreeBSD-current? - -

is the - development version of the operating system, which will in due - course become 4.0-RELEASE. As such, it is really only of interest - to developers working on the system and die-hard hobbyists. - See the - in the for - details on running -current. - -

If you are not familiar with the operating system or are not - capable of identifying the difference between a real problem and - a temporary problem, you should not use FreeBSD-current. This - branch sometimes evolves quite quickly and can be un-buildable - for a number of days at a time. People that use FreeBSD-current - are expected to be able to analyze any problems and only report them - if they are deemed to be mistakes rather than ``glitches''. Questions - such as ``make world produces some error about groups'' on the - -current mailing list are sometimes treated with contempt. - -

Every now and again, a release is also made of this -current development - code, CDROM distributions of the occasional snapshot even now being - made available. The goals behind each snapshot release are: - - - To test the latest version of the installation software. - - To give people who would like to run -current but who don't - have the time and/or bandwidth to follow it on a day-to-day - basis an easy way of bootstrapping it onto their systems. - - To preserve a fixed reference point for the code in question, - just in case we break something really badly later. (Although - CVS normally prevents anything horrible like this happening :) - - To ensure that any new features in need of testing have the - greatest possible number of potential testers. - - -

No claims are made that any snapshot can be considered - ``production quality'' for any purpose. For stability - and tested mettle, you will have to stick to full releases. - -

Snapshot releases are directly available from and are generated, - on the average, once a day for both the 4.0-current and 3.0-stable - branches. - - - What is the FreeBSD-stable concept? - -

Back when FreeBSD 2.0.5 was released, we decided to branch FreeBSD - development into two parts. One branch was named , with the - intention that only well-tested bug fixes and small incremental - enhancements would be made to it (for Internet Service Providers - and other commercial enterprises for whom sudden shifts or - experimental features are quite undesirable). The other branch was - , which - essentially has been one unbroken line leading towards 4.0-RELEASE - (and beyond) since 2.0 was released. If a little ASCII art would - help, this is how it looks: - - - 2.0 - | - | - | [2.1-stable] - *BRANCH* 2.0.5 -> 2.1 -> 2.1.5 -> 2.1.6 -> 2.1.7.1 [2.1-stable ends] - | (Mar 1997) - | - | - | [2.2-stable] - *BRANCH* 2.2.1 -> 2.2.2-RELEASE -> 2.2.5 -> 2.2.6 -> 2.2.7 -> 2.2.8 [end] - | (Mar 1997) (Oct 97) (Apr 98) (Jul 98) (Dec 98) - | - | - 3.0-SNAPs (started Q1 1997) - | - | - 3.0.0-RELEASE (Oct 1998) - | - | [3.0-stable] - *BRANCH* 3.1 (Feb 1999) -> 3.2 -> ... future 3.x releases ... - | (May 1999) - | - \|/ - + - [4.0-current continues] - - -

The -current branch is slowly progressing towards 4.0 and beyond, - the previous 2.2-stable branch having just retired with the release - of 2.2.8. 3.0-stable has now replaced it, the next release coming - up with 3.3 in Q3 1999. 4.0-current is now the "current branch", - with the first 4.0 releases appearing in Q1 2000. - - - When are FreeBSD releases made? - -

As a general principle, the FreeBSD core team only release a new - version of FreeBSD when they believe that there are sufficient new - features and/or bug fixes to justify one, and are satisfied that the - changes made have settled down sufficiently to avoid compromising the - stability of the release. Many users regard this caution as one of - the best things about FreeBSD, although it can be a little - frustrating when waiting for all the latest goodies to become - available... - -

Releases are made about every 4 months on average. - -

For people needing (or wanting) a little more excitement, there are - SNAPs released more frequently, particularly during the month or so - leading up to a release. - - - Is FreeBSD only available for PCs ? - -

FreeBSD 3.x currently runs on the as well as the - x86 architecture. Some interest has also been expressed in a - SPARC port, but details on this project are not yet clear. - - If your machine has a different architecture and - you need something right now, we suggest you look at - or - . - - - Who is responsible for FreeBSD? - -

The key decisions concerning the FreeBSD project, such as the - overall direction of the project and who is allowed to add code to - the source tree, are made by a of some 15 people. There is a much larger team of - over 150 who are authorized to make changes directly to the - FreeBSD source tree. - -

However, most non-trivial changes are discussed in advance in the - , and there are no restrictions - on who may take part in the discussion. - - - Where can I get FreeBSD? - -

Every significant release of FreeBSD is available via anonymous ftp - from the : - - - For the current 2.2-stable release, 2.2.8R, see the - directory. - - For the current 3.0-stable release, 3.0-RELEASE, see the - directory. - - releases are made once a day along the - RELENG_2_2 branch (post 2.2.8) as it slowly winds down in - maintenance mode. The RELENG_2_2 branch is currently being carefully - maintained by the legacy support folks and no changes other than - those strictly necessary for security or reliability enhancements - are now made. - - releases are also made once a day along the - RELENG_3 branch (post 3.0-release) as it continues on its way - towards 3.2-RELEASE. - - releases are made once a day for the - branch, these being of service - purely to bleeding-edge testers and developers. - - -

FreeBSD is also available via CDROM, from the following place(s): - -

Walnut Creek CDROM - 4041 Pike Lane, Suite F - Concord, CA 94520 USA - Orders: +1 800 786-9907 - Questions: +1 925 674-0783 - FAX: +1 925 674-0821 - email: - - WWW: - - -

In Australia, you may find it at: - -

Advanced Multimedia Distributors - Factory 1/1 Ovata Drive - Tullamarine, Melbourne - Victoria - Australia - Voice: +61 3 9338 6777 - - CDROM Support BBS - 17 Irvine St - Peppermint Grove WA 6011 - Voice: +61 9 385-3793 - Fax: +61 9 385-2360 - - And in the UK: - - The Public Domain & Shareware Library - Winscombe House, Beacon Rd - Crowborough - Sussex. TN6 1UL - Voice: +44 1892 663-298 - Fax: +44 1892 667-473 - - - - Where do I find info on the FreeBSD mailing lists? - -

You can find full information in the - - - Where do I find the FreeBSD Y2K info? - -

You can find full information in the - - - What FreeBSD news groups are available? - -

You can find full information in the - - - - Are there FreeBSD IRC (Internet Relay Chat) channels? - - -

Yes, most major IRC networks host a FreeBSD chat - channel: - - - Channel #FreeBSD on EFNet is - a FreeBSD forum, but don't go there for tech support - or to try and get folks there to help you avoid the pain of - reading man pages or doing your own research. It is a chat - channel, first and foremost, and topics there are just as likely - to involve sex, sports or nuclear weapons as they are FreeBSD. - You Have Been Warned! - Available at server irc.chat.org. - - Channel #FreeBSD on DALNET - is available at irc.dal.net in the US and - irc.eu.dal.net in Europe. - - Channel #FreeBSD on UNDERNET is - available at us.undernet.org in the US and - eu.undernet.org in Europe. Same provisions as - for EFNET apply - either don't ask questions or learn to - ask amazingly politely if you want help. It's a chat channel, - not a help channel. - - Finally, you can also join #FreeBSD on BSDNET, - a smaller BSD only chat network, at irc.FreeBSD.org. - This network attempts to do more tech support and not be - as anarchistic as EFNET, UNDERNET or DALNET, but it's also - nowhere near as popular as a result. Why not volunteer to - answer FreeBSD questions on BSDNET today? - - -

Each of these channels are distinct and are not connected to - each other. Their chat styles also differ, so you may need to try - each to find one suited to your chat style. As with *all* types - of IRC traffic, if you're easily offended or can't deal with lots - of young people (and more than a few older ones) doing the verbal - equivalent of jello wrestling, don't even bother with it. - - - Books on FreeBSD - -

There is a FreeBSD Documentation Project which you may contact (or - even better, join) on the doc mailing list: - . - This list is for discussion of the FreeBSD documentation. For - actual questions about FreeBSD, there is the questions - mailing list: - . - -

A FreeBSD ``handbook'' is available, and can be found as: - . - Note that this is a work in progress, and so parts may be incomplete. - -

The definitive printed guide on FreeBSD is ``The Complete FreeBSD'', - written by Greg Lehey and published by Walnut Creek CDROM Books. Now - in its second edition, the book contains 1,750 pages of install & - system administration guidance, program setup help, and manual pages. - The book (and current FreeBSD release) can be ordered from - , - , or at your - favorite bookstore. The ISBN is 1-57176-227-2. - -

However, as FreeBSD 2.2.X is based upon Berkeley 4.4BSD-Lite2, most - of the 4.4BSD manuals are applicable to FreeBSD 2.2.X. O'Reilly - and Associates publishes these manuals: - - - 4.4BSD System Manager's Manual - By Computer Systems Research Group, UC Berkeley - 1st Edition June 1994, 804 pages - : 1-56592-080-5 - - 4.4BSD User's Reference Manual - By Computer Systems Research Group, UC Berkeley - 1st Edition June 1994, 905 pages - : 1-56592-075-9 - - 4.4BSD User's Supplementary Documents - By Computer Systems Research Group, UC Berkeley - 1st Edition July 1994, 712 pages - : 1-56592-076-7 - - 4.4BSD Programmer's Reference Manual - By Computer Systems Research Group, UC Berkeley - 1st Edition June 1994, 886 pages - : 1-56592-078-3 - - 4.4BSD Programmer's Supplementary Documents - By Computer Systems Research Group, UC Berkeley - 1st Edition July 1994, 596 pages - : 1-56592-079-1 - - -

A description of these can be found via WWW as: - - . Due to poor sales, however, these - manuals may be hard to get a hold of. - -

For a more in-depth look at the 4.4BSD kernel organization, - you can't go wrong with: - -

McKusick, Marshall Kirk, Keith Bostic, Michael J Karels, - and John Quarterman. - -

The Design and Implementation of the 4.4BSD Operating - System. Reading, Mass. : Addison-Wesley, 1996. - 0-201-54979-4 - -

A good book on system administration is: - -

Evi Nemeth, Garth Snyder, Scott Seebass & Trent R. Hein, - ``Unix System Administration Handbook'', Prentice-Hall, 1995 - : 0-13-151051-7 - -

This book covers the basics, as well as TCP/IP, DNS, NFS, - SLIP/PPP, sendmail, INN/NNTP, printing, etc.. It's expensive - (approx. US$45-$55), but worth it. It also - includes a CDROM with the sources for various tools; most of - these, however, are also on the FreeBSD 2.2.6R CDROM (and the - FreeBSD CDROM often has newer versions). - - - How do I access your Problem Report database? - -

The Problem Report database of all open user change requests - may be queried (or submitted to) by using our web-based PR - - and interfaces. The send-pr(1) command - can also be used to submit problem reports and change requests via - electronic mail. - - - Where can I get ASCII/PostScript versions of the FAQ? - -

The up-to-date FAQ is available from the FreeBSD Web Server or any - mirror as PostScript and plain text (7 bit ASCII and 8-bit Latin1). - -

As PostScript (about 370KB): - - - - -

As ASCII text (about 220KB): - - - - -

As ISO 8859-1 text (about 220KB): - - - - - - Where can I get ASCII/PostScript versions of the Handbook? - -

The up-to-date Handbook is available from the FreeBSD Web Server or any - mirror as PostScript and plain text (7 bit ASCII and 8-bit Latin1). - -

As PostScript (about 1.7MB): - - - - -

As ASCII text (about 1080KB): - - - - -

As ISO 8859-1 text (about 1080KB): - - - - - - The ASCII handbook isn't plain text! - -

True, the ASCII and Latin1 versions of the FAQ and Handbook aren't - strictly plaintext; they contain underlines and overprints that - assume the output is going directly to a dot matrix printer. If you - need to reformat them to be human-readable, run the file through col: - - - $ col -b < inputfile > outputfile - - - - I'd like to become a FreeBSD Web mirror! - -

Certainly! There are multiple ways to mirror the Web pages. - - - Using CVSUP: You can retrieve the formatted files using CVSUP - from cvsup.FreeBSD.org. Add this line to your cvsup file: - - -www release=current hostname=/home base=/usr/local/etc/cvsup -prefix=/usr/local/www/data/www.FreeBSD.org delete old use-rel-suffix - - - - Using rsync: See for information. - Using ftp mirror: You can download the FTP server's copy of - the web site using your favorite ftp mirror tool. Simply start at - ftp://ftp.FreeBSD.org/pub/FreeBSD/FreeBSD-current/www. - - - - I'd like to translate the documentation into Friesian. - -

Well, we can't pay, but we might arrange a free CD or T-shirt and a - Contributor's Handbook entry if you submit a translation of the - documentation. - - - Other sources of information. - -

The following newsgroups contain pertinent discussion for FreeBSD - users: - - - (moderated) - - - - - - -

Web resources: - - - The . - - - -

The FreeBSD handbook also has a fairly complete - - section which is worth reading if you're looking for actual - books to buy. - - - diff --git a/FAQ/serial.sgml b/FAQ/serial.sgml deleted file mode 100644 index 101466e655..0000000000 --- a/FAQ/serial.sgml +++ /dev/null @@ -1,535 +0,0 @@ - - - - - Serial Communications - -

This section answers common questions about serial communications - with FreeBSD. PPP and SLIP are covered in the section. - - - How do I tell if FreeBSD found my serial ports? - -

As the FreeBSD kernel boots, it will probe for the serial ports - in your system for which the kernel was configured. You can - either watch your system closely for the messages it prints or - run the command - - - dmesg | grep sio - - -

after your system's up and running. - -

Here's some example output from the above command: - - - sio0 at 0x3f8-0x3ff irq 4 on isa - sio0: type 16550A - sio1 at 0x2f8-0x2ff irq 3 on isa - sio1: type 16550A - - -

This shows two serial ports. The first is on irq 4, is using - port address The for - more details. - - - How do I tell if FreeBSD found my modem cards? - -

Refer to the answer to the previous question. - - - I just upgraded to 2.0.5 and my - -

Don't worry, they have been merged with the - How do I access the serial ports on FreeBSD? - -

The third serial port, (known as - COM3 in DOS), is on /dev/cuaa2 for dial-out devices, and on - /dev/ttyd2 for dial-in devices. What's the difference - between these two classes of devices? - -

You use /dev/ttydX - in blocking mode, a process will wait for the corresponding - - How do I enable support for a multiport serial card? - -

Again, the section on kernel configuration provides information - about configuring your kernel. For a multiport serial card, - place an line for each serial port on the card in the - kernel configuration file. But place the irq and vector - specifiers on only one of the entries. All of the ports on the - card should share one irq. For consistency, use the last serial - port to specify the irq. Also, specify the The following example is for an AST 4-port serial card on irq 7: - - - options "COM_MULTIPORT" - device sio4 at isa? port 0x2a0 tty flags 0x781 - device sio5 at isa? port 0x2a8 tty flags 0x781 - device sio6 at isa? port 0x2b0 tty flags 0x781 - device sio7 at isa? port 0x2b8 tty flags 0x781 irq 7 vector siointr - - -

The flags indicate that the master port has minor number 7 - ( - Can FreeBSD handle multiport serial cards sharing irqs? - -

Not yet. You'll have to use a different irq for each card. - - - Can I set the default serial parameters for a port? - -

The - stty -a -f /dev/ttyd1 - - -

When you change the settings to this device, the settings are in - effect until the device is closed. When it's reopened, it goes - back to the default set. To make changes to the default set, you - can open and adjust the settings of the ``initial state'' device. - For example, to turn on XON/XOFF flow control by default for ttyd5, do: - - - stty -f /dev/ttyid5 clocal cs8 ixon ixoff - - -

A good place to do this is in /etc/rc.serial. Now, an - application will have these settings by default when it opens - You can also prevent certain settings from being changed by an - application by making adjustments to the ``lock state'' device. - For example, to lock the speed of - stty -f /dev/ttyld5 57600 - - -

Now, an application that opens Naturally, you should make the initial state and lock state - devices writable only by script does - How can I enable dialup logins on my modem? - -

So you want to become an Internet service provider, eh? First, - you'll need one or more modems that can auto-answer. Your modem - will need to assert carrier-detect when it detects a carrier and - not assert it all the time. It will need to hang up the phone - and reset itself when the data terminal ready (RTS/CTS - flow control or no local flow control at all. Finally, it must - use a constant speed between the computer and itself, but (to be - nice to your callers) it should negotiate a speed between itself - and the remote modem. - -

For many Hayes command-set--compatible modems, this command will - make these settings and store them in nonvolatile memory: - - - AT &C1 &D3 &K3 &Q6 S0=1 &W - - -

See the section below for information on how to make these settings - without resorting to an MS-DOS terminal program. - -

Next, make an entry in for the - modem. This file lists all the ports on which the operating system will - await logins. Add a line that looks something like this: - - - ttyd1 "/usr/libexec/getty std.57600" dialup on insecure - - -

This line indicates that the second serial port - (/dev/ttyd1) has a modem connected running at 57600 bps - and no parity (). The terminal type for this port is - ``dialup.'' The port is ``on'' and is ``insecure''---meaning - root logins on the port aren't allowed. For dialin ports like - this one, use the It's common practice to use ``dialup'' as the terminal type. - Many users set up in their .profile or .login files a prompt for - the actual terminal type if the starting type is dialup. The - example shows the port as insecure. To become root on this port, - you have to login as a regular user, then ``'' to - After making modifications to , you - need to send a hangup or process: - - - kill -HUP 1 - - -

This forces the init process to reread . The - init process will then start getty processes on all ``on'' ports. - You can find out if logins are available for your port by typing - - - ps -ax | grep '[t]tyd1' - - -

You should see something like: - - - 747 ?? I 0:00.04 /usr/libexec/getty std.57600 ttyd1 - - - - How can I connect a dumb terminal to my FreeBSD box? - -

If you're using another computer as a terminal into your FreeBSD - system, get a null modem cable to go between the two serial - ports. If you're using an actual terminal, see its accompanying - instructions. - -

Then, modify , like above. For example, if you're hooking up a - WYSE-50 terminal to the fifth serial port, use an entry like this: - - - ttyd4 "/usr/libexec/getty std.38400" wyse50 on secure - - -

This example shows that the port on /dev/ttyd4 has a - wyse50 terminal connected at 38400 bps with no parity - () and - Why can't I run - -

On your system, the programs and are probably - executable only by and group Alternatively, you can let everyone on your system run - # chmod 4511 /usr/bin/cu - # chmod 4511 /usr/bin/tip - - - - My stock Hayes modem isn't supported---what can I do? - -

Actually, the man page for is out of - date. There is a generic Hayes dialer already built in. Just use - `` file. - -

The Hayes driver isn't smart enough to recognize some of the - advanced features of newer modems---messages like (using - Also, the dial timeout for Actually, as shipped /usr/src/usr.bin/tip/tip. Obviously you need the source - distribution to do this. - -

Edit the line `` - - How am I expected to enter these AT commands? - -

Make what's called a `` file. For example, if your modem's hooked - up to the first serial port, /dev/cuaa0, then put in the - following line: - - - cuaa0:dv=/dev/cuaa0:br#19200:pa=none - - -

Use the highest bps rate your modem supports in the br - capability. Then, type and - you'll be connected to your modem. - -

If there is no /dev/cuaa0 on your system, do this: - - - # cd /dev - # ./MAKEDEV cuaa0 - - -

Or use cu as root with the following command: - - - # cu -l``line'' -s``speed'' - - -

with line being the serial port (e.g./dev/cuaa0) - and speed being the speed (e.g.57600). When you are done - entering the AT commands hit ~. to exit. - - - The - -

The for a phone number. But the . Escape it with a backslash: - - - pn=\@ - - - - How can I dial a phone number on the command line? - -

Put what's called a `` file. For example: - - - tip115200|Dial any phone number at 115200 bps:\ - :dv=/dev/cuaa0:br#115200:at=hayes:pa=none:du: - tip57600|Dial any phone number at 57600 bps:\ - :dv=/dev/cuaa0:br#57600:at=hayes:pa=none:du: - - -

Then you can do something like `` over , use a - generic cu entry: - - - cu115200|Use cu to dial any number at 115200bps:\ - :dv=/dev/cuaa1:br#57600:at=hayes:pa=none:du: - - -

and type `` - Do I have to type in the bps rate every time I do that? - -

Put in an entry for thinks a good - default is 1200 bps which is why it looks for a `` - I access a number of hosts through a terminal server. - -

Rather than waiting until you're connected and typing - ``: - - - pain|pain.deep13.com|Forrester's machine:\ - :cm=CONNECT pain\n:tc=deep13: - muffin|muffin.deep13.com|Frank's machine:\ - :cm=CONNECT muffin\n:tc=deep13: - deep13:Gizmonics Institute terminal server:\ - :dv=/dev/cua02:br#38400:at=hayes:du:pa=none:pn=5551234: - - -

will let you type `` - Can tip try more than one line for each site? - -

This is often a problem where a university has several modem lines - and several thousand students trying to use them... - -

Make an entry for your university in - and use \@ for the - big-university:\ - :pn=\@:tc=dialout - dialout:\ - :dv=/dev/cuaa3:br#9600:at=courier:du:pa=none: - - -

Then, list the phone numbers for the university in - : - - - big-university 5551111 - big-university 5551112 - big-university 5551113 - big-university 5551114 - - -

will try each one in the listed order, then give up. If - you want to keep retrying, run - Why do I have to hit CTRL+P twice to send CTRL+P once? - -

CTRL+P is the default ``force'' character, used to tell - - that the next character is literal data. You can set the force - character to any other character with the Type ``You can have the force character be whatever you want by - specifying the following in your $HOME/.tiprc - file: - - - force= - - - - Suddenly everything I type is in UPPER CASE?? - -

You must've pressed CTRL+A, ``raise - character,'' specially designed for people with broken caps-lock keys. - Use Here's a sample .tiprc file perfect for Emacs users who need to - type CTRL+2 and CTRL+A a lot: - - - force=^^ - raisechar=^^ - - -

The ^^ is SHIFT+CTRL+6. - - - How can I do file transfers with - -

If you're talking to another UNIX system, you can send and - receive files with and on the remote system to accept and send files. The syntax - is: - - - ~p [] - ~t [] - - -

There's no error checking, so you probably should use another - protocol, like zmodem. - - - How can I run zmodem with - -

First, install one of the zmodem programs from the ports - collection (such as one of the two from the comms category, - - and ). - -

To receive files, start the sending program on the remote end. - Then, press enter and type ``To send files, start the receiving program on the remote end. - Then, press enter and type `` - FreeBSD can't seem to find my serial ports, even when the - settings are correct. - -

Motherboards and cards with Acer UARTs do not probe properly under - the FreeBSD sio probe. Obtain a patch from - to fix your problem. - - - diff --git a/FAQ/troubleshoot.sgml b/FAQ/troubleshoot.sgml deleted file mode 100644 index 1462489cb9..0000000000 --- a/FAQ/troubleshoot.sgml +++ /dev/null @@ -1,502 +0,0 @@ - - - - - Troubleshooting - - - I have bad blocks on my hard drive! - -

With SCSI drives, the drive should be capable of re-mapping - these automatically. However, many drives are shipped with - this feature disabled, for some mysterious reason... - -

To enable this, you'll need to edit the first device page mode, - which can be done on FreeBSD by giving the command (as root) - - - scsi -f /dev/rsd0c -m 1 -e -P 3 - - -

and changing the values of AWRE and ARRE from 0 to 1:- - - - AWRE (Auto Write Reallocation Enbld): 1 - ARRE (Auto Read Reallocation Enbld): 1 - - -

The following paragraphs were submitted by - : - -

For IDE drives, any bad block is usually a sign of potential trouble. - All modern IDE drives come with internal bad-block remapping turned - on. All IDE hard drive manufacturers today offer extensive - warranties and will replace drives with bad blocks on them. - -

If you still want to attempt to rescue an IDE drive with bad blocks, - you can attempt to download the IDE drive manufacturer's IDE diagnostic - program, and run this against the drive. Sometimes these programs can - be set to force the drive electronics to rescan the drive for bad blocks - and lock them out. - -

For ESDI, RLL and MFM drives, bad blocks are a normal part of the - drive and are no sign of trouble, generally. With a PC, the disk drive - controller card and BIOS handle the task of locking out bad sectors. - This is fine for operating systems like DOS that use BIOS code to - access the disk. However, FreeBSD's disk driver does not go through - BIOS, therefore a mechanism, bad144, exists that replaces this - functionality. bad144 only works with the wd driver, - it is NOT able to be used with SCSI. bad144 works by entering all bad - sectors found into a special file. - -

One caveat with bad144 - the bad block special file is placed on the - last track of the disk. As this file may possibly contain a listing for - a bad sector that would occur near the beginning of the disk, where the - /kernel file might be located, it therefore must be accessible to the - bootstrap program that uses BIOS calls to read the kernel file. This - means that the disk with bad144 used on it must not exceed 1024 - cylinders, 16 heads, and 63 sectors. This places an effective limit - of 500MB on a disk that is mapped with bad144. - -

To use bad144, simply set the "Bad Block" scanning to ON in the - FreeBSD fdisk screen during the initial install. This works up through - FreeBSD 2.2.7. The disk must have less than 1024 cylinders. It is - generally recommended that the disk drive has been in operation for at - least 4 hours prior to this to allow for thermal expansion and track - wandering. - -

If the disk has more than 1024 cylinders (such as a large ESDI drive) - the ESDI controller uses a special translation mode to make it work - under DOS. The wd driver understands about these translation modes, - IF you enter the "translated" geometry with the "set geometry" command - in fdisk. You must also NOT use the "dangerously dedicated" mode of - creating the FreeBSD partition, as this ignores the geometry. Also, - even though fdisk will use your overridden geometry, it still knows the - true size of the disk, and will attempt to create a too large FreeBSD - partition. If the disk geometry is changed to the translated geometry, - the partition MUST be manually created with the number of blocks. - -

A quick trick to use is to set up the large ESDI disk with the ESDI - controller, boot it with a DOS disk and format it with a DOS partition. - Then, boot the FreeBSD install and in the fdisk screen, read off and - write down the blocksize and block numbers for the DOS partition. Then, - reset the geometry to the same that DOS uses, delete the DOS partition, - and create a "cooperative" FreeBSD partition using the blocksize you - recorded earlier. Then, set the partition bootable and turn on bad - block scanning. During the actual install, bad144 will run first, - before any filesystems are created. (you can view this with an Alt-F2) - If it has any trouble creating the badsector file, you have set too - large a disk geometry - reboot the system and start all over again - (including repartitioning and reformatting with DOS). - -

If remapping is enabled and you are seeing bad blocks, consider - replacing the drive. The bad blocks will only get worse as time goes on. - - - FreeBSD does not recognize my Bustek 742a EISA SCSI! - -

This info is specific to the 742a but may also cover other - Buslogic cards. (Bustek = Buslogic) - -

There are 2 general ``versions'' of the 742a card. They are - hardware revisions A-G, and revisions H - onwards. The revision - letter is located after the Assembly number on the edge of the - card. The 742a has 2 ROM chips on it, one is the BIOS chip and - the other is the Firmware chip. FreeBSD doesn't care what - version of BIOS chip you have but it does care about what version - of firmware chip. Buslogic will send upgrade ROMS out if you - call their tech support dept. The BIOS and Firmware chips are - shipped as a matched pair. You must have the most current - Firmware ROM in your adapter card for your hardware revision. - -

The REV A-G cards can only accept BIOS/Firmware sets up to - 2.41/2.21. The REV H- up cards can accept the most current - BIOS/Firmware sets of 4.70/3.37. The difference between the - firmware sets is that the 3.37 firmware supports ``round robin'' - -

The Buslogic cards also have a serial number on them. If you - have a old hardware revision card you can call the Buslogic RMA - department and give them the serial number and attempt to - exchange the card for a newer hardware revision. If the card is - young enough they will do so. - -

FreeBSD 2.1 only supports Firmware revisions 2.21 onward. If you - have a Firmware revision older than this your card will not be - recognized as a Buslogic card. It may be recognized as an - Adaptec 1540, however. The early Buslogic firmware contains an - AHA1540 ``emulation'' mode. This is not a good thing for an EISA - card, however. - -

If you have an old hardware revision card and you obtain the 2.21 - firmware for it, you will need to check the position of jumper W1 - to B-C, the default is A-B. - -

The 742a EISA cards never had the ``>16MB'' problem mentioned in - the section . This is a - problem that occurs with the Vesa-Local Buslogic SCSI cards. - - - - My HP Netserver's SCSI controller is not detected! - - -

This is basically a known problem. The EISA on-board SCSI controller - in the HP Netserver machines occupies EISA slot number 11, so all - the ``true'' EISA slots are in front of it. Alas, the address space - for EISA slots >= 10 collides with the address space assigned to PCI, - and FreeBSD's auto-configuration currently cannot handle this - situation very well. - -

So now, the best you can do is to pretend there is no address - range clash :), by bumping the kernel option . - -

Of course, this does present you with a chicken-and-egg problem when - installing on such a machine. In order to work around this - problem, a special hack is available inside UserConfig. - Do not use the ``visual'' interface, but the plain command-line - interface there. Simply type - - - eisa 12 - quit - - -

at the prompt, and install your system as usual. While it's - recommended you compile and install a custom kernel anyway, - - - now also understands to save this value. - -

Hopefully, future versions will have a proper fix for this problem. - -

for - more info. - - - What's up with this CMD640 IDE controller? - -

It's broken. It cannot handle commands on both channels - simultaneously. - -

There's a workaround available now and it is enabled automatically - if your system uses this chip. For the details refer to the - manual page of the disk driver (man 4 wd). - -

If you're already running FreeBSD 2.2.1 or 2.2.2 with a - CMD640 IDE controller and you want to use the second channel, - build a new kernel with - I keep seeing messages like `` - -

This is usually caused by an interrupt conflict (e.g., two boards - using the same IRQ). FreeBSD prior to 2.0.5R used to be tolerant - of this, and the network driver would still function in the - presence of IRQ conflicts. However, with 2.0.5R and later, IRQ - conflicts are no longer tolerated. Boot with the -c option and - change the ed0/de0/... entry to match your board. - -

If you're using the BNC connector on your network card, you may - also see device timeouts because of bad termination. To check this, - attach a terminator directly to the NIC (with no cable) and see if - the error messages go away. - -

Some NE2000 compatible cards will give this error if there is - no link on the UTP port or if the cable is disconnected. - - - When I mount a CDROM, I get ``Incorrect super block''. - -

You have to tell - - the type of the device that you want to mount. By default, - - will assume the filesystem is of type ``. This does, of course, assume that the - CDROM contains an ISO 9660 filesystem, which is what most CDROMs - have. As of 1.1R, FreeBSD automatically understands the Rock Ridge - (long filename) extensions as well. - -

As an example, if you want to mount the CDROM device, - ``/dev/cd0c'', under /mnt, you would execute: - - - mount -t cd9660 /dev/cd0c /mnt - - -

Note that your device name (``/dev/cd0c'' in this - example) could be different, depending on the CDROM interface. - Note that the `` - mount_cd9660 /dev/cd0c /mnt - - - - When I mount a CDROM, I get ``Device not configured''. - -

This generally means that there is no CDROM in the CDROM drive, - or the drive is not visible on the bus. Feed the drive - something, and/or check its master/slave status if it is - IDE (ATAPI). It can take a couple of seconds for a CDROM drive - to notice that it's been fed, so be patient. - -

Sometimes a SCSI CD-ROM may be missed because it hadn't enough time - to answer the bus reset. If you have a SCSI CD-ROM please try to - add the following symbol into your kernel configuration file - and recompile. - - - options "SCSI_DELAY=15" - - - - My printer is ridiculously slow. What can I do ? - -

If it's parallel, and the only problem is that it's terribly - slow, try setting your printer port into ``polled'' mode: - - - lptcontrol -p - - -

Some newer HP printers are claimed not to work correctly in - interrupt mode, apparently due to some (not yet exactly - understood) timing problem. - - - My programs occasionally die with ``Signal 11'' errors. - -

This can be caused by bad hardware (memory, motherboard, etc.). - Try running a memory-testing program on your PC. Note that, even - though every memory testing program you try will report your - memory as being fine, it's possible for slightly marginal memory - to pass all memory tests, yet fail under operating conditions - (such as during bus mastering DMA from a SCSI controller like the - Adaptec 1542, when you're beating on memory by compiling a kernel, - or just when the system's running particularly hot). - -

The SIG11 FAQ (listed below) points up slow memory as being the - most common problem. Increase the number of wait states in your - BIOS setup, or get faster memory. - -

For me the guilty party has been bad cache RAM or a bad on-board - cache controller. Try disabling the on-board (secondary) cache in - the BIOS setup and see if that solves the problem. - -

There's an extensive FAQ on this at - - - - When I boot, the screen goes black and loses sync! - -

This is a known problem with the ATI Mach 64 video card. - The problem is that this card uses address - driver it will touch this port even if you don't have the - fourth serial port, and Until the bug has been fixed, you can use this workaround: - - - Enter Disable no problems. - - Type exit to continue booting. - - -

If you want to be able to use your serial ports, - you'll have to build a new kernel with the following - modification: in /usr/src/sys/i386/isa/sio.c find the - one occurrence of the string Even after applying these workarounds, you may still find that - X Window does not work properly. Some newer ATI Mach 64 video - cards (notably ATI Mach Xpression) do not run with the current - version of - and following the links to the new beta release. Get the - following files: - -

AccelCards, BetaReport, Cards, Devices, FILES, README.ati, - README.FreeBSD, README.Mach64, RELNOTES, VGADriver.Doc, - X312BMa64.tgz - -

Replace the older files with the new versions and make sure you - run again. - - - - I have 128 MB of RAM but the system only uses 64 MB. - - -

Due to the manner in which FreeBSD gets the memory size from the - BIOS, it can only detect 16 bits worth of Kbytes in size (65535 - Kbytes = 64MB) (or less... some BIOSes peg the memory size to 16M). - If you have more than 64MB, FreeBSD will attempt to detect it; - however, the attempt may fail. - -

To work around this problem, you need to use the - kernel option specified below. There is a way to get complete - memory information from the BIOS, but we don't have room in the - bootblocks to do it. Someday when lack of room in the bootblocks - is fixed, we'll use the extended BIOS functions to get the full - memory information...but for now we're stuck with the kernel - option. - - - options "MAXMEM=<n>" - - -

Where - FreeBSD 2.0 panics with ``kmem_map too small!'' - -

The panic indicates that the system ran out of virtual memory for - network buffers (specifically, mbuf clusters). You can increase - the amount of VM available for mbuf clusters by adding: - -

options "NMBCLUSTERS=<n>" - -

to your kernel config file, where <n> is a number in the - range 512-4096, depending on the number of concurrent TCP - connections you need to support. I'd recommend trying 2048 - this - should get rid of the panic completely. You can monitor the - number of mbuf clusters allocated/in use on the system with - . The default value for NMBCLUSTERS is - - ``CMAP busy panic'' when rebooting with a new kernel. - -

The logic that attempts to detect an out of date - /var/db/kvm_*.db files sometimes fails and using a - mismatched file can sometimes lead to panics. - -

If this happens, reboot single-user and do: - - - rm /var/db/kvm_*.db - - - - ahc0: brkadrint, Illegal Host Access at seqaddr 0x0 - -

This is a conflict with an Ultrastor SCSI Host Adapter. - -

During the boot process enter the kernel configuration menu and - disable , which is causing the problem. - - - Sendmail says ``mail loops back to myself'' - -

This is answered in the sendmail FAQ as follows:- - - - * I'm getting "Local configuration error" messages, such as: - - 553 relay.domain.net config error: mail loops back to myself - 554 ... Local configuration error - - How can I solve this problem? - - You have asked mail to the domain (e.g., domain.net) to be - forwarded to a specific host (in this case, relay.domain.net) - by using an MX record, but the relay machine doesn't recognize - itself as domain.net. Add domain.net to /etc/sendmail.cw - (if you are using FEATURE(use_cw_file)) or add "Cw domain.net" - to /etc/sendmail.cf. - - -

The current version of the is no longer maintained with the sendmail - release. It is however regularly posted to - , - , - , - , and - . - You can also receive a copy via email by sending a message to - with the command "send - usenet/news.answers/mail/sendmail-faq" as the body of the - message. - - - Full screen applications on remote machines misbehave! - -

The remote machine may be setting your terminal type - to something other than the cons25 terminal type used - by the FreeBSD console. -

There are a number of work-arounds for this problem: - - After logging on to the remote machine, set your TERM shell - variable to either ansi or sco. - Use a VT100 emulator like - locally. screen offers you the ability to run - multiple concurrent sessions from one terminal, and is a neat - program in its own right. - Install the cons25 terminal database entry on - the remote machine. - Fire up X and login to the remote machine from an - xterm. - - - - My machine prints "calcru: negative time..." -

This can be caused by various hardware and/or software ailments - relating to interrupts. It may be due to bugs but can also happen - by nature of certain devices. Running TCP/IP over the parallel - port using a large MTU is one good way to provoke this problem. - Graphics accelleratorscan also get you here, in which case you - should check the interrupt setting of the card first. - -

A side effect of this problem are dying processes with the - message "SIGXCPU exceeded cpu time limit". - -

For FreeBSD 3.0 and later from Nov 29, 1998 forward: If the - problem cannot be fixed otherwise the solution is to set - this sysctl variable: - - sysctl -w kern.timecounter.method=1 - -

This means a performance impact, but considering the cause of - this problem, you probably will not notice. If the problem - persists, keep the sysctl set to one and set the "NTIMECOUNTER" - option in your kernel to increasingly large values. If by the - time you have reached "NTIMECOUNTER=20" the problem isn't - solved, interrupts are too hosed on your machine for reliable - timekeeping. - - diff --git a/FAQ/x.sgml b/FAQ/x.sgml deleted file mode 100644 index b3ae0050b5..0000000000 --- a/FAQ/x.sgml +++ /dev/null @@ -1,458 +0,0 @@ - - - - - The X Window System and Virtual Consoles - - - I want to run X, how do I go about it? - -

The easiest way is to simply specify that you want to run X - during the installation process. - -

Then read and follow the documentation on the tool, which assists you in configuring XFree86(tm) - for your particular graphics card/mouse/etc. - -

You may also wish to investigate the Xaccel server. - See the section on or - for more details. - - - Why doesn't my mouse work with X - -

If you are using syscons (the default console driver), you can - configure FreeBSD to support a mouse pointer on each virtual - screen. In order to avoid conflicting with X, syscons supports - a virtual device called ``/dev/sysmouse''. All mouse events - received from the real mouse device are written to the sysmouse - device, using the MouseSystems protocol. If you wish to use your - mouse on one or more virtual consoles, - /etc/rc.conf: - moused_type=ps/2 # or whatever your actual type is - moused_port=/dev/psm0 # or whatever your real port is - moused_flags= - - /etc/XF86Config - Section Pointer - Protocol "MouseSystems" - Device "/dev/sysmouse" - ..... - - -

Some people prefer to use ``/dev/mouse'' under X. To - make this work, ``/dev/mouse'' should be linked to - : - - - # cd /dev - # rm -f mouse - # ln -s sysmouse mouse - - - - X Window menus and dialog boxes don't work right! - -

Try turning off the Num Lock key. - -

If your Num Lock key is on by default at boot-time, you may add - the following line in the `` - # Let the server do the NumLock processing. This should only be - # required when using pre-R6 clients - ServerNumLock - - - - What is a virtual console and how do I make more? - -

Virtual consoles, put simply, enable you to have several - simultaneous sessions on the same machine without doing anything - complicated like setting up a network or running X. - -

When the system starts, it will display a login prompt on - the monitor after displaying all the boot messages. You can - then type in your login name and password and start working (or - playing!) on the first virtual console. - -

At some point, you will probably wish to start another - session, perhaps to look at documentation for a program - you are running or to read your mail while waiting for an - FTP transfer to finish. Just do Alt-F2 (hold down the Alt - key and press the F2 key), and you will find a login prompt - waiting for you on the second ``virtual console''! When you - want to go back to the original session, do Alt-F1. - -

The default FreeBSD installation has three virtual consoles - enabled, and Alt-F1, Alt-F2, and Alt-F3 will switch between - these virtual consoles. - - To enable more of them, edit - and add entries for `` - # Edit the existing entry for ttyv3 in /etc/ttys and change - # "off" to "on". - ttyv3 "/usr/libexec/getty Pc" cons25 on secure - ttyv4 "/usr/libexec/getty Pc" cons25 on secure - ttyv5 "/usr/libexec/getty Pc" cons25 on secure - ttyv6 "/usr/libexec/getty Pc" cons25 on secure - ttyv7 "/usr/libexec/getty Pc" cons25 on secure - ttyv8 "/usr/libexec/getty Pc" cons25 on secure - ttyv9 "/usr/libexec/getty Pc" cons25 on secure - ttyva "/usr/libexec/getty Pc" cons25 on secure - ttyvb "/usr/libexec/getty Pc" cons25 on secure - - -

Use as many or as few as you want. The more virtual terminals - you have, the more resources that are used; this can be important - if you have 8MB RAM or less. You may also want to change the - ``The easiest way to disable a console is by turning it off. For - example, if you had the full 12 terminal allocation mentioned - above and you wanted to run X, you would change settings for - virtual terminal 12 from: - - - ttyvb "/usr/libexec/getty Pc" cons25 on secure - - -

to: - - - ttyvb "/usr/libexec/getty Pc" cons25 off secure - - -

If your keyboard has only ten function keys, you would end up with: - - - ttyv9 "/usr/libexec/getty Pc" cons25 off secure - ttyva "/usr/libexec/getty Pc" cons25 off secure - ttyvb "/usr/libexec/getty Pc" cons25 off secure - - -

(You could also just delete these lines.) - -

Once you have edited , - the next step is to make sure that you have enough virtual terminal - devices. The easiest way to do this is: - - - # cd /dev - # ./MAKEDEV vty12 # For 12 devices - - -

Next, the easiest (and cleanest) way to activate the virtual - consoles is to reboot. However, if you really don't want to - reboot, you can just shut down the X Window system and execute (as - - kill -HUP 1 - - -

It's imperative that you completely shut down X Window if it is - running, before running this command. If you don't, your system - will probably appear to hang/lock up after executing the kill - command. - - - How do I access the virtual consoles from X? - -

If the console is currently displaying X Window, you can use - Ctrl-Alt-F1, etc. to switch to a virtual console. Note, however, - that once you've switched away from X Window to a virtual - terminal, you may use only the Alt- function key to switch to another - virtual terminal or back to X Window. You do not need to also press the - Ctrl key. If you use the control key to switch back to X on some - older releases, you can find your text console stuck in ``control-lock'' - mode. Tap the control key to wake it up again. - - - How do I start XDM on boot? - -

There are two schools of thought on how to start . One school starts xdm from - using the supplied example, while the other - simply runs xdm from or - from a /usr/local/etc/rc.d. - Both are equally valid, and one may work in - situations where the other doesn't. In both cases the result is the - same: X will popup a graphical login: prompt. - -

The ttys method has the advantage - of documenting which vty X will start on and passing the responsibility - of restarting the X server on logout to init. The rc.local method - makes it easy to kill xdm if there is a problem starting the X server. - -

If loaded from rc.local, A previous version of the FAQ said to add the - /usr/X11R6/lib/X11/xdm/Xservers file. This is not necessary: - X will use the first free - When I run xconsole, I get ``Couldn't open console''. - -

If you start with , the permissions on /dev/console will and not working. - -

This is because of the way console permissions are set by default. - On a multi-user system, one doesn't necessarily want just any user - to be able to write on the system console. For users who are logging - directly onto a machine with a VTY, the - - file exists to solve such problems. - -

In a nutshell, make sure an uncommented line of the form - - - /dev/ttyv0 0600 /dev/console - - -

is in and it will ensure that whomever logs in on - /dev/ttyv0 will own the console. - - - My PS/2 mouse doesn't behave properly under X. - -

Your mouse and the mouse driver may have somewhat become out of - synchronization. - -

In versions 2.2.5 and earlier, switching away from X to a - virtual terminal and getting back to X again may make them - re-synchronized. If the problem occurs often, you may add the - following option in your kernel configuration file and recompile it. - - - options PSM_CHECKSYNC - - -

See the section on - if you've no experience with building kernels. - -

With this option, there should be less chance of synchronization - problem between the mouse and the driver. If, however, you - still see the problem, click any mouse button while holding - the mouse still to re-synchronize the mouse and the driver. - -

Note that unfortunately this option may not work with all the - systems and voids the ``tap'' feature of the ALPS GlidePoint - device attached to the PS/2 mouse port. - -

In versions 2.2.6 and later, synchronization check is done - in a slightly better way and is standard in the PS/2 mouse driver. - It should even work with GlidePoint. (As the check code has become - a standard feature, PSM_CHECKSYNC option is not available in these - versions.) However, in rare case the driver may erroneously report - synchronization problem and you may see the kernel message: - - - psmintr: out of sync (xxxx != yyyy) - - - and find your mouse doesn't seem to work properly. - -

If this happens, disable the synchronization check code by - setting the driver flags for the PS/2 mouse driver to 0x100. - Enter UserConfig by giving the ``-c'' option - at the boot prompt: - - - boot: -c - - - Then, in the UserConfig command line, type: - - - UserConfig> flags psm0 0x100 - UserConfig> quit - - - - My PS/2 mouse from MouseSystems doesn't seem to work. - -

There have been some reports that certain model of PS/2 mouse - from MouseSystems works only if it is put into the ``high resolution'' - mode. Otherwise, the mouse cursor may jump to the upper-left - corner of the screen every so often. - -

Unfortunately there is no workaround for versions 2.0.X and - 2.1.X. In versions 2.2 through 2.2.5, apply the following patch - to /sys/i386/isa/psm.c and rebuild the kernel. See the - section on - if you've no experience with building kernels. - - -diff -u psm.c.orig psm.c -@@ -766,6 +766,8 @@ - if (verbose >= 2) - log(LOG_DEBUG, "psm%d: SET_DEFAULTS return code:%04x\n", - unit, i); -+ set_mouse_resolution(sc->kbdc, PSMD_RES_HIGH); -+ - #if 0 - set_mouse_scaling(sc->kbdc); /* 1:1 scaling */ - set_mouse_mode(sc->kbdc); /* stream mode */ - - -

In versions 2.2.6 or later, specify the flags 0x04 to the PS/2 - mouse driver to put the mouse into the high resolution mode. - Enter UserConfig by giving the ``-c'' option - at the boot prompt: - - - boot: -c - - - Then, in the UserConfig command line, type: - - - UserConfig> flags psm0 0x04 - UserConfig> quit - - -

See the previous section for another possible cause of mouse - problems. - - - When building an X app, - -

Imake.tmpl is part of the Imake package, a standard X application building tool. - Imake.tmpl, as well as several header files that are required to build X apps, - is contained in the X prog distribution. You can install this from sysinstall or - manually from the X distribution files.

- -
- - - How do I reverse the mouse buttons? - - -

Run the command - - - - How do I install a splash screen and where do I find them? - - -

Just prior to the release of FreeBSD 3.1, a new feature was - added to allow the display of "splash" screens during - the boot messages. The splash screens currently must be a 256 - color bitmap (*.BMP) or ZSoft PCX - (*.PCX) file. In addition, they must have a - resolution of 320x200 or less to work on standard VGA adapters. - If you compile VESA support into your kernel, then you can use - larger bitmaps up to 1024x768. Note that VESA support requires - the VM86 kernel option to be compiled into the - kernel. The actual VESA support can either be compiled directly - into the kernel with the VESA kernel config option - or by loading the VESA kld module during bootup.

- -

To use a splash screen, you need to modify the startup files - that control the boot process for FreeBSD. The files for this - changed prior to the release of FreeBSD 3.2, so there are now - two ways of loading a splash screen: - - - FreeBSD 3.1 - -

The first step is to find a bitmap version of your splash - screen. Release 3.1 only supports Windows bitmap splash - screens. Once you've found your splash screen of choice - copy it to /boot/splash.bmp. Next, you need to - have a /boot/loader.rc file that contains the - following lines: - - - load kernel - load -t splash_image_data /boot/splash.bmp - load splash_bmp - autoboot - - - - FreeBSD 3.2+ - -

In addition to adding support for PCX splash screens, - FreeBSD 3.2 includes a nicer way of configuring the boot - process. If you wish, you can use the method listed above - for FreeBSD 3.1. If you do and you want to use PCX, replace - splash_bmp with splash_pcx. If, - on the other hand, you want to use the newer boot - configuration, you need to create a - /boot/loader.rc file that contains the - following lines: - - - include /boot/loader.4th - start - - -

and a /boot/loader.conf that contains the - following: - - - splash_bmp_load="YES" - bitmap_load="YES" - - -

This assumes you are using /boot/splash.bmp - for your splash screen. If you'd rather use a PCX file, - copy it to /boot/splash.pcx, create a - /boot/loader.rc as instructed above, and - create a /boot/loader.conf that contains: - - - splash_pcx_load="YES" - bitmap_load="YES" - bitmap_name="/boot/splash.pcx" - - - - -

Now all you need is a splash screen. For that you can surf - on over to the gallery at .

- -
- -