LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Newbie (https://www.linuxquestions.org/questions/linux-newbie-8/)
-   -   Boot loader won't work. Dual Win98SE/Mandrake 9.2 (https://www.linuxquestions.org/questions/linux-newbie-8/boot-loader-wont-work-dual-win98se-mandrake-9-2-a-176851/)

ingenius008 05-01-2004 10:36 PM

Boot loader won't work. Dual Win98SE/Mandrake 9.2
 
Hi. I'm a complete newbie to Linux. I've successfully downloaded, burned, and installed Mandrake 9.2, but I can't get it to boot. Let it be known that I have never ever used the Linux command prompt. I am a programmer as a hobby, using varied BASIC languages, and am very Windows knowledgeable, but I can't get Linux to work for the life of me.

I am trying to have a dual-boot system with Win98SE and Mandrake Linux 9.2. I've attempted using GRUB, and LILO, and when asked where to install the boot loader during the Mandrake installer, I've chosen both GRUB, and LILO on separate occasions. I have no idea how to install a boot loader, aside from running the installer again, or using the "rescue" utility. I've just been letting the boot loader configure itself according to the installer. Reinstalling Linux is not a problem, and I have all of my files backed up on a separate hard drive. I have a 120GB hard drive, and when asked to partition the disk during the Linux install, I gave Windows the first half (60GB) and Linux the remaining half (60GB), and then let Linux have it's way with that amount, automatically making SWAP space, root, and home.

After I install the boot loader, and reboot, using LILO, all I get is an L on the screen, then the computer hangs. Likewise for GRUB, except it says GRUB instead of L. I've used both the graphical, and the text versions of LILO. I attempted making a boot disk during the Mandrake installation, but it had an error of some kind, although it could've been a fluke, so I could try that again. I have attempted to install the boot loader on the MBR, as well as on a floppy. After having this happen, and not being able to boot anything, I restored the original Windows MBR, using the Mandrake "rescue" utility. I've tried to reinstall the boot loader from there, but to no avail.

Once Windows loads back up, it shows no sign that Linux was ever installed on the hard drive, in that there is not any indication of partitioning. It just shows my hard drive's full capacity in drive C:, but when I go back into the Linux install, it shows all the partitions as I made them. It shows all the partitions in the Western Digital, Data Lifeguard utility as well, although when running "fdisk /status", it only shows one partition.

So, to summarize, my boot loader won't work, and Windows doesn't notice the existence of Linux partitions. Any thoughts or inspirations would be great. Thanks.

mbegovic 05-02-2004 12:41 AM

Windows actually wouldn't notice your Linux partitions. It should show C: as a 60GB drive in your case.

The default Mandrake partitioning is fine, btw. As for your bootloader troubles: I don't know what to tell you. I've never had any problem with just letting the installer install the default Lilo-graphic. Since you can't get it to work, the way to go would be to start it up with a LiveCD or something and fix the bootloader. However, that would take so much time to download, you could try re-installing Mandrake ten times in the meantime. Since you have a 120GB hard drive, I'm assuming you have a decent hardware setup, and it's not a memory issue (because Mandrake does have a problem booting on less than 128-256MB of RAM in my experience).

Anyway, my suggestion is try installing again, and see what happens.

kris_ericson82 05-02-2004 01:41 AM

I have had this problem from time to time, and usually it happens when I recompile my kernel - meaning that you might have a hadrware conflict/incompatibility issue. You might also try installing the LILO file in something other the the MBR (it's been awhile since i've installed, but i'm sure there is an option for something else, maybe the first sector of the hard drive or something like that...).
What version of Mandrake are you running? What kind of machine? Did you try reisntalling the MBR using the "lilo" command?
Watch out for Windows, it is a MBR hog! Definitely not designed with consumer choice in mind. You should check out www.microsuck.org or maybe its .com but its prety cool and informative

itismike 05-02-2004 02:25 AM

Hi Genius. :)

Win98 will not recognize the Linux partitions, but other versions will...to a certain extent. It's not like they play nicely or anything, because they don't. I've had Drake 9.2 on with Win2000 and it worked well. I'm confident that it will work well with Win98 also, but here's some specific tricks.

1) always install Windows first. It can play mean sometimes, and could damage unrecognized partitions.

