Adding a Vista entry in GRUB

My PC has two SATA HD drives. Win Vista Home Premium was installed first on SATA 1.

I later unplugged the power and data cables connected to the SATA 1 HD drive before installing openSUSE 11.1 on the other SATA 2 HD drive.

On the GRUB menu list for the SATA 2 HD drive I only have the following options:

…openSUSE 11.1 - 2.6.27.7-9
…Failsafe openSUSE 11.1 - 2.6.27.7-9

I do not know how to add the Vista entry in the GRUB menu list that will enable the Win Vista Home Premium OS to load appropriately. Right now when I want to switch from one OS to the other I have to first enter into the BIOS utility to indicate the HD boot order.

I will also appreciate your help on the openSUSE boot file(s) that need to be edited with the booting instructions for the Win Vista Home Premium OS.

We are going to need to see the contents of several openSUSE files to be sure we are giving you correct instructions. So please boot into openSUSE, open a terminal, and do:

su -
fdisk -lu
cat /boot/grub/device.map
cat /boot/grub/menu.lst
cat /etc/grub.conf
cat /etc/fstab

Just post back the output of the above commands; should not be difficult.

By the way, should you be interested, it is also relatively easy to set up the reverse, that is, using the Vista boot manager to boot openSUSE.

Stick with mingus on this. I just wanted to mention/remind. Some have had issues when making changes via Yast - it screws up grub.

In this case - and mingus knows this of course. You only need to edit 1 file manually (so no need to use Yast bootloader) /boot/grub/menu.lst

Just supply the info requested please.

Outpuf for fdisk -lu

Disk /dev/sda: 500.1 GB, 500107862016 bytes

255 heads, 63 sectors/track, 60801 cylinders, total 976773168 sectors

Units = sectors of 1 * 512 = 512 bytes

Disk identifier: 0x0867732e

Device Boot Start End Blocks Id System

/dev/sda1 * 2048 976771071 488384512 7 HPFS/NTFS

Disk /dev/sdb: 300.0 GB, 300090728448 bytes

255 heads, 63 sectors/track, 36483 cylinders, total 586114704 sectors

Units = sectors of 1 * 512 = 512 bytes

Disk identifier: 0x69205244

Device Boot Start End Blocks Id System

/dev/sdb1 63 4209029 2104483+ 82 Linux swap / Solaris

/dev/sdb2 * 4209030 46154744 20972857+ 83 Linux

/dev/sdb3 46154745 586099394 269972325 83 Linux

Disk /dev/sdc: 4102 MB, 4102887936 bytes

255 heads, 63 sectors/track, 498 cylinders, total 8013453 sectors

Units = sectors of 1 * 512 = 512 bytes

Disk identifier: 0x00000000

Device Boot Start End Blocks Id System

/dev/sdc1 34 7984304 3992135+ b W95 FAT32

**Output for cat /boot/grub/device.map
**
(hd0) /dev/disk/by-id/ata-Maxtor_7B300S0_B61SNHYH

Output for cat /boot/grub/menu.lst

Modified by YaST2. Last modification on Tue Feb 3 20:41:41 UTC 2009

default 0

timeout 8

gfxmenu (hd0,1)/boot/message

##YaST - activate

###Don’t change this comment - YaST2 identifier: Original name: linux###

title openSUSE 11.1 - 2.6.27.7-9

root (hd0,1)

kernel /boot/vmlinuz-2.6.27.7-9-default root=/dev/disk/by-id/ata-Maxtor_7B300S0_B61SNHYH-part2 resume=/dev/disk/by-id/ata-Maxtor_7B300S0_B61SNHYH-part1 splash=silent showopts vga=0x314

initrd /boot/initrd-2.6.27.7-9-default

###Don’t change this comment - YaST2 identifier: Original name: failsafe###

title Failsafe – openSUSE 11.1 - 2.6.27.7-9

root (hd0,1)

kernel /boot/vmlinuz-2.6.27.7-9-default root=/dev/disk/by-id/ata-Maxtor_7B300S0_B61SNHYH-part2 showopts ide=nodma apm=off noresume edd=off powersaved=off nohz=off highres=off processor.max_cstate=1 x11failsafe vga=0x314

initrd /boot/initrd-2.6.27.7-9-default

**Output for cat /etc/grub.conf
**
setup --stage2=/boot/grub/stage2 --force-lba (hd0,1) (hd0,1)

quit

**Output for cat /etc/fstab
**
/dev/disk/by-id/ata-Maxtor_7B300S0_B61SNHYH-part1 swap swap defaults 0 0

/dev/disk/by-id/ata-Maxtor_7B300S0_B61SNHYH-part2 / ext3 acl,user_xattr 1 1

/dev/disk/by-id/ata-Maxtor_7B300S0_B61SNHYH-part3 /home ext3 acl,user_xattr 1 2

proc /proc proc defaults 0 0

sysfs /sys sysfs noauto 0 0

debugfs /sys/kernel/debug debugfs noauto 0 0

usbfs /proc/bus/usb usbfs noauto 0 0

devpts /dev/pts devpts mode=0620,gid=5 0 0

First, and this is critical, you must now have SATA 2 configured as the first boot disk in the bios (or else SuSE would not boot). Do not change this.

You need to change 2 files with a text editor as root, /boot/grub/device.map and /boot/grub/menu.lst. If you are using KDE, press Alt-F2 and in the run dialog type:

kdesu kwrite /boot/grub/device.map

If using Gnome, do:

gnomesu gedit /boot/grub/device.map

And add the following second line:

(hd1) /dev/sda

Save the file. While still in the text editor, open /boot/grub/menu.lst and copy/paste the following stanza at the end (be sure to add a blank line before the preceding stanza):

###Don't change this comment - YaST2 identifier: Original name: windows###
title Windows
    rootnoverify (hd0,1)
    map (hd0) (hd1)
    map (hd1) (hd0)
    chainloader (hd1,0)+1

Thank you very much, sir.

As soon as I make the recommended changes in the /boot files I will give you my feedback on the matter.

Thanks again for your kind assistance.

After editing as root the /boot/grub/device.map and /boot/grub/menu.1st files, saving all the changes, and also configureing the SATA 2 as the first boot disk in the BIOS utility, I made a restart to test things.

The results were that after the BIOS screen fades a black screen appears that reads:

rootnoverify (hd0,1)
map (hd0) (hd1)
map (hd1) (hd0)
chainloader (hd1,0)+1

and just stops there. The other options, however, do work well.

The /boot/grub/menu.1st reads as follows:

Modified by YaST2. Last modification on Wed Feb 4 06:36:05 EST 2009

default 0

timeout 8

gfxmenu (hd0,1)/boot/message

##YaST - activate

###Don’t change this comment - YaST2 identifier: Original name: windows###

title Windows Vista Home Premium

rootnoverify (hd0,1)

map (hd0) (hd1)

map (hd1) (hd0)

chainloader (hd1,0)+1

###Don’t change this comment - YaST2 identifier: Original name: linux###

title openSUSE 11.1 - 2.6.27.7-9

root (hd0,1)

kernel /boot/vmlinuz-2.6.27.7-9-default root=/dev/disk/by-id/ata-Maxtor_7B300S0_B61SNHYH-part2 resume=/dev/disk/by-id/ata-Maxtor_7B300S0_B61SNHYH-part1 splash=silent showopts vga=0x314

initrd /boot/initrd-2.6.27.7-9-default

###Don’t change this comment - YaST2 identifier: Original name: failsafe###

title Failsafe – openSUSE 11.1 - 2.6.27.7-9

root (hd0,1)

kernel /boot/vmlinuz-2.6.27.7-9-default root=/dev/disk/by-id/ata-Maxtor_7B300S0_B61SNHYH-part2 showopts ide=nodma apm=off noresume edd=off powersaved=off nohz=off highres=off processor.max_cstate=1 x11failsafe vga=0x314

initrd /boot/initrd-2.6.27.7-9-default

Your kind assistance will be highly regarded.

I forgot to mention that I edited the bootloader in the YaST GUI to set Windows Vista Home Premium as the default OS (my wife works in Windows while I have started to work in openSuSE besides Windows).

OOPs’

What did I say
Adding a Vista entry in GRUB - openSUSE Forums

I did follow carefully mingus instructions. The situation described about the black screen that appears with a piece of code after the BIOS screen fades happened when I first tried to load Windows Vista Home Premium using GRUB.

