file: README.common.problems date: 04-Oct-2000 revised: 03-Jan-2001, 07-Jan-2001, 04-Apr-2001, 25-May-2001 Caution: All of the LILO components are installed in the proper ================================================================ default directories ONLY if you use "make install". =================================================== Problem: LILO won't 'make' ========================== If you get errors trying to 'make all', and the errors are occurring during the assembly of 'temp2.s', you have encountered the most common problem trying to build LILO: the lines in error all have the assembler directive 'near' on them. This problem occurs when your assembler for the real-mode bootstrap code is out-of-date: 'as86'. Certain current distributions of Linux distribute version 4 of this assembler; whereas the current version is 15. Two sources for an updated version are: Redhat RPM distribution: site: http://www.redhat.com (search for 'dev86') pkg: dev86-0.15.0-2.i386.rpm or Robert de Bath's page at: site: http://www.cix.co.uk/~mayday link: bin86-0.15.1.tar.gz Problem: When I boot, all I get is 'LI' ======================================= This means the first-stage loader gained control; it thought it success- fully loaded the second-stage loader; but it never got there. This most often occurs when the second-stage loader, '/boot/boot.b', is not load- able using the BIOS. First, have you tried specifying 'lba32' in your 'lilo.conf' file? On newer systems, this will almost always work, since the loader will now use the newer EDD packet calls, which are not cylinder-limited. Second, do you know your disk geometry? This means, do you know the numbers of cylinders/heads/sectors of all your hard drives; and are these the numbers that LILO is using when it installs the boot loader. Three reports of the disk geometry may be obtained: 1. Run 'lilo -t -v5' and check the geometry reports for each device. 2. Run 'lilo -Tgeom' and see if the same numbers are reported. (This may fail on some systems, where LILO has trouble running BIOS calls in v86 mode.) 3. Create the diagnostic floppy (see README.disk) and check the reported disk geometries. If any of the geometry reports differ, then you may have to specify the disk geometry to LILO using 'disk= heads= sectors='. Use the actual numbers reported by the BIOS: #3 above, or #2. The reports above will also indicate the BIOS device codes used by each disk. LILO uses heuristics to obtain these device codes, and usually gets the codes right on all-IDE or all-SCSI systems. However, systems with multiple IDE controllers, mixed IDE/SCSI systems, and SCSI systems on Future Domain controllers, will require you to tell LILO what disks are assigned to what device codes. This can be done using 'disk= bios=' lines in 'lilo.conf'. John Coffman (end)