None of the content is original, so don't waste your time reading this blog.

Friday, June 16, 2006

Dual Boot Setup

Following are the steps to get dual-boot working with GRUB; for more details you should go to the original source of this post. I used to install first Windows 2000 or Windows XP and use the Windows boot loader (NTLDR) installed in MBR to launch GRUB. Also, this should work on Windows NT (all 3 OSs use the same booting architecture).

  1. Install GRUB on the first sector of the /boot partition. DO NOT INSTALL IT ON THE MBR!.
    If you are performing the Red Hat installation, for the "Boot Loader Installation" screen:
    • Select "Use GRUB as the boot loader"
    • Select Install Boot Loader record on "...First sector of boot partition".
    • After finishing the Red Hat installation, reboot into Linux. If you don't have a boot disk, try booting in linux rescue mode
    If you already have Linux installed:
    • Run the following command (e.g. assuming /boot is
      /dev/hda2): grub-install /dev/hda2.
      If you don't know which partition contains /boot, run the df command and check the output.
    • Edit /etc/grub.conf and make sure there is an entry for your version of Windows.
  2. Determine which partition contains the /boot partition by running the df command. You'll see output like this:
    Filesystem 1k-blocks     Used Available Use% Mounted on
    /dev/hda3    8665372  1639580   6585612  20% /
    /dev/hda2      46636     5959     38269  14% /boot
    /dev/hda6     513776   189504    324272  37% /mnt/shared
    none          256624        0    256624   0% /dev/shm
    From this output, we see that /boot is on /dev/hda2.
  3. Make a copy of the Linux boot sector onto a floppy or onto a FAT32 partition. We'll name this copy linux.bin. To make a copy onto a floppy:
    • Mount the floppy drive if it's not mounted (assumes /mnt/floppy exists): mount -t msdos /dev/fd0 /mnt/floppy
    • Run the following command: dd if=/dev/hda2 of=/mnt/floppy linux.bin bs=512 count=1
      Substitute the path for the if= parameter (the input file) with the appropriate partition from the previous step. E.g., set if= to /dev/hda2.
    To make a copy onto a FAT32 (vfat) partition:
    • Mount the FAT32 partition if it's not mounted yet. If it isn't listed in the df output, it hasn't been mounted yet.
    • Run the following command: dd if=/dev/hda2of=/mnt/shared/linux.bin bs=512 count=1, substitute the path for the if= parameter (the inputfile) with the appropriate partition from the previous step. E.g., set if= to /dev/hda2. Substitute the path for the of= parameter (the output file) with whatever is appropriate for your system. The example here (of=/mnt/shared/linux.bin) is for copying onto a FAT32 partition called osshare.
  4. Reboot into Windows
  5. Copy the linux.bin file to C:\
  6. Run notepad and edit C:\boot.ini. Note that C:\boot.ini is a hidden system file, so it probably won't show up in Windows Explorer. To edit the file, try: Start->Run and enter: notepad C:\boot.ini. Add the following line at the end: c:\linux.bin="Linux". If your C: filesystem is NTFS (not FAT32), you must edit C:\boot.ini as a user with administrator-level privileges. To make C:\boot.ini writable, you can either :
    • Use Explorer:
      • Go to Tools->Folder Options->View and select Show hidden files and folders and deselect Hide protected operating system files (Recommended).
      • Right-click on the file, view the Properties and uncheck Read-only. You can now edit the file.
      • After editing the file, restore the settings to their original state.
    • Use the command-line:
      • Make the file writable: attrib -R -S -H C:\boot.ini.
      • After you've finished editing the file, put the settings back: attrib +R +S +H C:\boot.ini
  7. Reboot again. You should be able to pick either Windows or Linux. Selecting Linux will start GRUB

Labels:

1 Comments:

Anonymous Anonymous said...

don't copy .... again

11:55 AM

 

Post a Comment

<< Home