Slackware 13.37 lilo, grub and my poor MBR


Results 1 to 5 of 5

Thread: Slackware 13.37 lilo, grub and my poor MBR

  1. #1
    Join Date
    May 2012
    Posts
    3

    Slackware 13.37 lilo, grub and my poor MBR

    I'm lost
    I've installed slackware at least 10 times now. Every time lilo comes up with a new problem and oh how random they are.
    This time for example, I just restarted my computer from windows, doing nothing but browsing since boot-up. Then when I restart it says: "Lilo - keytable read/checksum error" right after bios.

    How can I fix this or get rid of lilo all together?

    I tried reinstalling slackware together with lilo, but that didn't change a thing.

    I tried installing grub2 (20 of 25 passes failed) then grub 1, but that didn't work either.

    I'm not sure what kind of information you need to help me, so please let me know.

    Thanks in advance.

  2. #2
    Join Date
    May 2012
    Posts
    3
    I tried
    Code:
    /sbin/lilo
    just now and it returned with:

    Warning: LBA32 addressing assumed
    Warning: Unable to determine video adapter in use in the present system.
    Warning: The boot sector and map file are on different disks.
    Warning: Video adapter does not support VESA BIOS extensions needed for display of 256 colors. Boot loader will fall back to TEXT only operation.
    Added Windows *
    Added Linux
    4 warnings were issued.

    upon restart the error remained.

    This gives me some more insight, but how to resolve this is still a puzzle to me...

  3. #3
    Join Date
    May 2012
    Posts
    3
    Man, what an adventure!

    Screw all those errors. I know lilo is installed on either the superblock, mbr or floppy.
    And I should be able to get into the operating systems without a bootloader, it's just easier using one.

    So, since lilo overwrites the windows 7 MBR. I had to default it back.

    -------------

    Procedure to reset win 7 MBR for any windows 7 installation:
    (http://support.microsoft.com/kb/927392)
    boot from win 7 rescue CD
    check automatically for repairs first, then use the command prompt and type the following:

    Code:
    Bootrec.exe
    bcdedit /export C:\BCD_Backup
    c:
    cd boot
    attrib bcd -s -h -r
    ren c:\boot\bcd bcd.old
    bootrec /RebuildBcd
    
    Bootrec.exe
    bootrec /FixMbr
    The MBR is now cleared and upon restart I got into windows 7, from which I'm writing this now,
    ready to screw with my MBR again.

    I still don't know how the superblock operates, but it seems not so important at the moment as everything is working.

  4. #4
    Join Date
    Jun 2004
    Location
    Newcastle upon Tyne
    Posts
    2,961
    Win7 has a boot loader "bootmgr" residing in its superblock, or the first 512 bytes of the residing partition. Putting it in the MBR is let it to control the booting.

    MBR is the first 512 bytes of a "hard disk" and physically separated from any partition. If you like it is a common area usable by any operating system. Every partition starts from a cylinder in Linux but sda1 (or sdb1 or sdc1 etc) starts from the first cylinder less the first track (reserved for MBR which only uses the first sector) because of the MBR.

    Here is part print of fdisk -l with "u" & "p" option to show the partition table in sector
    Code:
    root@saikee-desktop:/home/saikee# fdisk /dev/sda
    
    WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
             switch off the mode (command 'c') and change display units to
             sectors (command 'u').
    
    Command (m for help): u
    Changing display/entry units to sectors
    
    Command (m for help): p
    
    Disk /dev/sda: 2000.4 GB, 2000398934016 bytes
    255 heads, 63 sectors/track, 243201 cylinders, total 3907029168 sectors
    Units = sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x73696d20
    
       Device Boot      Start         End      Blocks   Id  System
    /dev/sda1   *          63   112471064    56235501    c  W95 FAT32 (LBA)
    /dev/sda2       112471065   337413194   112471065   1c  Hidden W95 FAT32 (LBA)
    /dev/sda3       337413195  2930272064  1296429435    5  Extended
    /dev/sda4      2930272065  3907024064   488376000   83  Linux
    /dev/sda5       337413258   340642259     1614501   82  Linux swap / Solaris
    /dev/sda6       340642323   453113324    56235501    7  HPFS/NTFS
    /dev/sda7       453113388   565584389    56235501    7  HPFS/NTFS
    /dev/sda8       565584453   678055454    56235501    7  HPFS/NTFS
    /dev/sda9       678055518   790526519    56235501    7  HPFS/NTFS
    /dev/sda10      790526583   902997584    56235501    7  HPFS/NTFS
    /dev/sda11      902997648   959241149    28121751   83  Linux
    /dev/sda12      959241213  1015484714    28121751   83  Linux
    /dev/sda13     1015484778  1071728279    28121751   83  Linux
    /dev/sda14     1071728343  1127971844    28121751   83  Linux
    The above shows my sda1 does not have the 62 sectors and this is the same in every hard disk using the MSDOS partition table.


    You Linux would have Lilo in the superblock too and the command I use is
    Code:
    lilo -b /dev/sda
    if I want it control the MBR of the hard disk sda. For partition sda3 I just add "3" to the last command for Lilo replicating itself into the superblock of sda3 partition. A boot loader can reside in both MBR and the superblock of its own partition. More accurately the one in the MBR is hard coded with the hard disk address of the the boot loader address in the residing partition because the MBR is not big enough to hold a boot loader.

    Every system must be booted by a boot loader. If the one in MBR is Lilo or Grub then it can boot all Linux systems "directly". But as a rule all operating system can be boot "indirectly" too which is exactly how Lilo boot a MS Windows. However Lilo can boot another Lilo or Grub "indirectly" by the boot loader in the MBR by just handing over the control to whichever superblock you speciify.

    Therefore you can have Lilo, bootmgr (Win7), Grub1 or Grub2 to control the MBR as long as you have bootmgr in Win7 partition and Lilo/Grub in you Linux.

    At the end of the day it boils down how much work in arranging it. The easiest is using Grub1.

    Let us know your preference before more advice can be given. If you like you can try all 4. Post the root terminal output here of
    Code:
    fdisk -l
    so that we know where your systems are. If you can boot up the Linux use a Live CD in the mean time and let us know what distro you are using.
    Last edited by saikee; 05-04-2012 at 07:10 AM.
    Linux user started Jun 2004 - No. 361921
    Using a Linux live CD to clone XP
    To install Linux and keep Windows MBR untouched
    Adding extra Linux & Doing it in a lazy way
    A Grub menu booting 100+ systems & A "Howto" to install and boot 145 systems
    Just cloning tips Just booting tips A collection of booting tips

    Judge asked Linux "You are being charged murdering Windoze by stabbing its heart with a weapon, what was it?" Replied Linux "A Live CD"

  5. #5
    Join Date
    Jul 2002
    Location
    Vladivostok, Russia
    Posts
    9,053
    Just keeping an eye on things.
    "I was pulled over for speeding today. The officer said, "Don't you know
    the speed limit is 55 miles an hour?" And I said, "Yes, but I wasn't going
    to be out that long."

    How To Ask Questions The Smart Way
    COME VISIT ME IN RUSSIA NOW!!

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •