Ligt waarschijnlijk aan de volgorde waarin het BIOS je schijven initialiseert c.q in welke volgorde ze op de SATA poorten zijn aangesloten. Vista zal (neem ik even aan) wel op de eerste door het BIOS gedetecteerde schijf staan. En als de Ubuntu-schijf dan bijvoorbeeld als tweede wordt gevonden dan is tijdens het booten vanaf CD en daarna de installatie van Ubuntu die Ubuntu-schijf als hd(0,1) gevonden i.p.v. hd(0,0) en zijn die gegevens ook zo in de bootloader (grub) terechtgekomen.
Als je vervolgens de als tweede geïnitialiseerde schijf in je BIOS als bootschijf aanmerkt en daarvan opstart dan ziet grub die echter wel als eerste gevonden schijf, hd(0,0) dus, maar zoekt het te starten systeem op hd(0,1) waar dan zoals je hebt gemerkt niets gevonden wordt.
Je zult dus (denk ik) grub opnieuw moeten installeren en daarbij de schijfnummers aanpassen.
Beetje een krom verhaal maar ik spreek uit ervaring (weliswaar met een systeem met IDE-schijven, maar toch...)
Vraagje: wat heb je tijdens de installatie van Ubuntu opgegeven als plaats waar grub geïnstalleerd moest worden?
Gr,
Jim