It was later on that I used the YaST GUI to set Win Vista HP as the default O/S; the failure then to load the Vista OS already existed. There might be a slight error in the code, and I hope that the /boot/grub/menu.1st file listing sent will help to find why this unexpected Vista booting behavior occurred.

Thanks, too, for your kind help.

First, we need to double-check on one point: You posted that before making the change to menu.lst, you “configured SATA 2 as the first boot device in the bios” - wasn’t it already configured that way? Also please be sure that SATA 1 is configured as the second boot device, not another device (such as an external drive). If that was not, then change it to that, and then try what I gave you above once again. If the bios config was already correct per above, then continue - after temporarily removing the thumb/SSD drive.

In menu.lst add all of the following. Also move the current Windows stanza down to the end so that openSUSE is (temporarily) the default.


title Windows 1
    rootnoverify (hd1,0)
    map (hd0) (hd1)
    map (hd1) (hd0)
    chainloader (hd1,0)+1

title Windows 2
    rootnoverify (hd1,0)
    chainloader (hd1,0)+1

title Windows 3
    rootnoverify (hd0,1)
    chainloader (hd1,0)+1

If none of this works . . . sometimes there are quirks with Vista and/or SATA disk controllers. So the alternative is to reverse the setup, that is, use Vista to control booting itself and openSUSE. That is not difficult to do (and your wife may even prefer that :wink: ).

When I first installed Win Vista HP to SATA 1 I left the power and data cables plugged to the SATA 2 HD. However when I openSuSE 11.1 (64-bit) was installed over OSS 11.1 (32-bit) I unplugged the power and data cables plugged to the SATA 1 HD.

Regardless of losing a few files in the prior /home/username directory that I had backups of openSuSE 11.1 (64-bit) works very well. Windows Vista HP also does, too.

**Vista booting problem solved finally.
**

You were right. What failed was that I did not have SATA 1 configured as the Second boot device in the BIOS, but rather the CD-ROM.

On the other hand, it was not necessary (in my case) to move the current Windows stanza down to the end as the Win Vista HP OS loads perfectly well now. In that way it will appear on the GRUB menu list as the default OS set.

After verifying that everything worked properly I deleted the other Windows 2 and Windows 3 stanzas from the /boot/grub/menu.1st file listing as you will see down below.

I am very grateful to you, and trust that the feedback may be helpful to other openSuSE users who might have the same problem. Thanks once again.

Modified by YaST2. Last modification on Wed Feb 4 10:40:47 EST 2009

default 0
timeout 8
gfxmenu (hd0,1)/boot/message
##YaST - activate

###Don’t change this comment - YaST2 identifier: Original name: windows###
title Windows Vista Home Premium
rootnoverify (hd1,0)
map (hd0) (hd1)
map (hd1) (hd0)
chainloader (hd1,0)+1

###Don’t change this comment - YaST2 identifier: Original name: linux###
title openSUSE 11.1 - 2.6.27.7-9
root (hd0,1)
kernel /boot/vmlinuz-2.6.27.7-9-default root=/dev/disk/by-id/ata-Maxtor_7B300S0_B61SNHYH-part2 resume=/dev/disk/by-id/ata-Maxtor_7B300S0_B61SNHYH-part1 splash=silent showopts vga=0x314
initrd /boot/initrd-2.6.27.7-9-default

###Don’t change this comment - YaST2 identifier: Original name: failsafe###
title Failsafe – openSUSE 11.1 - 2.6.27.7-9
root (hd0,1)
kernel /boot/vmlinuz-2.6.27.7-9-default root=/dev/disk/by-id/ata-Maxtor_7B300S0_B61SNHYH-part2 showopts ide=nodma apm=off noresume edd=off powersaved=off nohz=off highres=off processor.max_cstate=1 x11failsafe vga=0x314
initrd /boot/initrd-2.6.27.7-9-default

Hello all,

I am facing exactly the same problem. Although it’s on Ubuntu. I hope someone can still help me though. I ran the script and attaching its output:

============================= Boot Info Summary: ==============================

=> Grub0.97 is installed in the MBR of /dev/sda and looks on the same drive
in partition #5 for /boot/grub/stage2 and /boot/grub/menu.lst.

sda1: _________________________________________________________________________

