LinuxQuestions.org
Latest LQ Deal: Latest LQ Deals
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware > Slackware - Installation
User Name
Password
Slackware - Installation This forum is for the discussion of installation issues with Slackware.

Notices


Reply
  Search this Thread
Old 08-29-2005, 08:42 PM   #1
navier
LQ Newbie
 
Registered: Aug 2005
Posts: 9

Rep: Reputation: 0
usb floppy to ftp install


Hi all,

My goal is to do a clean install of slackware 10.1 (or 10.2 if its release by the time I fix this problem) on a Toshiba protege 3500 laptop. The laptop has no floppy and no cdrom drive. However I do have a usb floppy drive (which I've used to do a ubuntu netinstall). My problems seem to be a failure in detecting my usb floppy. I put the bare.i boot image in the drive, the slackware boot screen comes up, but after loading the vmlinuz thing I get this error:

kmod: failed to exec /sbin/modprobe -s -k block-major-2, errno = 2

also I saw this in the text that quickly scrolls by during the boot before the above error occurs:

no floppy controllers found

I have tried this with other boot images (including the scsi images) and I get the same errors.

I also tries "ramdisk root=/dev/sda" at the boot prompt and that gives me this error:

kmod: failed to exec /sbin/modprobe -s -k block-major-2, errno = 9
VFS: Cannot open root device "sda" or 08:00
Please append a correct "root=" boot option
kernel panic: VFS: Unable to mount root fs on 08:00

I've successfully install/configured slackware on my desktop and I fell in love. It would be great if I could get in on my laptop since its my main workstation.

Any help would be greatly appreciated.
 
Old 08-29-2005, 08:57 PM   #2
Matir
LQ Guru
 
Registered: Nov 2004
Location: San Jose, CA
Distribution: Ubuntu
Posts: 8,507

Rep: Reputation: 128Reputation: 128
Might you be able to use the ubuntu netinstall disk to then install slack?
 
Old 08-29-2005, 09:29 PM   #3
navier
LQ Newbie
 
Registered: Aug 2005
Posts: 9

Original Poster
Rep: Reputation: 0
Hey,

Thanks for your reply. I will look into that. If anyone is interested the ubuntu netinstall I got from here:

http://www.ubuntuforums.org/showthre...ht=boot+floppy

I also found this for slackware 9.1:

http://sourceforge.net/project/showf...group_id=26727

Is there a way to modify the boot disks to point to 10.1 instead?


Navier
 
Old 08-29-2005, 11:11 PM   #4
DaHammer
Member
 
Registered: Oct 2003
Location: Planet Earth
Distribution: Slackware, LFS
Posts: 561

Rep: Reputation: 30
Your problem is that the bare.i kernel does not have USB support compiled into it. It is instead available as modules. The reason it works to get the kernel booted is that the BIOS handles it until the kernel boots. Once the kernel takes over however, the floppy drive is available only through the USB interface for which the kernel has no drivers for. So a catch 22 of sorts. To make matters worse the Slackware bootdisk holds the kernel only along with a couple config files for syslinux and doesn't contain the initrd. This is because there is no room for the initrd on the disk. Instead the initrd is what's on the install.1 and install.2 bootdisks, but you can't load those because the kernel has no drivers for the USB floppy.

Anyway, probably the easiest way for you to get around all this is to recompile the bare.i kernel to include support for your USB controller and floppy drive, especially since you have another Linux system available to do it on. Basically, what you'll need to do is unpack the 2.4.29 kernel source, grab the config file from the bare.i bootdisk, add support for your USB controller & floppy, then place the new bzImage on the bootdisk. You "may" have to remove some of the other stuff in the kernel that you don't need in order to get it to fit on the disk, as space is tight. You will need to add at least the following to the kernel:
Code:
CONFIG_USB=y
CONFIG_USB_DEVICEFS=y
CONFIG_USB_STORAGE=y
You'll also need whichever of the following your controller conforms too, or all 3 if you don't know.
Code:
CONFIG_USB_EHCI_HCD=y
CONFIG_USB_UHCI_ALT=y
CONFIG_USB_OHCI=y
There may be others, depending on your exact hardware.

At that point there is one other hurdle. The rootdisks (ie install.1 & install.2) do not contain the device node for /dev/sda so you'll need to modify the install.1 image to include it. Grab the install.1 image and issue the following commands as root to create it:
Code:
mkdir /mnt/loop
zcat -c install.1 > install-cus
mount install-cus /mnt/loop -o loop
mknod /mnt/loop/dev/sda b 8 0
umount /mnt/loop
gzip -S .1 install-cus
Now create a rootdisk floppy using install-cus.1 instead of install.1. You may also want to modify the syslinux.cfg file on the bare.i bootdisk to "root=/dev/sda" instead of "root=/dev/fd0u1440". If you don't the other kernel parameters listed in it may not get passed, I can't remember. Or you could just pass the whole thing at boot:
Code:
vmlinuz ramdisk_size=7000 root=/dev/sda vga=normal rw SLACK_KERNEL=bare.i
Anyway, as you can see, it's a bit of work, but not too bad. Also alot of this from memory, as I went through this awhile back with a Dell D800 which also has a USB floppy, but I may have forgot something.

Last edited by DaHammer; 08-29-2005 at 11:13 PM.
 
Old 08-29-2005, 11:13 PM   #5
navier
LQ Newbie
 
Registered: Aug 2005
Posts: 9

Original Poster
Rep: Reputation: 0
Hello,

I think I'm beginning to understand why it doesn't work. I've done usb floppy installs before with freeBSD and ubuntu and those worked because my laptops bios is able to read from a usb floppy but the kernels from the boot images can't. The successful netinstalls loaded all the floppies into the ramdisk first then it booted into the kernel (thus reading the floppy wasn't an issue). But the slackware install boots into the kernel first then asks to load the rest of the floppies (but the kernel is looking for a fd0 device and therefore can't find it).

So thats my current theory, I still can't solve it. It's too bad I don't know how to make my own boot floppies.

navier
 
Old 08-29-2005, 11:18 PM   #6
DaHammer
Member
 
Registered: Oct 2003
Location: Planet Earth
Distribution: Slackware, LFS
Posts: 561

Rep: Reputation: 30
Yep, that's exactly the issue. If you need further assistance, yell. I'll drag the Dell back out and step back through it if need be.
 
Old 08-29-2005, 11:19 PM   #7
navier
LQ Newbie
 
Registered: Aug 2005
Posts: 9

Original Poster
Rep: Reputation: 0
Hi

Looks like I type too slow. By the time I finished writing my last post someone already had a solution waiting for me. Thanks DaHammer and everyone else. This is really amazing. It's my first posts and a solution came back very quickly. Slackware is great. Hope I can get it to work now.

navier
 
Old 08-30-2005, 12:52 AM   #8
navier
LQ Newbie
 
Registered: Aug 2005
Posts: 9

Original Poster
Rep: Reputation: 0
Hi all,

So close yet so far. I'm going to show everything I did since I don't really know what I'm doin.

I grabed the 'config' and 'bzImage' files from here:

http://gulus.usherbrooke.ca/pub/dist...ernels/bare.i/

and the 'makedisk' file from here:

http://gulus.usherbrooke.ca/pub/dist...-10.1/kernels/

I made a new directory and put these files there. I edited the config file to enable all those USB controller stuff. I then edited the makedisk file and changed /dev/fd0u1440 to /dev/sda. Then I made makedisk executable with chmod a+x. I ran the command ./makedisk bare.i bzImage and got this:

Code:
Making bare2.i bootdisk from kernel image bzImage.
Formatting the target disk.
zcat: /home/navier/Slackware/Newboot/1440k.img.gz: No such file or directory
Mounting the target disk on /tmp/mnt-10358.
[B]mount: wrong fs type, bad option, bad superblock on /dev/loop/0,
       missing codepage or other error
       In some cases useful info is found in syslog - try
       dmesg | tail  or so[B]

Copying files over (ignore permission errors).
1+0 records in
1+0 records out
32 bytes transferred in 0.005382 seconds (5946 bytes/sec)
Rdeving -R /tmp/mnt-10358/vmlinuz 0
Rdeving rdev -r /tmp/mnt-10358/vmlinuz 49152
Rdeving -v /tmp/mnt-10358/vmlinuz -v
Rdeving /tmp/mnt-10358/vmlinuz /dev/fd0
umount: /tmp/mnt-10358: not mounted
Installing SYSLINUX.
./makedisk: line 159: syslinux: command not found
Adding extra files (hope they fit :)
[B]mount: wrong fs type, bad option, bad superblock on /dev/loop0,
       missing codepage or other error
       In some cases useful info is found in syslog - try
       dmesg | tail  or so[B]

umount: /tmp/mnt-10358: not mounted
Bootdisk bare2.i created.
I'm stumped at the moment.

Thank you for any help.

navier
 
Old 08-30-2005, 12:58 AM   #9
navier
LQ Newbie
 
Registered: Aug 2005
Posts: 9

Original Poster
Rep: Reputation: 0
oops what I meant to say was

Code:
Making bare2.i bootdisk from kernel image bzImage.
Formatting the target disk.
zcat: /home/navier/Slackware/Newboot/1440k.img.gz: No such file or directory
Mounting the target disk on /tmp/mnt-10358.
mount: wrong fs type, bad option, bad superblock on /dev/loop/0,
       missing codepage or other error
       In some cases useful info is found in syslog - try
       dmesg | tail  or so

Copying files over (ignore permission errors).
1+0 records in
1+0 records out
32 bytes transferred in 0.005382 seconds (5946 bytes/sec)
Rdeving -R /tmp/mnt-10358/vmlinuz 0
Rdeving rdev -r /tmp/mnt-10358/vmlinuz 49152
Rdeving -v /tmp/mnt-10358/vmlinuz -v
Rdeving /tmp/mnt-10358/vmlinuz /dev/fd0
umount: /tmp/mnt-10358: not mounted
Installing SYSLINUX.
./makedisk: line 159: syslinux: command not found
Adding extra files (hope they fit :)
mount: wrong fs type, bad option, bad superblock on /dev/loop0,
       missing codepage or other error
       In some cases useful info is found in syslog - try
       dmesg | tail  or so

umount: /tmp/mnt-10358: not mounted
Bootdisk bare2.i created.
yeah.....first time using message forums
 
Old 08-30-2005, 11:48 AM   #10
DaHammer
Member
 
Registered: Oct 2003
Location: Planet Earth
Distribution: Slackware, LFS
Posts: 561

Rep: Reputation: 30
Simply changing the config is not going to work. You'd need to recompile the kernel using the modified config file. Anyway, seems I forgot about the USB rootdisk issue in the 2.4.x kernels. Even with USB support present and compiled into the kernel, it doesn't get initialized until after the kernel looks for the rootdisk and there is no native way to delay the process in the kernel. To make matters worse the 2.4.x kernels don't support a multi-disk bootdisk/rootdisk setup over a USB device. There is a kernel patch at http://www.swiss.ai.mit.edu/projects...py-2.4.18.diff solves all this, but it doesn't work with the 2.4.29 kernel that Slack 10.1 uses and I didn't find one that will. Given that the only way that I see to make this work would be to create a custom bootdisk, with a custom initrd that would load the 2 Slackware install rootdisks for you after delaying a few seconds to allow USB to get setup.

If ubuntu is still installed on the PC, then it would much easier to use it's bootloader to load the Slackware kernel and initrd.
 
Old 09-02-2005, 01:26 AM   #11
DaHammer
Member
 
Registered: Oct 2003
Location: Planet Earth
Distribution: Slackware, LFS
Posts: 561

Rep: Reputation: 30
I located the bootdisk I used to install via a USB floppy. I cleaned it up a bit & made it more useable for everyone else. If you still need something like this, post an email addy or a link to somewhere I can upload it too and I'll get it too you.

Basically, it does what I described above. It uses a ramdisk to load the Slackware install.1 & install.2 rootdisks, then it switches to that root filesystem and runs the installer. From there everything is as normal. I used the bare.i kernel removing RAID support (due to needing the space) and compiling the USB stuff into the kernel. The bootdisk image includes the config files for the kernel and busybox if you need to adjust the kernel beyond that.
 
Old 09-02-2005, 01:13 PM   #12
navier
LQ Newbie
 
Registered: Aug 2005
Posts: 9

Original Poster
Rep: Reputation: 0
Hey DaHammer,

Thank you very much for your efforts, I am still interested in something like this. You can send it to my email at My email . Also I was able to do a hard drive install from ubuntu (pre-existing OS) if anyone is interested I can post my steps. The only down side with hard drive install is that you have to sacrifice some hard drive space for the other OS.

Navier
 
Old 09-02-2005, 03:44 PM   #13
DaHammer
Member
 
Registered: Oct 2003
Location: Planet Earth
Distribution: Slackware, LFS
Posts: 561

Rep: Reputation: 30
Ok, I fowarded you the bootdisk image. Maybe I'll write a "howto rool your own" if I get some time so anyone else wanting something like this can benefit.
 
Old 09-03-2005, 09:21 PM   #14
navier
LQ Newbie
 
Registered: Aug 2005
Posts: 9

Original Poster
Rep: Reputation: 0
Hi DaHammer,

Thanks for the bootdisk, I can finally load the install.1 and install.2 disks. But now I have a new a problem. When I use the network.dsk (from rootdisks) the laptop is looking for a floppy device instead of the usb. But since usb is already compiled into the kernel there must be away to point the installer to the usb devise from the command prompt (but I don't know the commands).

navier
 
Old 09-03-2005, 11:17 PM   #15
DaHammer
Member
 
Registered: Oct 2003
Location: Planet Earth
Distribution: Slackware, LFS
Posts: 561

Rep: Reputation: 30
Well now, it just wouldn't be any fun if there weren't problems involved, would it? Yeah, you got the general idea. But the easiest way to deal with that is to just set the FLOPPY environment variable and then the network script will take care of the rest. So run this command, assuming your floppy is at /dev/sda:

Code:
export FLOPPY=/dev/sda
Then rerun "network".

If you have trouble, "network" is just a shell script, so you could hard code it to use /dev/sda if you wanted too. It's located at /bin/network once you get booted up.

You can also mount it manually and manually run the script. You could do that like so:
Code:
mkdir /network
mount -t vfat /dev/sda /network
/network/scripts/network.sh
As a side note, I've had issue before with the probing features on the network.sh script not identifing the NIC. If that happens then try manually loading the module for your card with a "modprobe modulename".


Anyway, I should have set the FLOPPY environment variable in the bootdisk, it just slipped my mind. You can fix it in the bootdisk if you want.

Last edited by DaHammer; 09-03-2005 at 11:18 PM.
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
install using boot floppy & usb drive? bob5000 Linux - Newbie 1 11-24-2005 11:10 AM
Install RHEL.V.3 U3 with USB Floppy for Raid Drivers temm Linux - Enterprise 0 10-10-2005 10:37 AM
SUSE 9.2 floppy ftp install ionmich SUSE / openSUSE 1 03-05-2005 03:59 AM
Feather, no CD,USB or floppy install creeble Feather 6 08-15-2004 11:44 AM
how to install FC1 by ftp, *without* floppy ? kix_vn Fedora 3 04-06-2004 04:37 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware > Slackware - Installation

All times are GMT -5. The time now is 06:20 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration