Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations Chriss Miller on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Loadlin Not Working?

Status
Not open for further replies.

Peahippo

MIS
Jul 18, 2003
91
US

Help! I'm simply unable to boot a newly-built Linux on my Compaq Presario 7232 system (Pentium I, 120Mhz, 48MB RAM).

My 1.6GB hard drive partitions currently look like this in physical order:

HDA3 Compaq Setup/Diagnostics (4MB) [<1%]
HDA1 [Boot Partition] Windows 95 A (FAT16) (128MB) [8%]
HDA2 Linux Swap (128MB) [8%]
HDA4 Linux ext3 (1370MB) [84%]


(My CDROM is HDC. I wish I knew why Linux assigns names in such skipping order.)

I had inherited the machine with these partitions:

non-Dos 4MB
NTFS 1624MB


... which apparently had NT 3.x on it or something. I booted with a Win98 floppy and used fdisk to kill the NTFS partition (large-disk enabled, blah blah). I wanted to keep the Compaq setup area ... I just needed to create a small FAT16 partition after it for Win95 to live in. After some careful reading, I created the 128MB Primary DOS partition (that later became HDA1), set it Active, and formatted it as FAT16. The system booted fine. I installed the CDROM driver and the CDROM appeared OK. I installed Windows 95 &quot;A&quot; version from CD. I trimmed Win95 down to ~70MB and pronounced the system OK for use.

After some more reading, I grabbed my official Slackware 9.0 Linux (using kernel 2.4.20) -- having paid $50 directly to Slackware Linux, Inc. with a big smile on my face -- and decided to take the route of running sbootmgr.dsk (using Rawrite, etc.) to get the CDROM to boot. That worked, and I ended up with my prompt:

Code:
root@slackware:/#

... running off the CD.

I ran cfdisk and made HDA2 a Linux Swap (type 82?) partition 128MB, and then HDA4 as Linux (type 83?). After some more reading, I ran mke2fs -j to format HDA4 as ext3. Cfdisk confirmed this. I then went on to run setup and a whole bunch of Slackware installed itself in HDA4. (That took a while.) It confirmed that my /etc/fstab had all the HDAx entries I gave above. I also told it to mount HDA1 as /win9x.

ALL THAT SEEMED FINE ... but I can't seem to get Loadlin to boot Linux. (I've been booting into the system's Win95 to get this running.) I looked on the Slackware CD #1 and found the kernel for bare.i ... filename &quot;bzImage&quot;. I copied that to C:\. I have Loadlin 1.6, so it should be able to load the ~1.1MB kernel image. I've tried many methods of booting the image, from the Win95 GUI, from bootup Config.Sys/Autoexec.Bat menu selections, and finally from just this entry in Config.Sys:

Code:
SHELL=C:\UTIL\LOADLIN.EXE c:\bzImage root=/dev/hda4 ro vga=0

... but no matter what I try, I get the following, same halt condition when it tries to boot Linux from /dev/hda4:

Code:
&quot;Uncompressing Linux...
ran out of input data
 -- System halted&quot;

PLEASE HELP ME! I don't want to use Lilo since Loadlin should be working and I'm happy with how my MBR is now. (I plan on adding another 3GB hard drive eventually, to prune and transplant HDA4's directory tree so I can get something like DATA on one drive and PROGRAMS on the other.)
 
Update: Googling for linux 'ran out of input data' yielded some interesting results. The Loadlin program is not understanding the real size of the compressed kernel image ... in this case, bzImage.

Surfing a bit more, I landed on Hans Lerman's (sp?) site for Loadlin. The latest version is 1.6c, which purportedly loads kernel images over 1MB. It might be that my ~1.1MB compressed kernel is too large for 1.6 to understand, no matter how I try to invoke it. If it's too large, then Loadlin runs up to the 1MB limit, hence it runs out of data.

I'll try 1.6C and see what happens. Also, one user on a site advised changing from
Code:
loadlin
to a utility called
Code:
linld
, which worked for him ... so other than Lilo I still have a Loadlin-like option.
 
I'm not a fan of LOADLIN, but I'll give it a shot.

If I can recall, using both Windows 95 and Linux together requires you switch off an option in the C:\MSDOS.SYS file. Make sure hidden files are visible, and edit the C:\MSDOS.SYS file (as it is hidden). Make the following ammendments:

BootGUI=0
Logo=0

This will switch the graphics off, and will hopefully fix the problem.

If that still isn't working, try this:

shell=c:\UTIL\LOADLIN.EXE c:\bzImage -d c:\debug.txt root=/dev/hda4 ro vga=0

This will write the debug information into a file c:\debug.txt so you can diagnose the error.

If you still can't get it to work, I have a couple of other things up my sleeve, so post back.
 
Roger wilco. I also googled &quot;loadlin options&quot; and about the 6th link down found this:


... which is chock-full o' goodies. Hexadecimal sizes of image files and buffers, man ... it's just wonderful. I'll do some troubleshooting tonight.
 
W00t! I surfed awhile and got
Code:
loadlin 1.6c
off of Lermer's site. That did the trick ... it seems the ~1.1MB kernel is too large for all earlier versions of
Code:
loadlin
. It finally loaded my Linux from /dev/hda4.

The weird thing now is ... after all those boot messages, I get this &quot;
Code:
darkstar login:
&quot;, I don't recall setting any of that up ... &quot;root&quot; with no password doesn't work. It's Slackware 9.0; you wouldn't happen to know what I should do next, eh? I'll try googling for whatever that is tonight.
 
darkstar is the default host-name in Slackware. During the install you should have set up the root password. When you remember it log on and type:

adduser

This will set up your user info (login & password).

Then I would install the nvidia GLX & kernel drivers (if you have a nvidia chipset video card). After that, edit your /etc/X11/xf86config and make sure the mouse port is set to /dev/psaux (as slackware will default to /dev/mouse and you will not be able to get the mouse wheel to work).

If you haven't properly configured your devices, then run the command:

xf86config

and set up all your periphials and devices again.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top