pedrogfrancisco

Navigation

Recent site activity

Home‎ > ‎English‎ > ‎

Install Linux on independent external harddisk (i.e. movable to another computer) with Vista on internal harddisk

OK I WAS TOLD THIS DOESN'T WORK AS WELL AS I EXPECTED:

  • WINDOWS BOOTS

  • LINUX DOESN'T

FOLLOW THIS INSTRUCTIONS WITH CAUTION AND BACKUP YOUR DATA TO ALLOW FOR A REINSTALL IF NECESSARY!!!!!!!!!!!!!!!!

This is a temporary page until I've patience to set up a proper one. I can not guarantee this will work neither support you. Sorry.

There are however many companies who sell support services to Free Software users. Can't recommend you one but search for them, they exist.


Initial situation expected

  • Windows on internal hard disk;
  • Linux on external hard disk;
  • GRUB on internal hard disk (i.e. can't boot Vista without external hard disk connected and can't get external hard disk to boot on another computer);

Final situation expected

  • if you boot normally, Vista boots;
  • if you change in BIOS the boot order to boot from the external harddisk, Linux boots;
  • external hard disk boots in other PCs;
  • Vista boots even with external hard disk disconnected;


Preparation

  • get a Windows Vista install CD (AFAIK, recovery partition won't do)
  • get a Linux Live CD (doesn't need to be the same version installed)

Further preparation

  • using your own Linux install do:
sudo cat /boot/grub/menu.list |less

You should get way too much text, but in the middle you'll get something similar to:


title        Ubuntu 8.04, kernel 2.6.24-17-generic (recovery mode)
root        (hd1,4)
kernel        /vmlinuz-2.6.24-17-generic root=/dev/sdb5 ro single
initrd        /initrd.img-2.6.24-17-generic

(there may be a root=UUID=xxXXwdadskfjsfhsjhdfkjshdfj instead, doesn't matter)

Write down the part in front of root, in this case, (hd1,4).


You should do the following steps using a Live CD, however I'm lazy to type here all the steps and AFAIK it works as well this way:

  • go to Terminal
  • type sudo grub
  • in the GRUB shell type:
  • root whatever was in front of root in menu.lst (if your root was equal to the example above, do root (hd1,4)     )
  • setup whatever was the first number in front of root in menu.lst (if your root was equal to the example above, do setup (hd1)     )

Now your external harddisk should boot in any computer


Insert your Windows install CD

if you're using Windows Vista

  • go to Windows Recovery Environment (more info here)
  • type bootrec /FixMbr
  • type exit
  • it should reboot now and all be as expected


if you're using Windows XP

  • go to Recovery Console (more info here)
  • type fixmbr
  • type exit
  • it should reboot now and all be as expected


You're done

  • The End


References


This is a temporary page until I've patience to set up a proper one. I can not guarantee this will work neither support you. Sorry.

There are however many companies who sell support services to Free Software users. Can't recommend you one but search for them, they exist.