Go to main content

Managing Devices in Oracle® Solaris 11.3

Exit Print View

Updated: April 2018
 
 

Accessing Devices

To manage disks, file systems, and other devices, you must know how to specify device names. In most cases, you can use logical device names to represent devices that are connected to the system. Both logical and physical device names are represented on the system by logical and physical device files.

How Device Information Is Created

When a system is booted for the first time, a device hierarchy is created to represent all the devices connected to the system. The kernel uses the device hierarchy information to associate drivers with their appropriate devices. The kernel also provides a set of pointers to the drivers that perform specific operations.

The device hierarchy consists of the following:

  • The /devices directory – the name space of all devices on the system. This directory represents the physical devices that consists of actual bus and device addresses. The devfs file system manages this directory.

  • The /dev directory – the name space of logical device names. The dev file system manages this directory.

The devfsadm command manages system devices by performing the following operations:

  • It attempts to load every driver in the system and attach to all possible device instances.

  • It creates the device files in the /devices directory and the logical links in the /dev directory.

  • It maintains the path_to_inst instance database.

The devfsadmd daemon automatically updates the /dev and /devices directories in response to dynamic reconfiguration events or file system accesses. This daemon is started by the service management facility when a system is booted.

Device Naming Conventions

    In Oracle Solaris, devices are referenced in one of three ways:

  • Physical device name – Represents the full device path name in the device information hierarchy. The physical device name is created by when the device is first added to the system. Physical device files are found in the /devices directory.

  • Instance name – Represents the kernel's abbreviation name for every possible device on the system. For example, sd0 and sd1 represent the instance names of two disk devices. Instance names are mapped in the /etc/path_to_inst file.

  • Logical device name – The logical device name is created by when the device is first added to the system. Logical device names are used with most file system commands to refer to devices. For a list of file commands that use logical device names, see Figure 2, Table 2, Device Interface Type Required by Some Frequently Used Commands. Logical device files in the /dev directory are symbolically linked to physical device files in the /devices directory.

    Device name information is displayed with the following commands:

  • dmesg

  • format

  • sysdef

  • prtconf

Logical Disk Device Names

    Logical device names are used to access disk devices when you perform the following tasks:

  • Add a new disk to the system.

  • Move a disk from one system to another system.

  • Access or mount a file system residing on a local disk.

  • Back up a local file system.

Names of logical devices use the format /dev/[r]dsk/cntndn[sn,pn].

dev

Devices directory

[r]dsk

Raw disk device subdirectory

cn

Logical controller number

tn

Physical bus target number

dn

Drive number

[sn,pn]

Slice number (s0 to s7) or fdisk partition number (p0 to p4).

The following sections explain some of these name components in detail.

Disk Subdirectory

Some disk and file administration commands require the use of either a raw (or character) device interface, or a block device interface. Raw device interfaces transfer only small amounts of data at a time. Block device interfaces include a buffer from which large blocks of data are read at once.

The disk subdirectory you specify depends on the device interface required by the command.

  • When a command requires the raw device interface, specify the /dev/rdsk subdirectory. (The “r” in rdsk stands for “raw.”)

  • When a command requires the block device interface, specify the /dev/dsk subdirectory.

  • When you are not sure whether a command requires use of /dev/dsk or /dev/rdsk, check the man page for that command.

The following table shows which interface is required for some commonly used disk and file system commands.

Table 2  Device Interface Type Required by Some Frequently Used Commands
Command Reference
Interface Type
Example of Use
Block
dumpadm -d /dev/zvol/dsk/rpool/dump
Raw
prtvtoc /dev/rdsk/c0t0d0s0
Block
swap -a /dev/zvol/dsk/rpool/swap

Direct and Bus-Oriented Controllers

You might access disk partitions or slices differently depending upon whether the disk device is connected to a direct or bus-oriented controller. Generally, direct controllers do not include a target identifier in the logical device name.


Note -  Controller numbers are assigned automatically during system initialization. The numbers are strictly logical and imply no direct mapping to physical controllers.
  • To specify a slice on a disk with an IDE controller, use the naming convention cndn[sn,pn].

    cn

    Logical controller number

    dn

    Drive number

    [sn,pn

    Slice number (s0 to s7) or fdisk partition number (p0 to p4)

    To indicate the entire fdisk partition, specify slice 2 (s2).

  • To specify a slice on a disk with a bus-oriented controller, SCSI for example, use the naming convention cntndn[sn,pn].

    cn

    Logical controller number

    wn

    Physical bus target number

    dn

    Drive number

    [sn,pn

    Slice number (s0 to s7) or fdisk partition number (p0 to p4)

    To indicate the whole disk, specify slice 2 (s2).

Logical Tape Device Names

Logical tape device files are found in the /dev/rmt/* directory as symbolic links from the /devices directory. The naming convention is /dev/rmt/nd.

dev

Devices directory

rmt

Raw magnetic tape device directory

n

Drive number (0-n

d

Optional density, which can be l (low), m (medium), h (high), u (ultra), or c (compressed).

The first tape device connected to the system is 0 (/dev/rmt/0). Tape density values are described in Managing Tape Drives Tasks.

Logical Removable Media Device Names

Since removable media is managed by removable media management services, the logical device name is usually not used unless you want to mount the media manually.

The logical device name that represents the removable media devices on a system are described in Accessing Removable Media.