SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Alright, here is the issue. I have a tablet PC with no CD/DVD drive, incapable of booting from USB. It can boot from 2 things: it's internal CF card (that acts as it's main hard drive) and a usb-floppy. Now, carrying around a USB floppy is cumbersome, so since the BIOS cannot read a CF card larger than 256mb, I am trying to install Lilo on the CF card, which in turn points to the USB drive to boot.
LILO version 22.8, Copyright (C) 1992-1998 Werner Almesberger
Development beyond version 21 Copyright (C) 1999-2006 John Coffman
Released 19-Feb-2007 and compiled at 12:43:17 on Nov 29 2008.
Warning: Ignoring entry 'boot'
Reading boot sector from /dev/sda
Warning: /dev/sda is not on the first disk
Using MENU secondary loader
Calling map_insert_data
Warning: The boot sector and map file are on different disks.
Boot image: /boot/vmlinuz -> vmlinuz-huge-smp-2.6.27.7-smp
Added Linux *
Writing boot sector.
/boot/boot.0800 exists - no boot sector backup copy made.
3 warnings were issued.
Thus, when trying to boot the tablet, I see:
Code:
L 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9....
My usb drive contains almost a full install of Slackware, deselected series: E, F, K, KDE, KDEI, and Y. It is a 4 gigabyte drive. (has nothing to do with boot problem, I know.)
Any ideas as to how to get this working?
*remember: the CF card has an internal dock. Any installed system reads it as being /dev/hda
Okay, I was able to install extlinux to the CF card, and the kernel boots. However, the kernel panics trying to find root.
Here is my extlinux.conf:
Code:
LABEL linux
DEFAULT linux
KERNEL vmlinuz
APPEND boot=/dev/sda root=/dev/sda1
When it tries to boot, it tries to give a list of available partitions and they are only the /dev/hda on the CF card. The USB drive is plugged in, and from my previous installs, I know for a fact that slackware reads the drive as /dev/sda. When is the drive mounted?
Here is exactly what it prints out:
Code:
VFS: Cannot open root device "sda1" or unknown-block(0,0)
Please append a correct "root=" boot option; here are the available partitions:
0300 125184 hda driver: ide-disk
0301 125085 hda1
Kernel panic - not syncing: VFS: Unable ot mount root fs on unknown-block (0,0)
Any ideas? Since the BIOS doesn't support USB booting, I'm trying to make a go-around, but so far I'm not doing so well.
In order to boot a usb stick slax install on a pc that won't boot from a usb stick, one may create a bootable cd that will boot the pc, then turn it over to the usb stick. Perhaps if you had a look at the iso you could make some headway:
Well, I'll look at it, but remember: I have no CD or DVD drive.
Ah...I realize that; I was thinking that since the iso accomplishes what you're trying to accomplish, perhaps there's something in filesystem that indicates how...like the initrd.gz
All right. I copied the contents of the iso (i.e. mount -o loop file.iso mountpoint/ , cp -R mountpoint /path/to/usb). Set up dos filesystem on partition for syslinux (before copying contents obviously), installed syslinux on the partition, and cat'd the mbr.bin file to /dev/sda.
Now, I get the error as soon as I start up:
Quote:
Multiple active partitions.
No operating system found.
Not sure if the CD's boot config is set to look for any ram filesystems, which is confusing it because it is on one or not. I have no idea.
Any clues? I'll keep messing around with it so see if I can get it to work till I have another suggestion.
Apparently the "/dev/ram0" was confusing syslinux and not even showing the boot menu. However: it still won't boot. Gives a message about how this should never happen, blah blah blah. Its like Linux hasn't loaded the USB or something. It should do that before it tried to mount the root filesystem shouldn't it?
Shouldn't you be pointing the 'root=' at the slackware root partition on your usb drive rather than at sda1? I'm assuming sda is your CF card as that's what you've specified as your boot= option.
I may be way off the mark here - I used the slax-boot-usb-from-cd.iso yesterday on a pc that doesn't enable usb boot in the bios.
The way it "appeared" to work was that it loaded slax normally (as though I was simply booting from the cd), and at some point it in the process my usb stick was "discovered", and slax continued to load from there.
On a cursory examination of the iso contents, it doesn't "appear" to be any different than a normal slax live cd, ie., it contains the same files and scripts that the live cd does.
So, long story short, I don't know "how" that hand-off to the usb stick occurs; when I get the chance, I'll play around on the pc and see what the messages tell me.
That being said, on a totally different tangent, on that iso there are boot scripts in /boot, which one would run when installing slax to hd, or to usb stick. There is one script liloinst.sh that invokes lilo. I used it when creating my usb stick, which I had formatted ext3. The script contains a lilo.conf. I'm wondering if you could see anything in the script that may help you with your initial goal of installing lilo to your CF.
GazL: The internal CF card is read as /dev/hda, as it is the internal "hard drive". /dev/sda is the USB device.
mrclisdue, yah, the iso would probably work all nice and dandy, but remember: not only do I not have a CD drive, I have to make the USB look like a CD via the contents and syslinux, as well as the fact that Slax and Slackware are similar, but not the same.
I'm hoping someone has an idea because what I just said in this post I have said before, and this doesn't give me any clue as to where to go from here.
GazL: The internal CF card is read as /dev/hda, as it is the internal "hard drive". /dev/sda is the USB device.
Ahh, yes, I see that now you mention it Sorry 'bout that.
The next thing I'd be inclined to try would be to build an initrd and include that on the CF card. Looking at the output you posted from the extlinux boot, it didn't even list your sda device, so perhaps at that stage its still not been made available.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.