Bug 756194

Summary: Rescue system doesn't load properly from local hard disk
Product: [openSUSE] openSUSE 12.1 Reporter: Volker Kuhlmann <bugz57>
Component: BasesystemAssignee: E-mail List <bnc-team-screening>
Status: VERIFIED INVALID QA Contact: E-mail List <qa-bugs>
Severity: Normal    
Priority: P5 - None CC: bugz57
Version: Final   
Target Milestone: ---   
Hardware: Other   
OS: Other   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description Volker Kuhlmann 2012-04-08 11:06:25 UTC
User-Agent:       Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/534.34 (KHTML, like Gecko) konqueror/4.7.2 Safari/534.34

It is useful to have the rescue system installed on local hard disk (though obviously not for fixing the bootloader), from where it loads HUGELY faster.

Unfortunately this doesn't work properly, just before loading common and rescue the system produces a pop-up saying "Make sure that CD 1 is in your drive", after which the language, keyboard, action, and path to the boot files have to be re-entered. Same as manual install mode. The message is bogus - all needed files are available. When specifying an ftp source the problem doesn't exist. When specifying an on-disk ISO image of the installation DVD, which clearly has all needed files, the problem also occurs.


Reproducible: Always

Steps to Reproduce:
1. Copy the files below from the installation DVD to hard disk

/boot/rescue12.1_64/content.asc
/boot/rescue12.1_64/content
/boot/rescue12.1_64/boot/x86_64
/boot/rescue12.1_64/boot/x86_64/common
/boot/rescue12.1_64/boot/x86_64/config
/boot/rescue12.1_64/boot/x86_64/rescue
/boot/rescue12.1_64/boot/x86_64/loader/initrd
/boot/rescue12.1_64/boot/x86_64/loader/linux

2. Make grub entry in /boot/grub/menu.lst

title Rescue
    kernel /boot/rescue12.1_64/boot/x86_64/loader/linux
    append rescue=hd:/rescue12.1_64?device=/dev/sda3 keytable=en-us namescheme= splash=silent vga=0x317 panic=10 linemode=1 linuxrc.debug=4
    initrd /boot/rescue12.1_64/boot/x86_64/loader/initrd

3. Select this entry from the grub boot menu when booting.
Actual Results:  
The rescue system doesn't find itself and needs to ask for information it already has while entering manual setup mode, instead of just booting to the login prompt.

Expected Results:  
When replacing 
rescue=hd:/rescue12.1_64?device=/dev/sda3
with
rescue=ftp://host/path
the problem doesn't exist, but that requires a network connection and other servers. Loading the files from hd: should work just the same.
Comment 1 Volker Kuhlmann 2012-04-08 12:42:39 UTC
D'oh - grub doesn't have an append line, like lilo and pxelinux...

The correct grub entry is

title Rescue
    kernel /boot/rescue12.1_64/boot/x86_64/loader/linux rescue=hd:/rescue12.1_64?device=/dev/sda3 keytable=en-us namescheme=
splash=silent vga=0x317 panic=10 linemode=1 linuxrc.debug=4
    initrd /boot/rescue12.1_64/boot/x86_64/loader/initrd