File system:       Extended Partition
Boot sector type:  -
Boot sector info:  

sda5: _________________________________________________________________________

File system:       reiserfs
Boot sector type:  -
Boot sector info:  
Operating System:  Ubuntu 8.10
Boot files/dirs:   /boot/grub/menu.lst /etc/fstab

sda2: _________________________________________________________________________

File system:       ntfs
Boot sector type:  Windows Vista
Boot sector info:  No errors found in the Boot Parameter Block.
Operating System:  Windows Vista
Boot files/dirs:   

sda3: _________________________________________________________________________

File system:       swap
Boot sector type:  -
Boot sector info:  

sda4: _________________________________________________________________________

File system:       reiserfs
Boot sector type:  -
Boot sector info:  
Operating System:  
Boot files/dirs:   

=========================== Drive/Partition Info: =============================

Drive sda: _____________________________________________________________________

Disk /dev/sda: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders, total 312581808 sectors
Units = sectors of 1 * 512 = 512 bytes
Disk identifier: 0x08000000

Partition Boot Start End Size Id System

/dev/sda1 * 63 122,881,184 122,881,122 5 Extended
/dev/sda5 126 122,881,184 122,881,059 83 Linux
/dev/sda2 122,882,048 235,522,047 112,640,000 7 HPFS/NTFS
/dev/sda3 235,528,965 251,642,159 16,113,195 82 Linux swap / Solaris
/dev/sda4 251,642,160 312,576,704 60,934,545 83 Linux

blkid -c /dev/null: ____________________________________________________________

/dev/sda2: UUID=“C2725D4C725D4677” TYPE=“ntfs”
/dev/sda3: UUID=“fbc89a8b-8c88-461e-8568-b42b4f70c02b” TYPE=“swap”
/dev/sda4: UUID=“15c4e2d4-8ef3-4b85-97e7-88960d47c716” TYPE=“reiserfs”
/dev/sda5: UUID=“2296564d-c9bf-492b-b7b0-52c994e7dfa7” TYPE=“reiserfs”

=============================== “mount” output: ===============================

/dev/sda5 on / type reiserfs (rw,relatime,notail)
tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
/proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
varrun on /var/run type tmpfs (rw,nosuid,mode=0755)
varlock on /var/lock type tmpfs (rw,noexec,nosuid,nodev,mode=1777)
udev on /dev type tmpfs (rw,mode=0755)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620)
fusectl on /sys/fs/fuse/connections type fusectl (rw)
lrm on /lib/modules/2.6.27-11-generic/volatile type tmpfs (rw,mode=755)
/dev/sda4 on /var type reiserfs (rw,relatime)
securityfs on /sys/kernel/security type securityfs (rw)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,noexec,nosuid,nodev)
gvfs-fuse-daemon on /home/r/.gvfs type fuse.gvfs-fuse-daemon (rw,nosuid,nodev,user=r)

=========================== sda5/boot/grub/menu.lst: ===========================

menu.lst - See: grub(8), info grub, update-grub(8)

grub-install(8), grub-floppy(8),

grub-md5-crypt, /usr/share/doc/grub

and /usr/share/doc/grub-doc/.

default num

Set the default entry to the entry number NUM. Numbering starts from 0, and

the entry number 0 is the default if the command is not used.

You can specify ‘saved’ instead of a number. In this case, the default entry

is the entry saved with the command ‘savedefault’.

WARNING: If you are using dmraid do not use ‘savedefault’ or your

array will desync and will not let you boot your system.

default 2

timeout sec

Set a timeout, in SEC seconds, before automatically booting the default entry

(normally the first entry defined).

timeout 3

hiddenmenu

Hides the menu by default (press ESC to see the menu)

hiddenmenu

Pretty colours

#color cyan/blue white/blue

password ‘–md5’] passwd

If used in the first section of a menu file, disable all interactive editing

control (menu entry editor and command-line) and entries protected by the

command ‘lock’

e.g. password topsecret

password --md5 $1$gLhU0/$aW78kHK1QfV3P2b2znUoe/

password topsecret

examples

title Windows 95/98/NT/2000

root (hd0,0)

makeactive

chainloader +1

title Linux

root (hd0,1)

kernel /vmlinuz root=/dev/hda2 ro

