Overview of Disk Management
Managing disks in the Solaris OS usually involves setting up the system and
running the Solaris installation program to create the appropriate disk slices and file
systems and to install the Solaris OS. Occasionally, you might need to use
the format utility to add a new disk drive or replace a defective
disk drive.
Disk Terminology
Before you can effectively use the information in this section, you should be
familiar with basic disk architecture. In particular, you should be familiar with the
following terms:
Disk Term |
Description |
Track |
A concentric ring on a disk that passes under a
single stationary disk head as the disk rotates. |
Cylinder |
The set of tracks with the
same nominal distance from the axis about which the disk rotates. |
Sector |
Section of each
disk platter. A sector holds 512 bytes. |
Block |
A data storage area on
a disk. A disk block is 512 bytes. |
Disk controller |
A chip and its
associated circuitry that controls the disk drive. |
Disk label |
The first sector of a
disk that contains disk geometry and partition information. |
Device driver |
A kernel module that controls
a hardware or virtual device. |
For additional information, see the product information from your disk's manufacturer.
About Disk Labels
A special area of every disk is set aside for storing information about
the disk's controller, geometry, and slices. This information is called the disk's label.
Another term that is used to described the disk label is the VTOC
(Volume Table of Contents) on a disk with a VTOC label. To label a disk means
to write slice information onto the disk. You usually label a disk after
you change its slices.
The Solaris release supports the following two disk labels:
SMI – The traditional VTOC label for disks that are less than 1 terabyte in size.
EFI – Provides support for disks that are larger than 1 terabyte on systems that run a 64-bit Solaris kernel. The Extensible Firmware Interface GUID Partition Table (EFI GPT) disk label is also available for disks less than 1 terabyte that are connected to a system that runs a 32-bit Solaris kernel.
If you fail to label a disk after you create slices, the
slices will be unavailable because the OS has no way of “knowing” about
the slices.
EFI Disk Label
The EFI label provides support for physical disks and virtual disk volumes. This
release also includes updated disk utilities for managing disks greater than 1 terabyte.
The UFS file system is compatible with the EFI disk label, and you
can create a UFS file system greater than 1 terabyte. For information on
creating a multiterabyte UFS file system, see 64-bit: Support of Multiterabyte UFS File Systems.
The unbundled Sun QFS file system is also available if you need
to create file systems greater than 1 terabyte. For information on the Sun
QFS file system, see Sun QFS, Sun SAM-FS, and Sun SAM-QFS File System Administrator’s Guide.
The Solaris Volume Manager software can also be used to manage disks greater
than 1 terabyte in this Solaris release. For information on using Solaris Volume
Manager, see Solaris Volume Manager Administration Guide.
The VTOC label is still available for disks less than 1 terabyte
in size. If you are only using disks smaller than 1 terabyte on
your systems, managing disks will be the same as in previous Solaris releases.
In addition, you can use the format-e command to label a disk less than
1 terabyte with an EFI label. For more information, see Example 11-6.
You can use the format -e command to apply an EFI label to
a disk if the system is running the appropriate Solaris release. However, you
should review the important information in Restrictions of the EFI Disk Label before attempting to apply an EFI
label.
Comparison of the EFI Label and the VTOC Label
The EFI disk label differs from the VTOC disk label in the
following ways:
Provides support for disks greater than 1 terabyte in size.
Provides usable slices 0-6, where slice 2 is just another slice.
Partitions (or slices) cannot overlap with the primary or backup label, nor with any other partitions. The size of the EFI label is usually 34 sectors, so partitions start at sector 34. This feature means that no partition can start at sector zero (0).
No cylinder, head, or sector information is stored in the EFI label. Sizes are reported in blocks.
Information that was stored in the alternate cylinders area, the last two cylinders of the disk, is now stored in slice 8.
If you use the format utility to change partition sizes, the unassigned partition tag is assigned to partitions with sizes equal to zero. By default, the format utility assigns the usr partition tag to any partition with a size greater than zero. You can use the partition change menu to reassign partition tags after the partitions are changed. However, you cannot change a partition with a non-zero size to the unassigned partition tag.
Restrictions of the EFI Disk Label
Keep the following restrictions in mind when determining whether using disks greater than
1 terabyte is appropriate for your environment:
Layered software products intended for systems with VTOC-labeled disks might be incapable of accessing a disk with an EFI disk label.
A disk with an EFI label is not recognized on systems running previous Solaris releases.
You cannot boot from a disk with an EFI disk label.
You cannot use the fdisk command on a disk with an EFI label that is greater than 1 terabyte in size.
You cannot use the Solaris Management Console's Disk Manager tool to manage disks with EFI labels. Use the format utility to partition disks with EFI labels. Then, you can use the Solaris Management Console's Enhanced Storage Tool to manage volumes and disk sets with EFI-labeled disks.
The EFI specification prohibits overlapping slices. The entire disk is represented by cxtydz.
The EFI disk label provides information about disk or partition sizes in sectors and blocks, but not in cylinders and heads.
The following format options are either not supported or are not applicable on disks with EFI labels:
The save option is not supported because disks with EFI labels do not need an entry in the format.dat file.
The backup option is not applicable because the disk driver finds the primary label and writes it back to the disk.
Support for EFI-Labeled Disks on x86 Systems
Solaris support for the EFI disk label is available on x86 systems. Use
the following command to add an EFI label on an x86 system:
# format -e
> [0] SMI Label
> [1] EFI Label
> Specify Label type[0]: 1
> WARNING: converting this device to EFI labels will erase all current
> fdisk partition information. Continue? yes
Previous label information is not converted to the EFI disk label.
You will have to recreate the label's partition information manually with the format
command. You cannot use the fdisk command on a disk with an EFI
label that is greater than 1 terabyte in size. The fdisk command
is not intended for disks that are larger than 1 terabyte. For more
information about EFI disk labels, see the preceding section.
Installing a System With an EFI-Labeled Disk
The Solaris installation utilities automatically recognize disks with EFI labels. However, you cannot
use the Solaris installation program to repartition these disks. You must use the
format utility to repartition an EFI-labeled disk before or after installation. The Solaris
Upgrade and Live Upgrade utilities also recognize a disk with an EFI label.
However, you cannot boot a system from an EFI-labeled disk.
After the Solaris release is installed on a system with an EFI-labeled disk,
the partition table appears similar to the following:
Current partition table (original):
Total disk sectors available: 2576924638 + 16384 (reserved sectors)
Part Tag Flag First Sector Size Last Sector
0 root wm 34 1.20TB 2576924636
1 unassigned wm 0 0 0
2 unassigned wm 0 0 0
3 unassigned wm 0 0 0
4 unassigned wm 0 0 0
5 unassigned wm 0 0 0
6 unassigned wm 0 0 0
8 reserved wm 2576924638 8.00MB 2576941021
Managing Disks With EFI Disks Labels
Use the following table to locate information on managing disks with EFI disk
labels.
*If a ZFS file system or UFS file system does not meet
your needs, consider a QFS file system.
Troubleshooting Problems With EFI Disk Labels
Use the following error messages and solutions to troubleshoot problems with EFI-labeled disks.
- Error Message
Dec 3 09:26:48 holoship scsi: WARNING: /sbus@a,0/SUNW,socal@d,10000/
sf@1,0/ssd@w50020f23000002a4,0 (ssd1):
Dec 3 09:26:48 holoship disk has 2576941056 blocks, which is too large
for a 32-bit kernel
- Cause
You attempted to boot a system running a 32-bit SPARC or x86 kernel with a disk greater than 1 terabyte.
- Solution
Boot a system running a 64-bit SPARC or x86 kernel with a disk greater than 1 terabyte.
- Error Message
Dec 3 09:12:17 holoship scsi: WARNING: /sbus@a,0/SUNW,socal@d,10000/
sf@1,0/ssd@w50020f23000002a4,0 (ssd1):
Dec 3 09:12:17 holoship corrupt label - wrong magic number
- Cause
You attempted to add a disk to a system running an older Solaris release.
- Solution
Add the disk to a system running the Solaris release that supports the EFI disk label.
About Disk Slices
Files stored on a disk are contained in file systems. Each file
system on a disk is assigned to a slice, which is a group
of sectors set aside for use by that file system. Each disk slice
appears to the Solaris OS (and to the system administrator) as though it
were a separate disk drive.
For information about file systems, see Chapter 17, Managing File Systems (Overview).
Note - Slices are sometimes referred to as partitions. Certain interfaces, such as the format
utility, refer to slices as partitions.
When setting up slices, remember these rules:
Slices are set up slightly differently on SPARC and x86 platforms. The following
table summarizes the differences.
Table 10-1 Slice Differences on SPARC and x86 Platforms
SPARC Platform |
x86 Platform |
The entire disk is devoted to Solaris
OS. |
Disk is divided into fdisk partitions, one fdisk partition per operating system. |
VTOC
– The disk is divided into 8 slices, numbered 0-7. EFI – The disk
is divided into 7 slices, numbered 0-6. |
VTOC – The Solaris fdisk partition is divided
into 10 slices, numbered 0–9. EFI – The disk is divided into 7 slices,
numbered 0-6 |
Solaris Volume Manager, previously the Solstice DiskSuiteTM, has a partitioning feature, soft partitions. Soft
partitions enable more than eight partitions per disk.
For general information about Solaris Volume Manager, see Chapter 2, Storage Management Concepts, in Solaris Volume Manager Administration Guide. For information on soft
partitions, see Chapter 12, Soft Partitions (Overview), in Solaris Volume Manager Administration Guide.
Disk Slices
The following table describes the slices that might be found on a
system that runs the Solaris OS.
On x86 systems:
Disks are divided into fdisk partitions. An fdisk partition is a section of the disk that is reserved for a particular operating system, such as the Solaris OS.
The Solaris OS places ten slices, numbered 0-9, on a Solaris fdisk partition.
Table 10-2 Customary Disk Slices
Slice |
File System |
Usually Found on Client or Server Systems? |
Comments |
0 |
root (/) |
Both |
Holds files and
directories that make up the OS. EFI – You cannot boot from a disk
with an EFI label. |
1 |
swap |
Both |
Provides virtual memory, or swap space. |
2 |
— |
Both |
VTOC – Refers to
the entire disk, by convention. The size of this slice should not be
changed. EFI – Optional slice to be defined based on your site's needs. |
3 |
/export, for
example |
Both |
Optional slice that can be defined based on your site's needs. Can be
used on a server to hold alternative versions of operating systems that are
required by client systems. |
4 |
|
Both |
Optional slice to be defined based on your site's
needs. |
5 |
/opt, for example |
Both |
Optional slice to be defined based on your site's needs. Can
be used to hold application software added to a system. If a
slice is not allocated for the /opt file system during installation, the /opt directory
is put in slice 0. |
6 |
/usr |
Both |
Holds OS commands (also known as executables). This slice
also holds documentation, system programs (init and syslogd, for example), and library
routines. |
7 |
/home or /export/home |
Both |
Holds files that are created by users. |
8 |
N/A |
N/A |
VTOC – Contains GRUB boot
information. EFI – A reserved slice created by default. This area is similar to
the VTOC's alternate cylinders. Do not modify or delete this slice. |
9 (x86 only) |
— |
Both |
EFI
– Not applicable. VTOC – Provides an area that is reserved for alternate disk
blocks. Slice 9 is known as the alternate sector slice. |
Note - On a disk with a VTOC label, do not modify slice or
use slice 2 to store a file system. Products, such as Solaris Volume
Manager and Live Upgrade, do not work correctly if slice 2 is modified
in any way.
Using Raw Data Slices
The disk label is stored in block 0 of each disk. So,
third-party database applications that create raw data slices must not start at block
0. Otherwise, the disk label will be overwritten, and the data on the
disk will be inaccessible.
Do not use the following areas of the disk for raw data
slices, which are sometimes created by third-party database applications:
Slice Arrangements on Multiple Disks
Although a single large disk can hold all slices and their corresponding file
systems, two or more disks are often used to hold a system's
slices and file systems.
Note - A slice cannot be split between two or more disks. However, multiple swap
slices on separate disks are allowed.
For instance, a single disk might hold the root (/) file system, a
swap area, and the /usr file system, while another disk holds the /export/home
file system and other file systems that contain user data.
In a multiple disk arrangement, the disk that contains the OS and swap
space (that is, the disk that holds the root (/) and /usr file
systems and the slice for swap space) is called the system disk. Other disks
are called secondary disks or non-system disks.
When you arrange a system's file systems on multiple disks, you can modify
file systems and slices on the secondary disks without having to shut down
the system or reload the OS.
When you have more than one disk, you also increase input-output (I/O) volume.
By distributing disk load across multiple disks, you can avoid I/O bottlenecks.
Determining Which Slices to Use
When you set up a disk's file systems, you choose not only the
size of each slice, but also which slices to use. Your decisions about
these matters depend on the configuration of the system to which the disk
is attached and the software you want to install on the disk.
System configurations that need disk space are as follows:
Servers
Stand-alone systems
Each system configuration can use slices in a different way. The following table
lists some examples.
Table 10-3 System Configurations and Slices
Slice |
Servers |
Stand-alone Systems |
0 |
root |
root |
1 |
swap |
swap |
2 |
— |
— |
3 |
/export |
— |
6 |
/usr |
/usr |
7 |
/export/home |
/home |
For more information about system configurations, see Overview of System Types in System Administration Guide: Basic Administration.
Note - The Solaris installation utility provides default slice sizes based on the software you
select for installation.
format Utility
Read the following overview of the format utility and its uses before proceeding
to the “how-to” or reference sections.
The format utility is a system administration tool that is used to prepare
hard disk drives for use on your Solaris system.
The following table shows the features and associated benefits that the format utility
provides.
Table 10-4 Features and Benefits of the format Utility
Feature |
Benefit |
Searches your system for all attached disk drives |
Reports on the following:
|
Retrieves disk labels |
Convenient for repair operations |
Repairs defective sectors |
Allows administrators to repair disk
drives with recoverable errors instead of sending the drive back to the manufacturer |
Formats
and analyzes a disk |
Creates sectors on the disk and verifies each sector |
Partitions
a disk |
Divides a disk into slices so that individual file systems can
be created on separate slices |
Labels a disk |
Writes disk name and configuration information to
the disk for future retrieval (usually for repair operations) |
The format utility options are described in Chapter 16, The format Utility (Reference).
When to Use the format Utility
Disk drives are partitioned and labeled by the Solaris installation utility when you
install the Solaris release. You can use the format utility to do the
following:
Display slice information
Partition a disk
Add a disk drive to an existing system
Format a disk drive
Label a disk
Repair a disk drive
Analyze a disk for errors
The main reason a system administrator uses the format utility is to partition
a disk. These steps are covered in Chapter 12, SPARC: Adding a Disk (Tasks) and Chapter 13, x86: Adding a Disk (Tasks).
See the following section for guidelines on using the format utility.
Guidelines for Using the format Utility
Table 10-5 format Utility Guidelines
Formatting a Disk
In most cases, disks are formatted by the manufacturer or reseller. So, they
do not need to be reformatted when you install the drive. To
determine if a disk is formatted, use the format utility. For more information, see
How to Determine if a Disk Is Formatted.
If you determine that a disk is not formatted, use the format
utility to format the disk.
When you format a disk, you accomplish two steps:
Caution - Formatting a disk is a destructive process because it overwrites data on the
disk. For this reason, disks are usually formatted only by the manufacturer or
reseller. If you think disk defects are the cause of recurring problems, you
can use the format utility to do a surface analysis. However, be careful
to use only the commands that do not destroy data. For details, see
How to Format a Disk.
A small percentage of total disk space that is available for data
is used to store defect and formatting information. This percentage varies according to disk
geometry, and decreases as the disk ages and develops more defects.
Formatting a disk might take anywhere from a few minutes to several hours,
depending on the type and size of the disk.