Troubleshooting Tips - or "These are the times that try men's souls" -------------------------------------------------------------------- The following tips and tricks may help you turn a failing (or failed) installation attempt into a success. Please read them carefully. --- Summary: Hardware conflict or misconfiguration. Problem: A device is conflicting with another or doesn't match the kernel's compiled-in IRQ or address. Cause: While most device drivers in FreeBSD are now smart enough to match themselves to your hardware settings dynamically, there are a few that still require fairly rigid configuration parameters to be compiled in (and matched by the hardware) before they'll work. We're working hard to eliminate as many of these last hold-outs as we can, but it's not always as easy as it looks. Solution: There are several possible solutions. The first, and easiest, is to boot the kernel with the -c flag. When you see the initial boot prompt (from floppy or hard disk), type: /kernel -c This will boot just past the memory sizing code and then drop into a dynamic kernel configuration utility. Type `?' at the prompt to see a list of commands. You can use this utility to reset the IRQ, memory address, IO address or a number of other device configuration parameters. You can also disable a device entirely if it's causing problems for other devices you'd much rather have work. Note that this only affects the kernel being booted temporarily, it does not "write out" the information to the kernel so that these settings are permanantly altered (this would be actually rather hard). If you reboot, you'll have to make the same changes again. The goal of the -c utility is to get you up far enough to be able to download the appropriate sources and configure and rebuild a kernel more specific to your needs. Another solution is, obviously, to remove the offending hardware or simply strip the system down to the bare essentials until the problem (hopefully) goes away. Once you're up, you can do the same thing mentioned above - compile a kernel more suited to your hardware, or incrementally try to figure out what it was about your original hardware configuration that didn't work. --- Summary: Newfs crashes, requesting that blocksize be 32K Cause: You have your SCSI controller configured to translate geometries for disks >1GB in size. Solution: Turn such translation OFF in your controller's BIOS setup! FreeBSD has no problems with disks >1GB just so long as the root partition starts and ends BELOW cylinder 1024. This is a PC hardware limitation. --- Summary: FreeBSD won't boot off the hard disk Cause: Root partition does not start and end below cylinder 1024. Solution: See solution for newfs crashes, or move your root partition. This limitation holds true for ANY operating system you wish to boot from your hard drive. --- Summary: FreeBSD still won't boot off the hard disk Cause: No boot code is installed in sector 1. Solution: Chose the Write MBR (B)oot code in the FDISK editor. --- Summary: Nope, FreeBSD's still not booting from the hard disk. Cause: BIOS disk geometry different from that used when installing FreeBSD. Solution: With IDE drives, pay careful attention to the geometry information that FreeBSD prints out when it's first booting off the floppy. Use this geometry in your BIOS setup or use the BIOS geometry when you install FreeBSD. Either way, they have to match. With SCSI drives, the values they report is most often bogus and cannot be used. In this situation, the SCSI controller is performing geometry translation and it's probably wise to assume a default of 64 heads, 32 sectors and 1MB/cylinder. Use these values when you install FreeBSD. See above comments concerning newfs failures for more info.