|
Bugzilla – Full Text Bug Listing |
| Summary: | Repair Install (GRUB) fails because of missing device entries in installed system | ||
|---|---|---|---|
| Product: | [openSUSE] SUSE Linux 10.1 | Reporter: | Johannes Pöhlmann <johannes> |
| Component: | Installation | Assignee: | Hannes Reinecke <hare> |
| Status: | RESOLVED INVALID | QA Contact: | Jiri Srain <jsrain> |
| Severity: | Normal | ||
| Priority: | P5 - None | CC: | duwe, phn |
| Version: | Final | ||
| Target Milestone: | --- | ||
| Hardware: | i686 | ||
| OS: | SuSE Linux 10.1 | ||
| Whiteboard: | |||
| Found By: | Customer | Services Priority: | |
| Business Priority: | Blocker: | --- | |
| Marketing QA Status: | --- | IT Deployment: | --- |
This seems like a udev/hotplug problem to me. This tends to get particularly tricky during installation, update or rescue. Assigning to Hannes for comment or further redirect. Starting with SuSELinux 10.0 we're using a dynamic /dev directory. So to able it in a rescue system you have to mount it into that system. So in your case you have to do a 'mount --bind /dev /mnt/dev' to have the device nodes available in your installed system. I will retest with opensuse 10.2 if "repair installation - reinstall boot manager" works. This will be the case if only if the solution from Comment #2 has been implemented. |
This is a fork of a remark i made to bug NR#172510 You can not reinstall the Boot loader from the rescue system or with Yast repair installation because of missing device entries in the installed system. Hardware is a HP Compaq nc6320 Laptop with a SATA disk. The bug is not limited to the case where I found it, it is a bug of the installed system image that breaks Boot loader repair installation. *Beware*: in normal operation you do NOT see the device files in the /dev subdirectory of the root device BUT udev mounted ONTO /dev. You only can see /dev subdirectory of the root device when booting another system, e.g. repair installation. This is what I did: I tried to restore/clone a system partition from a tar.gz Archive to a new machine. I started the rescue system, partitioned the disk as sda1: 83, 15Gig, sda2. 82, 2 Gig, sda3: 83 and made ext3 filesystems on sda1. Then I replayed the tar.gz archive into sda1. So far, so good. But I was not able to install GRUB from the rescue system. Grub complained about "missing disks". Same problem with knoppix. Same Problem with "repair installation". My Solution was (in a text console:) mknod /mnt/dev/sda 8 0 mknod /mnt/dev/sda1 8 1 an then Grub installed smoothly with Yast repair installation. I think the Problem is: When the installed system is not running, /dev is just a subdirectory with only a small couple of files in it. sda and sda1 where just missing: My Proposal: When Yast installs the boot loader it should recreate those missing device files, that he is going to use. Or just add all the usual suspects to /dev. See also my old comment I made to bug NR#172510 >Due to a incorrect installation grub obviously was not installed. >After the first reboot the system was complaining not to have an OS. >I tried repair installation - reinstall boot manager. >I was not able to install lilo or grub. >grub said: grub>root (hd0,2) Error 21: Selected Disc does not exist. >lilo said: raid_setup("/dev/hda") >I found out later that the devcice entries for /dev/hda and /dev/hda* >was missing. Creating them allowed to install the bootloader, but i >will reinstall anyway ;-) >Perhaps yast should recreate the usual device file entries before >installing the boot manager, this could also fix update problems. Cheers, Johannes