Skip Navigation Links
Exit Print View
| Oracle Solaris Cluster Reference Manual Oracle Solaris Cluster 4.1

Search Scope:

- This Document
- Entire Library

### scdidadm

- device identifier configuration and administration utility wrapper

### Synopsis

    /usr/cluster/bin/scdidadm -b combined-did-instance

    /usr/cluster/bin/scdidadm -C

    /usr/cluster/bin/scdidadm -c

    /usr/cluster/bin/scdidadm -F {pathcount | scsi3 | useglobal} instance

    /usr/cluster/bin/scdidadm -G

    /usr/cluster/bin/scdidadm -G {pathcount | prefer3}

    /usr/cluster/bin/scdidadm {-l | -L} [-h] [-o fmt]… [path | instance]

    /usr/cluster/bin/scdidadm -R {path | instance | all}

    /usr/cluster/bin/scdidadm -r

    /usr/cluster/bin/scdidadm -T remote-nodename -e replication-type

    /usr/cluster/bin/scdidadm -t source-instance:destination-instance -e replication-type
    [-g replication-device-group]

    /usr/cluster/bin/scdidadm [-u] [-i]

    /usr/cluster/bin/scdidadm -v

## Description

Note - Oracle Solaris Cluster software includes an object-oriented command set. Although Oracle Solaris Cluster software still supports the original command set, Oracle Solaris Cluster procedural documentation uses only the object-oriented command set. For more information about the object-oriented command set, see the `Intro`(1CL) man page.

The `scdidadm` utility administers the device identifier (DID) pseudo device driver `did`.

The `scdidadm` utility performs the following primary operations:

- Creates driver configuration files

- Modifies entries in the file

- Loads the current configuration into the kernel

- Lists the mapping between device entries and `did` driver instance numbers

The startup script `/etc/init.d/bootcluster` uses the `scdidadm` utility to initialize the `did` driver. You can also use `scdidadm` to update or query the current device mapping between the devices present and the corresponding device identifiers and `did` driver instance numbers.

The `devfsadm`(1M) command creates the file system device entry points.

You can use this command only in the global zone.

## Options

The following options are supported:

`-b`

  Returns a replicated DID instance to its prior state of being two separate DID instances. Use this option to correct a configuration mistake or to prepare for a configuration change that affects the original DID instances.

  You can only use this option from a node that is booted in cluster mode. You can use this option only in the global zone.

  Before you use the `-b` option, remove the replicated device from all device groups that use it. Then specify this option from one of the nodes whose DID instance was absorbed into the combined DID instance.

  You need `solaris.cluster.device.modify` RBAC authorization to use this command option. See `rbac`(5).

`-C`

  Removes all DID references to underlying devices that have been detached from the current node.

  You can only use this option from a node that is booted in cluster mode. You can use this option only in the global zone.

  Specify this option after the Solaris device commands have been used to remove references to nonexistent devices on the cluster nodes.

  The `-F` option does not affect the fencing protocol of a configured quorum device.

  You need `solaris.cluster.device.modify` RBAC authorization to use this command option. See `rbac`(5).

`-c`

  Performs a consistency check against the kernel representation of the devices and the physical devices.

  You can use this option only in the global zone.

  On failing a consistency check, an error message is displayed. The process continues until all devices have been checked.

  You need `solaris.cluster.device.read` RBAC authorization to use this command option. See `rbac`(5).

`-e` type

  Specifies the replication type.When specifying the SRDF replication type, this option can only be used with the `-t` option.

`-F`

  Overrides the global default fencing algorithm for individual specified devices.

  The default fencing algorithm for a device can be set to one of the following values:

  `pathcount`

    Determines the fencing protocol by the number of DID paths that are attached to the shared device.

    - For a device that uses fewer than three DID paths, the command sets the SCSI-2 protocol.

    - For a device that uses three or more DID paths, the command sets the SCSI-3 protocol.

  `scsi3`

    Sets the SCSI-3 protocol. If the device does not support the SCSI-3 protocol, the fencing protocol setting remains unchanged.

  `useglobal`

    Sets the global default fencing setting for the specified devices.

  By default, the global default fencing algorithm is set to `pathcount`. See the description of the `-G` option for information about setting the global default for fencing.

  You can specify the device to modify by its instance number. The command accepts a space-delimited list of multiple devices. See the description of the `-o` option for more information about the `instance` form of device names.

  The `-F` option does not affect the fencing protocol of a configured quorum device.

  You need `solaris.cluster.device.modify` RBAC authorization to use this command option. See `rbac`(5).

