Bugzilla – Bug 115403
cannot boot from external usb harddrive
Last modified: 2006-03-14 12:14:58 UTC
I downloaded cd1 from suse 10 beta4 and burnt it to install it onto an external usb harddisk. Installation worked well, I chose to install the bootloader on the external disk (/dev/sda) as I didn't want the suse installation to touch my internal harddisk at all. Sadly this doesn't seem to work, the bootloader does come up and starts the kernel, but at some point booting stops as there are no /dev/sda* files. It says something like "waiting for /dev/sda2 to appear ... failed, dropping to shell". At this shell I cannot do much, but verify with "echo /dev/*" that there is no /dev/sda*. Some lines upwards there are dozens of the same error message related to udev failing in some main context or so. I'm sorry that I cannot provide the exact error message, if this is needed I'll reproduce and post again. Or any other Info that is needed. The PC is a Toshiba Satellite M30X with 1,5 GHz Pentium-M.
Sounds more like a hotplug thing.
Alex, please provide full logs
Hmm. I wasn't aware that booting from external USB was a done thing. Anyway, to get it up and running you _have_ to make sure that the appropriate modules are listed in /etc/sysconfig/kernel:INITRD_MODULES (or specified via the -m switch when running mkinitrd by hand). The following modules should be listed there: [uoe]hci_hcd usb_storage and of course the appropriate filesystem module. Klaus,aj: do we support booting from USB devices?
Theoretically, yes ;-) I still have to find a system which supports this in its BIOS.
Which logs and how do I get them? I could only provide the log from the installation I guess, but then I'd had to do the installation again. When booting the installed system on the external disk up till the point where it fails there is no /var and thus no log. I've handwritten down the error messages though, so: udev: main: action, subsystem oder devpath missing udev: run_program: exec of program '/sbin/udev.mount.sh' failed I get this multiple times till finally: resume device /dev/sda1 not found ignoring Waiting for device /dev/sda2 to appear: .... not found -- exiting to /bin/sh There are only these two partitions, sda1 is swap and sda2 is root. I can imagine how the initrd is missing the modules listed in comment #3, but I failed to create a new initrd. Both when booting from the install cd and from the installed system I didn't find a mkinitrd or mk_initrd. When booted from the install cd /etc/sysconfig/kernel is on a write-only fs and when booted from the installed system there is no /etc/sysconfig
Just to get this straight: The installed system in /dev/sda2 did _not_ contain /sbin/mkinitrd? Can you chroot into the installed system and check whether the package mkinitrd is installed there? Same goes for the directory /etc/sysconfig. If _that_ is not present the installation is pretty much unuseable.
Created attachment 49073 [details] tar -cfj logs.tar.bz2 /var/log/* Well since booting that installed system on sda2 doesn't succeed and I'm dropped into a shell all I have there is the stuff from the initrd. The hint to chroot worked. There I found mkinitrd and /etc/sysconfig and was able to make a new initrd with the modules you listed. When trying to boot with the new initrd, I discovered a new problem. At some point the boot process freezes and I have to hard reset. Maybe this is related to X11 trying to start up? I don't know. You can look at boot.msg in the attached tarball. The last message before it freezes is: Running /etc/init.d/boot.local
It's the same with suse 10 rc1. The initrd is missing the *hci_hcd and usb_storage modules, so booting from external usb disk fails.
Nothing to do with the initrd. If the modules are not in /etc/sysconfig/kernel:INITRD_MODULES the initrd doesn't include them. And mkinitrd certainly does not _write_ this line. Steffen, who does?
AFAIK this is a duplicate of #66733 and should work with 10.1 beta#3. *** This bug has been marked as a duplicate of 66733 ***
(In reply to comment #0) > I downloaded cd1 from suse 10 beta4 and burnt it to install it onto an external > usb harddisk. Installation worked well, I chose to install the bootloader on the > external disk (/dev/sda) as I didn't want the suse installation to touch my > internal harddisk at all. That's what I always did in https://bugzilla.novell.com/show_bug.cgi?id=66733. > Sadly this doesn't seem to work, the bootloader does > come up and starts the kernel, but at some point booting stops as there are no > /dev/sda* files. It says something like "waiting for /dev/sda2 to appear ... > failed, dropping to shell". That's just a timount problem. Wait a few seconds and type exit Booting will continue and everything is fine ( I was able to install all betas this way),
Ok I had same problem. The thing with 'exit' is bug or feature? (could we add some timeout and do it automatically? Or everyone have to serach this bugreport to findout this magic word ;) )