Updated multi-boot disk layout

It's been a while since our Getting Started article on multi-boot disk configurations. The old Solaris bootloader is long gone, in favor of the more flexible (and multiboot friendly) GRUB. ZFS is now available in both Solaris and OpenSolaris. The Branded Zones and Xen OpenSolaris projects are getting more interesting. And in making the best of a difficult situation, a laptop disk failure has given me an opportunity to re-think the original layout.

In addition to the project goals in the original article, here are some new capabilities that I would like to explore.
  • Zones - I want to build zones, and lots of them. Solaris as well as Linux zones.
  • Leverage Live Upgrade so that I can upgrade my system while winging my way across the US
  • Consolidate all of my home directories into a small but useful set
  • Be able to build OpenSolaris on a more regular basis
  • Find a more efficient way of sharing a large Open Source repository across multiple OS instances
  • Start using ZFS for more than just simple demonstrations
  • Reserve some space to play with Linux distributions such as Fedora Core and Ubuntu
  • GNOME 2.16 development builds for OpenSolaris


Before we proceed we need to make sure that the file systems will be sized properly. With only 80GB to work with, we will have to be efficient in a few places (like sharing the Software Companion, Blastwave repository, and Staroffice 8), even at the cost of a bit of complexity.

Estimated disk requirements

Component
Size
Notes
Solaris 10
Entire Software Group
4GB
The main boot environment will include Solaris 10, Staroffice 8, development tools, Software Companion, and Blastwave repository
Software Express (Nevada)
Entire Software Group
5GB
Includes space for GNOME 2.16 development
OpenSolaris Nightly Build 5GB
BFU from Nevada or nightly build from source
Solaris 10
Software Companion
2GB
Installed in Solaris 10 /opt, shared in other installations
Staroffice 8 500MB
Installed in Solaris 10 /opt, shared in other installations
Compilers 1GB
Installed in Solaris 10 /opt, shared in other installations
Blastwave Repository 1GB
Installed in Solaris 10 /opt, shared in other installations
Swap 2GB
Not really needed for Solaris, but will be shared with Linux


Taking all of this into consideration, the new disk layout looks something like this.

Partition
Size
Type
Mount Point
Notes
1
12GB
NTFS
Window XP C:
/xp
Read-only access under Linux using Linux-ntfs kernel modules
No access from Solaris
2
44GB
Solaris UFS
s0 - S10 boot environment (8GB)
s1 - swap
s3 - Nevada boot environment (6GB)
s4 - OpenSolaris boot environment (6GB)
s5 - ZFS slice 1 (2GB)
s6 - ZFS slice 2 (2GB)
s7 - /export (16GB)
Solaris swap partition is available to Linux as /dev/hda9
4
22GB
Extended
N/A

5
4GB
FAT32
Windows XP E:
/pc on Solaris (pcfs) and Linux (vfat)
Device name is /dev/hda5 in Linux and /dev/dsk/c0d0p0:1 in Solaris
6
10GB
Linux (ext3)
/
Linux root (today Fedora Core, may soon be Ubuntu as Fedora Core 5 was a major disappointment)
7
6GB
Linux (ext3)
/export
Shared home directory that can quickly be reused for CentOS 3 (for testing BrandZ things) and Ubuntu releases.


Next time, a short example of using Live Upgrade to install a new version of Solaris Express while running the Solaris 10 daily driver.

Technocrati Tags:
Comments:

Thanks for sharing this info. Solaris must have progressed a lot. If convenient, could you please briefly describe how you can make a Solaris installation see a logical partition? When did this become possible? Also, how can you make slice 1 (S1) in the Solaris partion to be seen as /dev/hda9 by Linux? Thanks again.

Posted by W. Wayne Liauh on November 07, 2006 at 06:41 PM CST #

Solaris has progressed in many areas, particularly in areas useful for laptop users. The NVIDIA driver is pretty solid and delivers good performance. Power management is getting better - I can now watch an entire movie on an airplane trip without killing the battery.

As far as extended partitions, Solaris UFS doesn't understand them yet. The PCFS file system has some basic support and can sniff out a FAT32 logical partition.

For your other question, this is a feature of the IDE driver in Linux. When it enumerates the devices for each partition, it then swings around and if it finds a Solaris fdisk partition it will enumerate those as well. The pseudo-partition numbers start immediately after the last physical partition. These can be seen in /var/log/messages as
Nov 6 21:53:49 pandora kernel: hda: hda1 hda2 hda3 < hda5 hda6 hda7 >
Nov 6 21:53:49 pandora kernel: hda2: <solaris: [s0] hda8 [s1] hda9 [s2] hda10 [s3] hda11 [s4] hda12 [s5] hda13 [s6] hda14 [s7] hda15 >

Note the slice number is followed by the new IDE device name.

One more hurdle though - to use it as Linux swap, it must be properly formatted. Run a mkswap from the Linux side to format the swap partition. Fortunately Solaris skips over the header so it won't get mangled.

If you have the UFS file system driver loaded you can also access your Solaris x86 UFS file systems. Most distributions include the driver compiled for read-only access. Just add something like
/dev/hda8 /s10 ufs defaults,ufstype=sunx86,ro 0 0
to your /etc/fstab.

Posted by Bob Netherton on November 08, 2006 at 03:58 AM CST #

Post a Comment:
  • HTML Syntax: NOT allowed
About

Bob Netherton is a Principal Sales Consultant for the North American Commercial Hardware group, specializing in Solaris, Virtualization and Engineered Systems. Bob is also a contributing author of Solaris 10 Virtualization Essentials.

This blog will contain information about all three, but primarily focused on topics for Solaris system administrators.

Please follow me on Twitter Facebook or send me email

Search

Archives
« April 2014
SunMonTueWedThuFriSat
  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
   
       
Today