`-G`

  Sets or displays the current global default fencing algorithm for all shared devices.

  When specified alone, the `-G` option displays the current global default fencing algorithm setting.

  When specified with a setting value, the `-G` option sets the global default fencing to that value for all devices. The global default fencing can be set to one of the following values:

  `prefer3`

    Sets the SCSI-3 protocol for device fencing for all devices. The `pathcount` setting is assigned to any devices that do not support the SCSI-3 protocol.

  `pathcount`

    Determines the fencing protocol by the number of DID paths that are attached to the shared device.

    - For devices that use fewer than three DID paths, the command sets the SCSI-2 protocol.

    - For devices that use three or more DID paths, the command sets the SCSI-3 protocol.

  By default, the global default fencing algorithm is set to `pathcount`.

  The `-G` option does not affect the fencing protocol of a configured quorum device.

  You need `solaris.cluster.device.modify` RBAC authorization to use this command option. See `rbac`(5).

`-g`

  Specifies the replication device group.

`-h`

  Prints a header when listing device mappings.

  This option is meaningful only when used with the `-l` and `-L` options.

`-i`

  Initializes the `did` driver.

  You can use this option only in the global zone.

  Use this option if you want to enable I/O requests to the `did` driver.

  You need `solaris.cluster.device.modify` RBAC authorization to use this command option. See `rbac`(5).

`-L`

  Lists all the paths, including those on remote hosts, of the devices in the DID configuration file.

  You can use this option only in the global zone.

  The output of this command can be customized using the `-o` option. When no `-o` options are specified, the default listing displays the instance number, all local and remote fullpath strings, and the fullname.

  You need `solaris.cluster.device.read` RBAC authorization to use this command option. See `rbac`(5).

`-l`

  Lists the local devices in the DID configuration.

  You can use this option only in the global zone.

  The output of this command can be customized using the `-o` option. When no `-o` options are specified, the default listing displays the instance number, the local fullpath, and the fullname.

  You need `solaris.cluster.device.read` RBAC authorization to use this command option. See `rbac`(5).

`-o` fmt

  Lists the devices currently known to the `did` driver according to the format specification fmt.

  Multiple `-o` options can be specified. The fmt specification is interpreted as a comma-separated list of format option arguments. This option is meaningful only when used with the `-l` and `-L` options. The available format option arguments are the following:

  `instance`

    Prints the instance number of the device known by the `did` driver, for example, `1`.

  `path`

    Prints the physical path name of the device associated with this device identifier, for example, `/dev/rdsk/c0t3d0`.

  `fullpath`

    Prints the full physical path name of the device that is associated with this device identifier. This path name includes the host, for example, `phys-hostA:/dev/rdsk/c0t3d0`.

  `host`

    With the `-L` option, prints the names of all hosts that have connectivity to the specified device, one per line. With the `-l` option, prints the name of the local host that has connectivity to the specified device.

  `name`

    Prints the DID name of the device associated with this device identifier, for example, `d1`.

  `fullname`

    Prints the full DID path name of the device associated with this device identifier, for example, `/dev/did/rdsk/d1`.

  `diskid`

    Prints the hexadecimal representation of the device identifier associated with the instance of the device being listed.

  `asciidiskid`

    Prints the ASCII representation of the device identifier associated with the instance of the device being listed.

  `defaultfencing`

    Prints the default fencing algorithm set to the device.

`-R` {path | instance | all}

  Performs a repair procedure on a particular device instance.

  You can use this option only in the global zone.

  The argument to this command can be either a particular physical device path that has been replaced with a new device, or the instance of the device that was just replaced. When used with the `all` keyword, the `scdidadm` utility updates the configuration data of all devices connected to the node.

  You can only use this option from a node that is booted in cluster mode.

  You need `solaris.cluster.device.modify` RBAC authorization to use this command option. See `rbac`(5).

`-r`

  Reconfigures the database.

  You can use this option only in the global zone.

  When you specify this option, a thorough search of the `rdsk` and `rmt` device trees is conducted. A new instance number is assigned for all device identifiers that were not recognized before. A new path is added for each newly recognized device.

  You can only use this option from a node that is booted in cluster mode.

  You need `solaris.cluster.device.modify` RBAC authorization to use this command option. See `rbac`(5).

`-T` remote-nodename

  Configures DID devices for use with the storage-based replication type you specify with the `-e` replication—type argument.

  You can use this option only in the global zone.

  Run this option from only one of the nodes configured with replicated devices. Use the remote-nodename option argument to specify the name of the remote node.

  DID instances on the local node will be combined with the corresponding DID instance on the remote node, merging each pair of replicated devices into a single, logical DID device.

  You need `solaris.cluster.device.modify` RBAC authorization to use this command option. See `rbac`(5).

