Triple Boot, Part 1: Planning

Brian wrote up his experience getting OpenSolaris 2008.05 to work in a dual-boot environment with OS X.  There are also some excellent resources available in the Getting Started With OpenSolaris 2008.05 documentation. But none of those described exactly what I wanted : a triple-boot system with Windows Vista, OpenSolaris 2008.05, and Ubuntu 8.04. This series of blog entries will describe the process I used to get all three installed and working on my system.


  • This system has a single hard-drive.
  •  Messing around with the partitions and the Master Boot Record (MBR) on a disk can be dangerous.  Always back up your data first.
  • This worked for me - YMMV  :-)

My system is a Sony VAIO VGN-SZ680N04, that I took delivery of back in February of 2008.  It has a 186 gigabyte (GB) hard drive (or 200GB, depending upon your definition of "gigabyte"). It came from the factory with Windows Vista already installed.

There were two primary partitions: a 7GB "recovery" partition and then Vista itself in an NTFS partition that used the rest of the drive. Since I was planning to use OpenSolaris more than Vista or Ubuntu I decided to give the largest amount of space to OpenSolaris: just over 70GB.  I figured 46GB for Ubuntu would be more than enough for it, so that left me with about 60GB for Vista (again, more than I'll probably ever need).

Before I could create the new partitions for OpenSolaris and Ubuntu, I had to resize Vista's NTFS partition down to 60GB.  Before attempting the resize, I defragmented the NTFS partition (in the Vista Control Panel, choose System and Maintenance and then choose Defragment your hard drive, which is listed under Administrative Tools).

Windows Vista also includes a utility that will resize an NTFS partition (in the Vista Control Panel, choose System and Maintenance and then choose Create and format hard disk partitions, which is listed under Administrative Tools). I tried it but could not get it to actually resize the partition.  I am not the only person who has seen this problem.

I had to find another way.  GParted would be one option, but I had used Partition Manager before on an older system and it had been worth the price so I installed Partition Manager version 9.0.  I used it to resize the existing NTFS partition and to add the new partitions.

During the partitioning, I had to keep in mind two important things:

After resizing the NTFS partition, I created a third primary partition for OpenSolaris.  It is important to note that I specified a partition type of "Linux swap" for that primary partition.  Why use "Linux swap" for a partition that will eventually contain OpenSolaris?  The MBR contains a partition type identifier for each partition on the drive.  The type identifier 0x82 is, unfortunately, overloaded: it is used by some software to indicate a Linux swap partition and by older Solaris software to indicate a Solaris partition.

I then created an extended partition that used the remainder of the disk.  In that extended partition, I created three logical drives for use by Ubuntu, one each for: swap, boot, and root.  The end result (click for full size):

With that done, I was ready to start installing software.  Vista was already installed and running, so all I needed to do was install Ubuntu and then OpenSolaris.  I installed them in that order: first Ubuntu and then OpenSolaris. 

This is because by default, both installers write their own code to the MBR.  I wanted the OpenSolaris code in the MBR because it will start the GRUB that OpenSolaris installs.  Here is the key point: the GRUB that OpenSolaris installs can boot Ubuntu, but the GRUB installed by Ubuntu cannot boot OpenSolaris.  So I will install Ubuntu first, then overwrite its GRUB with the one from OpenSolaris.  More on this in Part 2: Installing Ubuntu.


Hi, and how is it with dual boot of Nevada (SXCE) and indiana (2008.05)

Posted by stradi on July 16, 2008 at 03:14 PM GMT #

I have not tried to dual-boot SXCE and OpenSolaris 2008.05, but one rule to keep in mind is that only \*one\* primary partition at a time can have the 0xBF partition type set. Bob Netherton describes an approach for working around that here:

Another approach would be to use slices instead of multiple primary partitions; William Xue describes that approach here:

Posted by Gregg Sporar on July 16, 2008 at 07:07 PM GMT #

Also a good alternative is to use System Rescue CD - , which has gparted in there and you can safely use it to resize/move/whatsoever your disk/partitions.
Besides gparted there are many great tools, that can help you with your system recovery.
Naturally System Rescue is free and so far I didn't have any problems with it. I always found my data in proper state after the fiddling around.

Posted by Lubos Kosco on August 05, 2008 at 12:31 AM GMT #

I have installed Solaries 11 in my laptop, frankly to say. i am first time trying for solaries and for unix environment too.

In Driver details it showing ethernet driver missing, audio driver misconfigured.

I downloaded the drivers, but the problem is i dont know how to install it.

After the long search, came to know that pkgadd cmd is used to install the drivers. but i dont know in which path need to install, Please someone guide me in this.

The driver package downloaded is in tar.gz formate

Posted by Raghupriyan on October 08, 2008 at 01:28 PM GMT #

I'd like to know if it's possible to insatll win XP HOME/PRO and Solaris, and if so, what should be installed first?
That's my question by now.
Waintin' for ur rply asap.

Posted by Paulo Baptista on October 14, 2008 at 10:53 AM GMT #

I'd like to know if it's possible to insatll win XP HOME/PRO and Solaris, and if so, what should be installed first?
That's my question by now.
can we use linux os also

Posted by george thomas on October 15, 2008 at 12:13 AM GMT #

Install Win XP HOME/PRO first, then Solaris. Solaris Master Boot Loader (MBR)is more powerful than Windows boot loader.
But you have to partition your system wisely.

Posted by wale on October 16, 2008 at 04:58 AM GMT #

I wished I had read this article before I tried to do this triple boot with WinXP instead of Vista.

By the way, could you detail all the partition you have? Because it seems to me that there are more than what you wrote in this article. Mine were on my 55Go:
Primary: WinXP(25Go)/OpenSolaris(14Go)
Logical: LinuxSwap(2Go)/Ubuntu(14Go)


Posted by tourist.tam on October 20, 2008 at 07:25 AM GMT #

Hi Tam: As shown in the illustration above, there are three primary partitions: the first one is the "recovery" partition that Sony installed, then Windows Vista, and finally OpenSolaris. The fourth partition is an extended partition that contains three logical drives for use by Ubuntu.

Posted by Gregg Sporar on October 23, 2008 at 06:17 PM GMT #

mine a triple boot
install XP, then win 2008 and then solaris/opensolaris

you can easily substitute win 2008 for vista

Posted by omphile on November 28, 2008 at 12:54 AM GMT #

thanks a lot for your guide. I have almost the exact same setup (except I am using Win7 and XP in the first two primary partitions).

Things worked fine for me doing fdisk manually as you described - the installer worked like a charm.
Just one thing: I don't know whether your words implied this, but during my manual pfexec stuff, the disk could only be opened if the partition was a linux-swap partition.


Posted by Harry on June 22, 2009 at 04:22 PM GMT #

Hi Harry - Glad to hear this series of blog entries was useful.

Yes, in order for the Solaris format command to recognized a partition, the partition type must be either 0x82 (which is used for both Linux swap \*and\* Solaris) or 0xBF (Solaris2).

Posted by Gregg Sporar on June 23, 2009 at 07:37 AM GMT #

Great tut guys... I have a question... I have a pc with a recovery partition then xp installed, i have added and extra partition NTFS and would like to add vista to it. That makes 3 active partitions. I have created a 4th extended partition to install ubuntu with and also put the swap file in this extended partition. My question is when ubuntu is running will i still be able to see my other volumes within ubuntu if it resided in an extended partition?
15gb pqservice(recovery) primary
300gb XP primary
300gb Vista primary
300 or so ubuntu and swap extended
usually when i have a dual boot with ubuntu i can always play with the NTFS drives. Just curious if ubuntu will still do this within an extended partition??
all i have on now is XP ... made the other partitions but will wait to see what is said ... thanks

Posted by Leerot Brown on July 17, 2009 at 09:55 PM GMT #

@Leerot - Yes, I think that setup will work. It doesn't matter to Ubuntu if its partition is primary or extended, in either case it should be able to mount both of the primary partitions that you are using for Windows XP and Vista. - Gregg

Posted by Gregg Sporar on July 18, 2009 at 07:18 AM GMT #

Thanks for the info... Yes worked like a charm... XP installed first, Vista second and ubuntu last to tie the knot with grub boot loader... multi boot dream config lol thanks again Greg :)

Posted by Leeroy Brown on July 18, 2009 at 01:59 PM GMT #

Does anyone know how to add to the GRUB menu an entry to access an OS (SuSe Linux 11.2) I have on a second hard drive that is linked to my laptop via the USB port?

I currently have Windows 7 Ultimate and OpenSolaris 2009.06 on my hard-drive (500 G) and on the USB hard-drive I have SuSe 11.2, but I am not able to access it.

Posted by Jorge Gutierrez on January 07, 2010 at 06:05 AM GMT #

Post a Comment:
  • HTML Syntax: NOT allowed

The Observatory is a blog for users of Oracle Solaris. Tune in here for tips, tricks and more as we explore the Solaris operating system from Oracle.


« July 2016