2) in my experience, dual booting win98 and Linux can work fine, even installing the boot loader over the windows MBR, and it's easily recovered using 'fdisk /mbr', but I've run into enough problems recently that I won't install a second boot loader on my hard disks again. Use a boot floppy instead. This is not the same as a bootable floppy...it's just the code necessary to kick the BIOS into the boot code for Linux on your second partition.

3) be sure the second partition containing the boot folder is below the 1024 MB boundary. Some motherboards can't recognize a bigger disk without help from the OS.

Similar threads are also in process, so skim through them and see if anything catches your eye. here's an example...others are at the bottom of this page on the lower left.

Good luck!
-Mike

motub 05-02-2004 07:02 AM

What I would suggest is that you get the Explore2fs file manager, and use it to look at the files on the Linux partition while booted into Windows. What we'd like is that you use that to view the /etc/lilo.conf file (or /boot/grub/grub.conf or /boot/grub/menu.lst, if you're currently using GRUB), and post the contents here.

You could also try booting from Mandrake CD1, and using the rescue functions to boot your currently installed Mandrake. This is obviously not a permanent solution, but we are in fact rescuing the system, so.... once you're booted into Mandrake, we can try to fix the configuration files directly.

Once we have the bootloader configuration file fixed, we can try again to (re)install it.

Alternatively, you could:

1: transfer the Linux bootloader to a floppy, or make a boot disk. Instructions for how to do both can be found in the Mandrake 9.2 Errata, as the inability to use DrakFloppy to make a boot floppy is a known problem.

2. transfer the Linux boot sector to the Windows partition so that you only need use the Windows bootloader to boot Linux as well as Windows. Not sure how to do this as all the instructions I've seen are for the NT bootloader, not the 9x bootloader, but here's the relevant section of the HOW-TO anyway (read the "Next" page as well), it looks like it should be adaptible to 9x.

3. Install a third-party Windows bootloader to boot both Windows and Linux. I used BootMagic, as it came installed with Partition Magic and it worked well, but there are others available, and some are even free.

4. Install GRUB to a floppy and use that to boot both OSes. Here is a HOW-TO, and here's another.

5. Use Loadlin to boot both OSes. A HOW-TO can be found here.

And just for completeness:

LILO mini-HOWTO.

The Linux Bootdisk HOWTO.

Hope this helps.

ingenius008 05-02-2004 10:57 AM

Still having problems...
 
OK. I still can't get into linux. I think it has something to do with the whole 1024MB thing, or maybe the RAM. I'll try to make this post a little more organized.

-Windows is showing C: to have the capacity of the whole 120GB drive. It is not showing 60GB. I've tried using Explore2fs, but it doesn't show anything. I don't really care if Windows can't see Linux, as long as it doesn't overwrite it's files.

-As for my computer performance, it's garbage. Pentium II processor, 98MB RAM, and somewhere in the range of 256MHz. The size of my hard drive is grossly disproportionate to my system overall.

-I've installed (or am trying to install) the i586 edition of the Mandrake Linux 9.2 operating system.

-What exactly do you mean by the boot folder having to be under 1024MB? Do you mean the root partition? How would I go about achieving a "boot folder" that's under 1024MB?

-I've now, to date, tried LILO, GRUB, and also xOSl, but each of them hang on boot-up. All I can get out of xOSl is a splash screen on boot-up. Also, there is no boot option on the Mandrake install CD in "rescue" mode. I tried to make boot disks, but "/sbin/mkrescue" doesn't exist.

-As I've said, I've got no problem reinstalling my system, so I think I'm going to try that again, but what exactly are LiveCDs, and where can I get them?

So, my two problems remain, Windows may end up writing over my Linux partitions, and each boot loader I've tried hangs at startup. I think it's not the programs themselves, but that 1024MB thing, or possibly the issue brought up about RAM.

I'm floundering here. Thanks for the information you've given me, and thanks in advance for future posts.

itismike 05-02-2004 04:39 PM