`-t` source-instance:destination-instance

  Moves the DID instance from the original source to a new destination instance that you specify with the destination-instance option argument.

  You can use this option only in the global zone.

  Use this option to move a DID instance back to its original location if the instance local was accidentally changed. After you run the command on all cluster nodes that are connected to the shared storage, run the `devfsadm` and `scgdevs` commands from one node to update the global-devices namespace with the configuration change.

  If the destination-instance does not exist within the cluster, the DID device paths corresponding to the value of the source-instance argument are removed and recreated with the destination-instance you specify.

  If the destination-instance already exists within the cluster, the path or paths for the source-instance are combined with the path or paths for the destination-instance, resulting in a single DID destination instance that contains all the paths for both instances.

  Include the `-e` option to specify the replication type. If you are using an SRDF replication device, you must use the `-g` option to specify the replication device group.

  You need `solaris.cluster.device.modify` RBAC authorization to use this command option. See `rbac`(5).

`-u`

  Loads the device identifier configuration table into the kernel.

  You can use this option only in the global zone.

  This option loads all the currently known configuration information about device paths and their corresponding instance numbers into the kernel.

  You need `solaris.cluster.device.modify` RBAC authorization to use this command option. See `rbac`(5).

`-v`

  Prints the version number of this program.

  You can use this option only in the global zone.

## Examples

Example 1 Adding Devices Attached to the Local Host to the CCR

    # scdidadm -r

Example 2 Listing the Physical Path of the Device

The following example lists the physical path of the device that corresponds to instance `2` of the `did` driver:

    % scdidadm -l -o path 2
    /dev/dsk/c1t4d0

Example 3 Specifying Multiple Format Options

You can specify multiple format option arguments in either of the following ways:

    % scdidadm –l –o path –o name 2

    % scdidadm -l -o path,name 2

In either example, the output might look like this:

    /dev/dsk/c1t4d0 d1

Example 4 Configuring DID Devices for Use With EMC SRDF Storage-Based Replication

The following example configures a local DID device and a remote DID device for use with EMC SRDF storage-based replication. The command is run from a local source node that is configured with replicated devices. DID instances on the source node are combined with the corresponding DID instance on the remote destination node, `phys-schost-1` .

    # scdidadm -t 15:10 -e srdf -g devgroup1

Example 5 Unconfiguring a Replicated DID Device

The following example returns the replicated DID device `d25` to its original DID device components. This DID device was created by combining path `d15` on `phys-schost-1` with path `d25` on `phys-schost-2`. Because path `d15` was merged into path `d25` when the two paths were combined, you must run the command from `phys-schost-1` to ensure that path `d15` is restored.

    phys-schost-1# scdidadm -b 25

Example 6 Moving a DID Instance

The following example moves the DID instance on the source instance, `15`, to a new DID instance, `10`, then updates the configuration change in the global-devices namespace.

    # scdidadm -t 15:10
    # devfsadm
    # scgdevs

Example 7 Performing a Repair Procedure

The following example performs the repair procedure for a particular device path. The device `/dev/dsk/c1t4d0` has been replaced with a new device with which a new device identifier is associated. The database is updated to show that this new device identifier corresponds to the instance number that was previously associated with the old device identifier:

    # scdidadm -R c1t4d0

Example 8 Performing a Repair Procedure

An alternative method of performing a repair procedure is to use the instance number associated with the device path. For example, if the instance number for the device `c1t4d0` in the previous example is `2`, then the following syntax performs the same operation as the previous example:

    # scdidadm -R 2

Example 9 Globally Setting the SCSI Protocol

The following example sets all SCSI devices in the cluster to the SCSI-3 protocol, except configured quorum devices and devices that do not support the SCSI-3 protocol. Any devices that do not support the SCSI-3 protocol are instead set to `pathcount`.

    # scdidadm -G prefer3

Example 10 Displaying the SCSI Protocol of a Single Device

The following example displays the SCSI protocol setting for the device `/dev/rdsk/c0t3d0`.

    # scdidadm -L -o defaultfencing /dev/rdsk/c0t3d0

Example 11 Setting the SCSI Protocol of a Single Device

The following example sets the device `11`, specified by instance number, to the SCSI-3 protocol. This device is not a configured quorum device and supports the SCSI-3 protocol.

    # scdidadm -F scsi3 11

## Exit Status

The following exit values are returned:

`0`

  The command completed successfully.

`1`

  An error occurred.

## Attributes

See `attributes`(5) for descriptions of the following attributes:

ATTRIBUTE TYPE | ATTRIBUTE VALUE
--- | ---
Availability | ha-cluster/system/core
Interface Stability | Evolving

## See Also

`Intro`(1CL), `cldevice`(1CL), `devfsadm`(1M), `scgdevs`(1M), `did`(7)

Oracle Solaris Cluster System Administration Guide

## Notes

Each multiported tape drive or CD-ROM drive appears in the namespace once per physical connection.

Copyright © 2000, 2012, Oracle and/or its affiliates. All rights reserved. Legal Notices |