Put static boot stanzas before and/or after AUTOMAGIC KERNEL LIST

BEGIN AUTOMAGIC KERNELS LIST

lines between the AUTOMAGIC KERNELS LIST markers will be modified

by the debian update-grub script except for the default options below

DO NOT UNCOMMENT THEM, Just edit them to your needs

## Start Default Options

default kernel options

default kernel options for automagic boot options

If you want special options for specific kernels use kopt_x_y_z

where x.y.z is kernel version. Minor versions can be omitted.

e.g. kopt=root=/dev/hda1 ro

kopt_2_6_8=root=/dev/hdc1 ro

kopt_2_6_8_2_686=root=/dev/hdc2 ro

kopt=root=UUID=2296564d-c9bf-492b-b7b0-52c994e7dfa7 ro

default grub root device

e.g. groot=(hd0,0)

groot=2296564d-c9bf-492b-b7b0-52c994e7dfa7

should update-grub create alternative automagic boot options

e.g. alternative=true

alternative=false

alternative=true

should update-grub lock alternative automagic boot options

e.g. lockalternative=true

lockalternative=false

lockalternative=false

additional options to use with the default boot option, but not with the

alternatives

e.g. defoptions=vga=791 resume=/dev/hda5

defoptions=quiet splash

should update-grub lock old automagic boot options

e.g. lockold=false

lockold=true

lockold=false

Xen hypervisor options to use with the default Xen boot option

xenhopt=

Xen Linux kernel options to use with the default Xen boot option

xenkopt=console=tty0

altoption boot targets option

multiple altoptions lines are allowed

e.g. altoptions=(extra menu suffix) extra boot options

altoptions=(recovery) single

altoptions=(recovery mode) single

controls how many kernels should be put into the menu.lst

only counts the first occurence of a kernel, not the

alternative kernel options

e.g. howmany=all

howmany=7

howmany=all

should update-grub create memtest86 boot option

e.g. memtest86=true

memtest86=false

memtest86=true

should update-grub adjust the value of the default booted system

can be true or false

updatedefaultentry=false

should update-grub add savedefault to the default options

can be true or false

savedefault=false

## End Default Options

title Ubuntu 8.10, kernel 2.6.27-11-generic
uuid 2296564d-c9bf-492b-b7b0-52c994e7dfa7
kernel /boot/vmlinuz-2.6.27-11-generic root=UUID=2296564d-c9bf-492b-b7b0-52c994e7dfa7 ro quiet splash
initrd /boot/initrd.img-2.6.27-11-generic
quiet

title Ubuntu 8.10, kernel 2.6.27-11-generic (recovery mode)
uuid 2296564d-c9bf-492b-b7b0-52c994e7dfa7
kernel /boot/vmlinuz-2.6.27-11-generic root=UUID=2296564d-c9bf-492b-b7b0-52c994e7dfa7 ro single
initrd /boot/initrd.img-2.6.27-11-generic

##title Ubuntu 8.10, kernel 2.6.27-7-generic
##uuid 2296564d-c9bf-492b-b7b0-52c994e7dfa7
##kernel /boot/vmlinuz-2.6.27-7-generic root=UUID=2296564d-c9bf-492b-b7b0-52c994e7dfa7 ro quiet splash
##initrd /boot/initrd.img-2.6.27-7-generic
##quiet

##title Ubuntu 8.10, kernel 2.6.27-7-generic (recovery mode)
##uuid 2296564d-c9bf-492b-b7b0-52c994e7dfa7
##kernel /boot/vmlinuz-2.6.27-7-generic root=UUID=2296564d-c9bf-492b-b7b0-52c994e7dfa7 ro single
##initrd /boot/initrd.img-2.6.27-7-generic

##title Ubuntu 8.10, memtest86+
##uuid 2296564d-c9bf-492b-b7b0-52c994e7dfa7
##kernel /boot/memtest86+.bin
##quiet

title Windows Vista
rootnoverify (sda,2)
chainloader +1

END DEBIAN AUTOMAGIC KERNELS LIST

=============================== sda5/etc/fstab: ===============================

/etc/fstab: static file system information.

<file system> <mount point> <type> <options> <dump> <pass>

proc /proc proc defaults 0 0

/dev/sda5