You're on the right track, Genius. If you've still got the patients to reinstall both systems (and working with the performance of the system you have, you've already demonstrated that you have LOTS of patients!) Here's what I'd do:

using fdisk on a Win98 boot floppy, remove all partitions, then create a primary partition smaller than 1024 MB for your Windows OS. Install Win98 on that formatted partition.

Make sure that windows cannot see the whole disk! If it can, than something is wrong. Windows should say that it is only as big as the partition that you've created for it.

Now install drake 9.2 in the next partition (you can use fdisk to define the partition and then let Drake auto-allocate the sizes).

(this part I haven't done in a while, so I'm not 100% sure I've got it right...use your judgement.) When asked, install the boot info in the /boot folder of drake, and install your boot loader (LILO or Grub) on a floppy. If you're still having trouble creating that floppy, don't worry about it...you could use any generic boot disk to get to your Linux partition (like 'Ultimate Boot Disk'- google it).

As referenced above, I've had problems installing boot loaders on my windows partitions, but that was specifically with win2000. I might try installing grub or LILO on a win98 partition for convenience...depends how brave I'm feeling.

good luck,
-Mike

motub 05-02-2004 05:33 PM

A Live CD is a Linux distribution that runs entirely from a CD-ROM and not from the HDD (although you can install many of them to your HDD if you so choose). They offer the opportunity to learn to use Linux without endangering your Windows partitions in any way (since they are not installed), and are also useful as rescue disks (in fact, the first major Live CD distro, Knoppix, was intended as a system rescue disk) since you can boot into them, mount your damaged installed partitions, and repair them using the Live distros tools.

The most well known Live CDs are Knoppix, Mepis, MandrakeMove, and Slax. You can find out more about them (as well as download links) at www.distrowatch.com.

Not quite sure why you were unable to use the Mandrake rescue functions. According to Mandrake:
Quote:

The Mandrake Linux Rescue System

Mandrake Linux comes with a rescue system on the first CD (list of contents), introduced in release 7.1. In case your CD-R drive isn't bootable, boot from a boot floppy (images are in the '/images' directory of the first CD).
To start this rescue system, press the <F1> key and type rescue on the prompt at the bottom of the screen. Press the <ENTER> key. The rescue system will now boot from the CD, loading itself into system memory (at least 32 MB RAM needed).

Upon booting, the rescue system will automatically try to mount any available Linux hard disk partitions, which can then be accessed via the '/mnt' directory.
The rescue needs only system memory to work, which means you can remove the CD after boot (e.g. to use the drive to mount another CD).

The software contained in the rescue system allows you to

* delete, move, copy, (un)archive, (de)compress and create files, directories and symlinks to files;
* display, edit and create text files (including hex files);
* check and repair every file system available with Mandrake Linux;
* create, delete, resize (ext2 only) and repair partitions, partition tables and boot sectors;
* mount any kind of medium;
* establish an Ethernet network connection and telnet or ftp into another machine;
* install RPM packages;
* load and unload kernel modules and
* do all that with a keyboard map and console font of your choice.

You see there's hardly an accident you can't fix with this system, provided you know how these tools work. And there's the catch: the rescue system does not contain any form of documentation, apart from the '--help' option which just displays an overview on the command's syntax, if at all.
You are not supposed to learn the options of these programs by heart, instead get a good and short command reference, like Hekman's 'Linux in a Nutshell' or Petron's 'Essential Reference'. If you can't spare the money, print out the man pages to the most important commands. There's also an online man page repository with a search interface.
But I'm more concerned about this hard drive-- if three different bootloaders do not work, that can't be an accident.

Is there something odd about the drive (is it SATA, is it connected to a controller card, is it connected to a RAID connector on the mobo)? Did you format it with the drive overlay diskette included with the drive? Something is definitely fishy.

kris_ericson82 05-02-2004 06:26 PM

My memory has been jogged, and I recall that I had trouble booting Linux (it would hang at LIL) because the kernel was too big... You might booting linux using the CD (type 'rescue' at the prompt) and recompiling your kernel. There is a HOWTO on this located at http://www.linux.org/docs/ldp/howto/Kernel-HOWTO/ - it has been removed for review but there are several links that you can click on from that page to get instruction.

ingenius008 05-02-2004 07:05 PM

:-/ Still plugging away...
 
I think I'm going to go with itismike's idea, and just format the whole thing. I only have one question about that. Is it possible to have a partition for Windows that's more than just 1GB using your method? For example, is it possible to have a partition specifically for booting, and then a large Windows partition after it? (Then of course followed by the Linux partitions.) Here's a possible plan:

On the other hand, I think I may have another solution. Perhaps if I set a Linux "/boot" partition to have under 1GB, and set it as bootable. Could I then install the boot loader in there, and set the Windows drive to non-bootable? Just a thought. :study:

And as for my hard drive, and the "fishiness" of three different boot loaders not working, I think it's just the motherboard coping with my inhumanely large hard drive. I have it hooked up just like any other more reasonably-sized drive. No extra cards, or anything. I honestly think that it's just the mother board not being able to use a boot thing bigger than 1024MB, not the drive itself.

Arrrrg... This is frustrating. :scratch: ...but I yet again say, thanks a lot everybody who's helped my so far.

itismike 05-02-2004 07:35 PM

I'm curious what you mean by making the windows drive non-bootable. Isn't that the goal for any Linux newbie? :) Just kidding of course.

No, Windows must be the first OS on your disk. I did some searches about the 1024 boundery (I think that's cyl 1024...I really don't know!) and the info isn't too easy to find. For older mobo's like yours, I think it's still an issue.
Sorry I can't be more helpful.

arvind_sv 05-02-2004 09:37 PM

Hi,

I probably cannot add too much more to this thread. But, I'm going to try anyway.

When LILO stops at "L", it means that there is a geometry mismatch (meaning, the BIOS does not believe that the disk is as big as what LILO tells it). The fist stage boot loader has been loaded and executed, but the second stage could not.

As far as I know, LILO has a first stage boot sector which loads the remaining parts of LILO from various locations.

So, the L says that the first stage (which is probably in the MBR) has been executed. But, it tries to access the linux partitions (which start after 60GB). But, if it's an old BIOS (as it seems to be), then, most of them don't support drives bigger than 32GB. So, when trying to access a partition at 60GB, the BIOS might interrupt telling the program that it cannot do that (as it believes the drive to be 32GB). If this is the case, then, if you take off the Linux stuff from lilo.conf and leave the Windows stuff, and rerun lilo, then, you should be able to boot into Windows (as it's the first partition).

Now, solutions. I'm just shooting in the dark here. But, there are a few things you can try.

1. Check BIOS
Go the the BIOS and see if it recognizes the drive as 120GB. There should be an automatic harddisk detection or something which should tell you what the BIOS recognizes the drive as. [If it recognizes it as 32GB, tell us.]

2. lba32
You can try putting the line "lba32" in lilo.conf and run /sbin/lilo again. The line should contain only "lba32" and should appear near the top of the file (that is, not inside any of the OS specific stuff).

3. GRUB
GRUB uses a different way of addressing the partitions and can support bigger drives. Use it, instead of LILO.

4. /boot
Last resort:
As yours seems to be an old BIOS, create a /boot as the first partition (/dev/hda1) and then create your 60GB partitions. Now, give the first 60GB to windows and the next to Linux.

In the thread, everyone seems to be talking about a 1024 MB /boot partition. It's not a 1024MB partition. It's due to the inablity of some (old) BIOSes to access beyond 1024 cylinders per disk [They believed that the first 1024 cylinders were enough for any boot loader, ever, I suppose]. So, if you create a small /boot partition at the beginning of the drive, there's a good chance that it's in the 1024 cylinder limit.

Tell us what happened,
Arvind

motub 05-03-2004 03:32 AM

arvind_sv, imo you added a lot to the thread. That sounds pretty much spot-on to me at identifying the most likely issue and offering likely solutions.

The only two things I would add are:

1) If the BIOS does not recognize the correct disk size, head immediately to the mobo manufacturer's site and see if there is a BIOS update which might enable this (it's been a while, not sure if this can be done with a BIOS update, but it certainly can't hurt);

2) Make sure that the BIOS is using LBA to access the drive. You can check this in the first screen, which is called something like "Basic BIOS features" and is where the time/date and floppy are set, and basic information about the hard drives and optical drives that have been detected can be found and adjusted.

After you did the automatic detection that arvind_sv suggested, the drives found will appear in this list-- the 120GB drive should have "LBA" in the final column. If it does not, you can select the drive and adjust this if LBA is available to your motherboard's BIOS. If you're unfamiliar with this, you should have received a small booklet/foldout with the HDD that tells you how to set the size of the drive manually in the BIOS if it is incorrectly recognized. Failing that, the information is usually to be found on the hard drive manufacturer's site.

Oh, and the Linux /boot partition need never be more than some 50MB, arvind_sv is right about the difference between the 1024th cylinder issue as well. It's unrelated to a size of 1024MB. But the boot sector should normally be below that limit anyway, since (afaik) the MBR is at the beginning of the drive.

Hope this helps.


All times are GMT -5. The time now is 11:14 PM.