LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Newbie (https://www.linuxquestions.org/questions/linux-newbie-8/)
-   -   Help with Dual booting Opensuse 11.3 and Windows XP (https://www.linuxquestions.org/questions/linux-newbie-8/help-with-dual-booting-opensuse-11-3-and-windows-xp-821789/)

Squeak92 07-23-2010 07:53 PM

Help with Dual booting Opensuse 11.3 and Windows XP
 
Greetings, firstly I would like to tell you I'm somewhat inexperienced with linux, so complicated instructions will be lost on me.

Secondly, please don't just refer me to a guide, because I've read so many of them, and none of them seem to match my problem.

Basically, I have Opensuse 11.3 installed on a 250gb SATA, and I have windows XP installed on a 160gb SATA. Each OS has the whole drive dedicated to it.

Currently if I wish to change OS I have to reboot my PC, go into the boot options in the bios, and change the hard drive boot order. What I would like to do is have GRUB offer me Opensuse 11.3, or Windows XP.

I've noticed 11.3 has a neat little tool in YaST called "Boot loader". I'm sure I can somehow use that to do what I need to do, but I have no idea what I'm doing.

Any help appreciated, but please don't just post links to other guides. Thank you.

lugoteehalt 07-23-2010 08:04 PM

How about running grub-install as root?

Squeak92 07-23-2010 08:45 PM

Dude, no idea what that means.

vikas027 07-23-2010 08:51 PM

Hi,

This might not be exaclty what you are looking for, But it might help you in future.

The easiest way what I have found is to have a dual boot is :-

Quote:

1) Install Windows 7/XP/Vista e.t.c., such that you have a unformatted partition left.
Say you have a 160 GB Hard Disk, use C: drive as 20GB , D: Drive as 100GB. Then do not format the rest 40 GB.

2) Boot your machine from Linux Bootable DVD/CD.

3) When prompted to partition the Hard Disks for installation, use option "use free space and create deafult partition" It is something like that, I believe the third option.

syg00 07-23-2010 08:57 PM

Generally the (distro) installer will find Windows if installed (this is not a grub{1} function) - did you have the Windows disk disconnected when you installed OpenSuSE ?.
From a terminal run this - it will ask for your root password. Post the output
Code:

su -c 'grep -Ev "(^$|^#)" /boot/grub/menu.lst'

Squeak92 07-23-2010 09:06 PM