UUID=2296564d-c9bf-492b-b7b0-52c994e7dfa7 / reiserfs notail,relatime 0 1

/dev/sda4

UUID=15c4e2d4-8ef3-4b85-97e7-88960d47c716 /var reiserfs relatime 0 2

/dev/sda3

UUID=fbc89a8b-8c88-461e-8568-b42b4f70c02b none swap sw 0 0
/dev/scd0 /media/cdrom0 udf,iso9660 user,noauto,exec,utf8 0 0

=================== sda5: Location of files loaded by Grub: ===================

16.3GB: boot/grub/menu.lst
16.3GB: boot/grub/stage2
18.2GB: boot/initrd.img-2.6.27-11-generic
18.2GB: boot/initrd.img-2.6.27-7-generic
18.2GB: boot/vmlinuz-2.6.27-11-generic
18.2GB: boot/vmlinuz-2.6.27-7-generic
18.2GB: initrd.img
18.2GB: initrd.img.old
18.2GB: vmlinuz
18.2GB: vmlinuz.old

I would be really grateful if someone could help me.
Thank you.

Exactly which problem?

By the way, in your menu.lst the Vista stanza is wrong. The rootverify line should use (hd0,1) not (sda,2).

Hello Mingus725,

Thank you for your reply/correction. I replaced sda2 with hda1 and now started getting BOOTMGR is missing. My problem is that Vista and Windows 2008 were the 2 entries under Longhorn section. Now that Windows 2008 is gone and its place is taken by Ubuntu root I can’t get Vista to boot.

Thank you.

Your syntax is still incorrect. Grub uses its own form of disk/partition notation: (hd<x><y>), where <x> is the disk starting with zero and <y> is the partition starting with zero. Equally important, the numbering corresponds to the boot device configuration in the bios. Therefore, if sda is the first boot disk and sda2 is the Vista partition, then in grub notation it is (hd0,1) as I posted previously, not “hda1”.

The error message “BOOTMGR is missing” is thrown by the Vista partition boot sector (PBR) code when it cannot find the Vista boot manager program, name of “bootmgr”. (This can be deceiving however, if you have more than one Vista created NTFS partitions, because Vista will put this code in every partition that it formats.) Getting that error does indicate that a Vista PBR was called, and suggests that the boot sector is invalid (specifically, the sector’s bios parameter block).

I would mount sda2 and verify that bootmgr is in its root directory; there should also be a sub-directory named “boot” in which lives Vista’s boot registry. Then make sure your menu.lst syntax is correct. If both are OK, then you probably need to rebuild the Vista partition boot sector. This requires using the Vista RE (Recovery Environment), the bootrec program with the /fixboot argument. Instructions here Bootrec.exe tool in the Vista RE. If you don’t have a Vista RE, you can get it here Windows Vista RE Download.

Good luck.

just a note its .lst not .1st

My problem was a bit simpler
-originally vista OEM on HP presario F700
-i work with vista relatively without problems for a good while
-i decide to fire vista and move on to greater things
-i install opensuse 11.1 and manage to get all drivers somehow
-later on i need a specific windows program that cant run on wine or virtualbox
-i repartition and install vLite’d vista on first partition
-i restore GRUB bootloader using install DVD new install -> repair
-vista menu absent
-i struggle trying to add vista menu entry using yast GUI
-i open shell and do sudo /sbin/yast and go to system -> bootloader
-i notice it is showing something slightly different from yast GUI
-i use NON-GUI yast to add (chainloader) menu entry for vista

-reboot and test - vista menu option present and boots into vista

My problem was a bit simpler
-originally vista OEM on HP presario F700
-i work with vista relatively without problems for a good while
-i decide to fire vista and move on to greater things
-i install opensuse 11.1 and manage to get all drivers somehow
-later on i need a specific windows program that cant run on wine or virtualbox
-i repartition and install vLite’d vista on first partition
-i restore GRUB bootloader using install DVD new install -> repair
-vista menu absent
-i struggle trying to add vista menu entry using yast GUI
-i open shell and do sudo /sbin/yast and go to system -> bootloader
-i notice it is showing something slightly different from yast GUI
-i use NON-GUI yast to add (chainloader) menu entry for vista

-reboot and test - vista menu option present and boots into vista