Solaris 10 Certification FAQs
by Bill Calkins
I've been asked several questions related to Solaris 10 on the x62/x86 platform from administrators getting ready to take the certification exam. Be aware that to get certified on Solaris 10, you need to be knowledgeable on the x64/x86 version of Solaris as well as the SPARC version. This has never been a requirement on prior certification exams and may be a surprise to you if you did not study this topic. Many experienced system administrators have used Solaris on the SPARC platform, but never on the x64/x86 platform. For those of you not familiar with Solaris for the x64/x86 platform- it's Solaris on a PC. It looks and feels like Solaris, but the hardware platform is different. Therefore, startup, installation, and devices are a bit different on this flavor of Solaris. Readers going for the certification exams are asking:
- Do the exams cover new x86 features in Solaris 10 1/06 such as GNU GRand Unified Bootloader - GRUB (the new bootloader)?
- How are Solaris x86 device names different than device names on a Sun system?
- The x86 memory requirements have changed in the Solaris 10 1/06 release. When asked to select the correct requirements for installing Solaris 10 on the x86 platform- which should I choose? The old (pre 1/06) requirements or the most current requirements?
The answer to item 1 is easy- the Sun certification exams currently do not cover all of the new features present in the 1/06 or the 6/06 release of Solaris 10. The exams were published back when Solaris 10 was first made available in early '05 and cover only the features found in that much earlier release of Solaris 10. To make things more difficult, that version of Solaris is no longer available for download from Sun's download site. Sun only has the most current version of Solaris 10 available for download. When the Solaris 10 exams were created, ZFS and GRUB were not available. Sun has not updated their exams to cover the most recent version of Solaris because it's time consuming and expensive. With budget cuts and job losses at Sun- I wouldn't expect them to be updated anytime soon. So, if you're studying for the exam, make sure that you study using an early '05 version of Solaris 10 (version 03/05).
The answer to the second item is a bit more involved. On Sun systems, you can create up to 7 slices on a disk. This limitation is for backward compatibility with older Sun systems and the OpenBoot PROM. However, you can get up to 16 slices on the Solaris x86 platform, but to do so, you need to use prtvtoc and fmthard to perform the task. The Solaris format command will only allow you to manipulate slices 0-7. Now, some users have switched to the new Solaris Zettabyte File System (ZFS), which is part of the Solaris 10 1/06 release (remember, the exams don't cover ZFS). ZFS allows you to surpass the current limitations in slicing, but for those that need to format an x86 disk, and want to take advantage of 16 slices, use the GNU program named "dskpart". dskpart is free to download and allows you to manipulate all of the 16 slices on the x86 platform. Read more about dskpart here.
Now back to the topic of Sun logical device names vs. x86 logical device names. On Sun SPARC systems, you'll see an eight string logical device name for each disk slice that contains the controller number, the target number, the disk number, and the slice number (c#t#d#s#).
|Controller number (c#)
Identifies the host bus adapter (HBA), which controls communications between the system and disk unit. The controller number is assigned in sequential order, such as c0, c1, c2, and so on.
|Target number (t#)
||Target numbers, such as t0, t1, t2, and t3, correspond to a unique hardware address that is assigned to each disk, tape, or CD-ROM. Some external disk drives have an address switch located on the rear panel. Some internal disks have address pins that are jumpered to assign that disk's target number.
|Disk number (d#)
||The disk number is also known as the logical unit number (LUN). This number reflects the number of disks at the target location. The disk number is always set to 0 on embedded SCSI controllers.
|Slice number (s#)
||A slice number ranging from 0 to 7.
X64/X86-based Solaris systems have a different disk naming convention, but before describing the logical device name for a disk on a x64/x86-based system, it's worth pointing out one more fundamental difference between disk slicing on a SPARC system and disk slicing on an x64/x86-based system. Disk partitioning on the Solaris for the x64/x86 platform has one more level than that of Solaris for SPARC. On Solaris for SPARC, slices and partitions are one and the same; on Solaris for x86, slices are "subpartitions" of a PC partition. This was done to allow Solaris to coexist with other PC operating systems, such as dual boot configurations.
This difference in slicing brings up some differences in the naming of disk devices on a Solaris x64/x86-based PC. Slices are created in the first Solaris partition on a drive and, for SCSI disks, are named the same as on the Solaris for SPARC (c#t#d0s#). However, because slices are within a PC partition, the PC partitions have their own device names. The entire drive is named c#t#d0p0, and the PC partitions (maximum of 4) are c#t#d0p1 through c#t#d0p4. To support the x64/x86 environment, the format utility also has an added command called fdisk to deal with the PC partitions.
Solaris x64/x86-based systems have 16 slices versus 8 for SPARC. On the x64/x86 PC, slice 8 is used to hold boot code and slice 9 is used for alternate sectors on some types of disks. Higher slices are available for use, but not supported by format at this time.
The major differences between the logical device names used on SPARC-based systems versus x64/x86-based systems are as follows:
If an IDE drive is used, d is used to determine MASTER or SLAVE and the t is not used for IDE drives. For examples, two controllers are installed on an x86 PC:
- c is the controller number.
- t is the SCSI target number.
- s is the slice number.
- p represents the fdisk partition (not slice partition).
- d is the LUN number or IDE Drive Number.
On an x64/x86-based Solaris system, the following devices are listed in the /dev/dsk directory:
- c0 is an IDE controller.
- c1 is a SCSI controller.
c0d0p0 c0d0s7 c1t0d0s4 c1t1d0s15 c1t2d0s12 c1t5d0s1 c1t6d0p3
c0d0p1 c0d0s8 c1t0d0s5 c1t1d0s2 c1t2d0s13 c1t5d0s10 c1t6d0p4
c0d0p2 c0d0s9 c1t0d0s6 c1t1d0s3 c1t2d0s14 c1t5d0s11 c1t6d0s0
c0d0p3 c1t0d0p0 c1t0d0s7 c1t1d0s4 c1t2d0s15 c1t5d0s12 c1t6d0s1
c0d0p4 c1t0d0p1 c1t0d0s8 c1t1d0s5 c1t2d0s2 c1t5d0s13 c1t6d0s10
c0d0s0 c1t0d0p2 c1t0d0s9 c1t1d0s6 c1t2d0s3 c1t5d0s14 c1t6d0s11
c0d0s1 c1t0d0p3 c1t1d0p0 c1t1d0s7 c1t2d0s4 c1t5d0s15 c1t6d0s12
c0d0s10 c1t0d0p4 c1t1d0p1 c1t1d0s8 c1t2d0s5 c1t5d0s2 c1t6d0s13
c0d0s11 c1t0d0s0 c1t1d0p2 c1t1d0s9 c1t2d0s6 c1t5d0s3 c1t6d0s14
c0d0s12 c1t0d0s1 c1t1d0p3 c1t2d0p0 c1t2d0s7 c1t5d0s4 c1t6d0s15
c0d0s13 c1t0d0s10 c1t1d0p4 c1t2d0p1 c1t2d0s8 c1t5d0s5 c1t6d0s2
c0d0s14 c1t0d0s11 c1t1d0s0 c1t2d0p2 c1t2d0s9 c1t5d0s6 c1t6d0s3
c0d0s15 c1t0d0s12 c1t1d0s1 c1t2d0p3 c1t5d0p0 c1t5d0s7 c1t6d0s4
c0d0s2 c1t0d0s13 c1t1d0s10 c1t2d0p4 c1t5d0p1 c1t5d0s8 c1t6d0s5
c0d0s3 c1t0d0s14 c1t1d0s11 c1t2d0s0 c1t5d0p2 c1t5d0s9 c1t6d0s6
c0d0s4 c1t0d0s15 c1t1d0s12 c1t2d0s1 c1t5d0p3 c1t6d0p0 c1t6d0s7
c0d0s5 c1t0d0s2 c1t1d0s13 c1t2d0s10 c1t5d0p4 c1t6d0p1 c1t6d0s8
c0d0s6 c1t0d0s3 c1t1d0s14 c1t2d0s11 c1t5d0s0 c1t6d0p2 c1t6d0s9
It's easy to see which devices are IDE disks because they do not have a "t" in the logical device name, while the SCSI disks with "c1" have a target number listed. This system has one IDE drive and five SCSI drives listed, targets 0, 1, 2, 5, and 6 (t6 is typically the CD-ROM). For more information on the topic of device names, refer to chapter 1 - Managing Files Systems - of my Solaris 10 Exam Prep book.
Finally, the last question on memory requirements, I refer you back to my response to the first question- the Sun certification exams are not up to date. Use the old memory requirements (before version 1/06) when choosing your answer. For the Solaris 10 3/05 release, 256 MB is the recommended size / 128 MB is the minimum size for both SPARC and x64/x86 based systems. Starting with the x64/x86 Solaris 10 1/06 release, 512 MB is the recommended size / 256 MB is the minimum size. For SPARC based systems, 256 MB is still the recommended size and 128 MB is still the minimum size.
The x64/x86 platform topics are included in my Solaris 10 certification practice exams. They cover topics you'll see on the real Sun certification exams such as booting, PXE, kdmconfig, installing the OS, and device names on the x64/x86 and SPARC platforms.
If you have questions or comments regarding this article or would like to submit a question for future discussion, please email me at firstname.lastname@example.org