shane@linux-d6fb:~> su -c 'grep -Ev "(^$|^#)" /boot/grub/menu.lst
> su -c 'grep -Ev "(^$|^#)" /boot/grub/menu.lst
su: invalid option -- 'E'
Try `su --help' for more information.
shane@linux-d6fb:~>

syg00 07-23-2010 09:31 PM

Looks like you missed the closing (single) quote.

Squeak92 07-25-2010 06:56 AM

This looks more like what you're after!

default 0
timeout 8
gfxmenu (hd0,1)/boot/message
title openSUSE 11.3 - 2.6.34-12
root (hd0,1)
kernel /boot/vmlinuz-2.6.34-12-default root=/dev/disk/by-id/ata-WDC_WD2500JS-00NCB1_WD-WCANK3323598-part2 resume=/dev/disk/by-id/ata-WDC_WD2500JS-00NCB1_WD-WCANK3323598-part1 splash=silent quiet showopts vga=0x31a
initrd /boot/initrd-2.6.34-12-default
title Failsafe -- openSUSE 11.3 - 2.6.34-12
root (hd0,1)
kernel /boot/vmlinuz-2.6.34-12-default root=/dev/disk/by-id/ata-WDC_WD2500JS-00NCB1_WD-WCANK3323598-part2 showopts apm=off noresume nosmp maxcpus=0 edd=off powersaved=off nohz=off highres=off processor.max_cstate=1 nomodeset x11failsafe vga=0x31a
initrd /boot/initrd-2.6.34-12-default

saikee 07-25-2010 07:56 AM

Try this in OpenSuse 11.3

(1) Click "Computer", "more Applications", "system" then "xterm" to obtain a terminal in OpenSuse

(2) Become a root user (equivalent to Aministrator in a MS Windows) by terminal command
Code:

su
and then supply the root password.

(3) Edit Grub's configuration file (can only be done in a root terminal) by command
Code:

nano /boot/grub/menu.lst
(4) Navigate to the end of the file, that syg00 had asked to to display with Post #5 and you did it successfully with Post #8, and add the following lines
Code:

title Dude say my MS Windows installed as the 1st boot disk but now connected as 2nd disk
root (hd1,0)
map (hd0) (hd1)
map (hd1) (hd0
)
chainloader +1

(5) Save the file by "ctrl+o" and quite the editor nano by "ctrl+x".

Your Windows should now boot if it reside in the 1st partition of the 2nd hard disk and known to Grub as (hd1,0). Grub1 is used by OpenSuse 11.3 and it counts everything from 0.

The trick is by the two map statements which swap the 1st disk (hd0) with the 2nd disk (hd1) on-the-fly as you have requested. You should always boot up the OpenSuse disk as the 1st disk. Grub will swap the disk order only if you boot the Windows and reverts the disk to the original state once you exit Windows.

You can afford chop off the hand that asks the Bios to change the disk order from now on as it has no further use if the job has been given to Grub!

Squeak92 07-25-2010 08:55 AM

I got very optimistic about this post, until

shane@linux-d6fb:~> su
Password:
linux-d6fb:/home/shane # nano /boot/grub/menu.lst
If 'nano' is not a typo you can use command-not-found to lookup the package that contains it, like this:
cnf nano

saikee 07-25-2010 09:14 AM

I actually tried it in my OpenSuse 11.3 as I have put it in a 1.5TB disk at a position where Grub complains the cylinder number exceeds the maximum permitted by the Bios. OpenSuse still uses Grub1 so I have to create a new boot menu for Grub2. My OpenSuse 11.3 has the same 2.6.34-12 kernel as your.

However my xterm prompt is "saikee@linux-cgwy:~>" and in root it is "linux-cgwy:/home/saikee#" fro OpenSuse 11.3 gnome i686. It is possible that you may be using a different version of may be in KDE, 64-bit etc.

Anyway this is a trivial issue because I selected "nano" as the easiest text editor. You can use "vi" or "vim" in lieu of "nano". It is just an text editor to change the grub1 configuration file /boot/grub.menu.lst. OpenSuse allows you to read it in a desktop by clicking it with file manager "Nautilus" or play around with it in graphic editor "gedit" (or kwrite in KDE desktop) but only in a root terminal that you can change it.

If you never use vi or vim before you may not survive it but with nano you can. You can check if nano is available by command
Code:

man nano
Usually you should find vi or vim in every Bash terminal but may be only 90% of them have nano.

---------------------------
Let say get a raw deal of having to use vi so the command is just
Code:

vi /boot/grub/menu.lst
You can only change thing in a file by pressing the "i" for insertion. At the end of the insertion you press "esc" key to conclude an insertion session.

To quite is ":q"

To save a file is ":w"

Squeak92 07-25-2010 10:24 AM

Found nano in a software repository and have installed it now. Also, I'm using a KDE desktop as I find it preferable, had Gnome for a while on Ubuntu a few years ago but it wasn't as developed I don't think.

Anyway, I'm at a bit of a loss for what to do here because I'm intimidated by Nano! I'll post below the grub config file, and I know I'm asking to be spoon-fed here which is always annoying by people you help, but trust me I hate asking such favours.
Code:

GNU nano 2.2.2            File: /boot/grub/menu.lst

# Modified by YaST2. Last modification on Sat Jul 24 01:10:55 BST 2010
# THIS FILE WILL BE PARTIALLY OVERWRITTEN by perl-Bootloader
# Configure custom boot parameters for updated kernels in /etc/sysconfig/bootloader

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

###Don't change this comment - YaST2 identifier: Original name: linux###
title openSUSE 11.3 - 2.6.34-12
      root
      kernel
      initrd

There is also one of those "don't change this comment" things for the failsafe boot option. Would you mind inserting the code into this as it should look? Many thanks.

saikee 07-25-2010 10:47 AM

Don't worry about changing menu.lst. The boot loader always prefer the contents of its configuration not touched by the inexperienced users but the whole thing is easy for most computer users. I often write my own menu.lst.

I highlighted in blue your menu.lst from your Post #8 and add the new addition in red
Code:

default 0
timeout 8
gfxmenu (hd0,1)/boot/message
title openSUSE 11.3 - 2.6.34-12
root (hd0,1)
kernel /boot/vmlinuz-2.6.34-12-default root=/dev/disk/by-id/ata-WDC_WD2500JS-00NCB1_WD-WCANK3323598-part2 resume=/dev/disk/by-id/ata-WDC_WD2500JS-00NCB1_WD-WCANK3323598-part1 splash=silent quiet showopts vga=0x31a
initrd /boot/initrd-2.6.34-12-default

title Failsafe -- openSUSE 11.3 - 2.6.34-12
root (hd0,1)
kernel /boot/vmlinuz-2.6.34-12-default root=/dev/disk/by-id/ata-WDC_WD2500JS-00NCB1_WD-WCANK3323598-part2 showopts apm=off noresume nosmp maxcpus=0 edd=off powersaved=off nohz=off highres=off processor.max_cstate=1 nomodeset x11failsafe vga=0x31a
initrd /boot/initrd-2.6.34-12-default


title Dude says my MS Windows installed as the 1st boot disk but now connected as 2nd disk
root (hd1,0)
map (hd0) (hd1)
map (hd1) (hd0)
chainloader +1

The lines in menu.lst starting with a "#" will not be act upon by Grub and are left there to help to explain inner working.

You Windows will boot if it is in the first partition. The sure way to know this is by posting here the output of
Code:

su
fdisk -l

If you have sdb1 marked with a "*" and has a partition Type 7 (for NTFS) then all systems are good and ready to go.

Squeak92 07-25-2010 10:52 AM

linux-d6fb:/home/shane # fdisk -l

Disk /dev/sda: 250.1 GB, 250059350016 bytes
255 heads, 63 sectors/track, 30401 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x5a2c5768

Device Boot Start End Blocks Id System
/dev/sda1 1 262 2103296 82 Linux swap / Solaris
Partition 1 does not end on cylinder boundary.
/dev/sda2 * 262 2873 20972544 83 Linux
/dev/sda3 2873 30402 221121536 83 Linux

:EDIT:
Linux does not recognize/find the other hard drive, and Windows does not appear to notice this one, although I thought maybe it was a problem with jumper settings on the hdds, I did at one point use both hard drives in windows.

saikee 07-25-2010 11:26 AM

You do know now that nothing can be done until you make the second hard disk recognised in Linux.

As far as I know if a hard disk is recognised in a MS Windows (or a Linux) then it will be recognised in all operating systems.


All times are GMT -5. The time now is 03:38 PM.