EMC Symmetrix Cheat Sheet

This article is a simple cheat sheet to remind me of the symcli usage which I rarely use these days.

SYMMASKDB

Table 1 — SYMMASKDB commands
sub-commandComments / Example
init create and initialises a device masking database. On completion, the database device cannot be written to by the operating system.
# symmaskdb -sid 1234 init -f vcmdb.db
NOTE: This command only needs to be run once otherwise all SAN configuration is lost.
backup backs up the database to a specified file
# symmaskdb -sid 1234 -file <backup_filename> backup
restore restore a database file
# symmaskdb -sid 1234 -file <restore_filename> restore
remove removes the meta member devices
list database lists for each symmetrix fibre director which devices in a symmetrix system a WWN can access
# symmaskdb –sid 1234 list database
# symmaskdb -sid 1234 list database -wwn 10000000ab12cd34
# symmaskdb -sid 1234 list database -wwn 10000000ab12cd34 -dir 07a -p 1
Check which devices are masked to given FA port
# symmaskdb -sid 1234 list database -dir 11f -p 0
list devs (-wwn) lists all devices accessible to an HBA on a specified symmetrix system and all directors that access each device
# symmaskdb -sid 1234 list devs -wwn 10000000ab12cd34
(shows one line per device and its size, lun number etc)
list assignment (-dev) list the HBA assignments to devices
# symmaskdb -sid 1234 -dev 0A1,0BC3:0BC7 list assignment
list capacity (-host) lists the capacity of devices assigned to a particlur host
# symmaskdb -sid 1234 list capacity -host hostA
# symmaskdb -sid 1234 list capacity -host hostA -dir 0A1 -p 1

SYMDEV

Table 2 — SYMDEV commands
sub-commandComments / Example
list list all available devices
# symdev list
-v list detailed information for a device (may take a long time to run)
# symdev -v list
show <symdevname> display meta device information
# symdev -sid 1234 show 512
# symdev -side 1234 -range 0a0:0a7
-noport list list available devices that are not mapped to any ports
# symdev -sid 1234 -noport list

SYMPD

Table 3 — SYMPD commands
sub-commandComments / Example
list list the symmetrix devices that are accessed through fibre channel
# sympd list
list -vcm list all the physical devices in the device masking database
# sympd list -vcm

SYMCFG

Table 4 — SYMCFG commands
sub-commandComments / Example
list -v lists whether the symmetrix director has device masking turned on
list -address -fa -available -all lists all fibre directors in a symmetrix system and which devices they can access
# symcfg –sid 1234 list -address -available -fa 7e –p 0
list -fa all lists all fibre directors (FA) in a symmetrix system
# symcfg –sid 1234 -fa all list
list -fa <port> -v lists detailed information on a FA port
# symcfg -side 1234 -fa 7B list -v
-application list list applications using the symmetrix
# symcfg -side 1234 -application list
-connections list list host connections to the array
# symcfg -side 1234 -connections list

SYMMASK

Table 5 — SYMMASK commands
sub-commandComments / Example
add devs add a device to the list of devices that a WWN can access in the database
# symmask -sid 1234 -dir 9b -p 0 -wwn 1000000ab12cd34 add devs 4a5,4b9:4c5
remove devs remove a device from the list of devices that a WWN can access in the database
# symmask -sid 1234 -dir 9b -p 0 -wwn 1000000ab12cd34 remove devs 4a5,4b9:4c5
delete deletes all access rights for a WWN in the database
# symmask -sid 1234 -wwn 1000000ab12cd34 delete -dir 9b -p 0 -login
replace allows one HBA to replace another
set lockdown sets or clears the fibre channel ID lockdown
# symmask set lockdown
set visibility sets or clears visibility for noncontiguous LUNS
# symmask set visibility
set lunoffset sets or clears a LUN base/offset skip for noncontiguous LUNS
# symmask set lunoffset
set heterogeneous sets or clears heterogeneous host inform with distinctive attributes
# symmask set heterogeneous
rename changes the AWWN for the specified WWN in the database and login history table
# symmask -sid 1234 -dir 8a -p 0 -wwn 1000000ab12cd34 rename hostA/hba1>
# symmask -sid 1234 -dir 8a -p 0 -wwn 1000000ab12cd34 rename -alias hostA/hba1
refresh causes the symmetrix system to refresh its WWN related memory tables with the contents of the database
NOTE:If you update the VCMDB you must run this command to see your changes
# symmask -sid 1234 refresh
discover hba discovers the HBA on the host and assigns AWWN to the login history table entries for thoses WWNs that are not set
# symmask discover hba
list logins lists foreach fibre director which hosts and HBAs are logged into the symmetrix. (displays the login history table contents)
# symmask -sid 1234 list logins (whole array)
# symmask -sid 1234 list logins -dir 3a -p 0 (on given port)
list hba lists WWNs of the fibre HBAs on this host.
# symmask list hba
# symmask list hba -v

SYMCONFIGURE

Table 6 — SYMCONFIGURE commands
sub-commandComments / Example
verify verify that we have access to the symmetrix and we can make changes
# symconfigure -sid 1234 -f <filename> verify
preview confirm that the syntax is correct (since we use a mapping files)
# symconfigure -sid 1234 -f <filename> preview
commit commit the changes to the database
# symconfigure -sid 1234 -f <filename> commit

Contol File & Log File locations

Table 7 — Common control file and log file locations
LocationComments
/var/symapi/db/symapi_db.bin default symapi database file
/var/symapi/config/netcnfg lists the network services available from that host
/var/symapi/config/options the options file contains behavior parameters that can be set tocritically change default behavior of SYMCLI operations, SYMAPI calls and their control actions
/var/symapi/config/symavoide identifies devices to skip over when looking for devices
/var/symapi/config/gkavoid identifies devices not chosen as gatekeepers
/var/symapi/config/inqfile lists devices to be added to the symapi database
/var/symapi/log/symapi-<date>.log logfile for symcli.symapi functions, calls, activities

Examples

VCMDB

  • Initialize the VCMDB
    # symmaskdb -sid 1234 init -f newinit.db
    Note: This command only needs to be run once otherwis SAN configuration is lost, also make sure the database is up regularly.
  • Backup the VCMDB
    # symmaskdb -sid 1234 -file <filename> backup
  • Restore the VCMDB
    # symmaskdb -sid 1234 -file <filename> restore
  • Refresh the database
    # symmask -sid 1234 refresh
    Note: Remember any changes to the VCMDB have to be uploaded to the symmetrix memory, otherwise you will loose your changes
  • List the database
    # symmaskdb -sid 1234 list database
  • List a specific device
    # symmaskdb -sid 1234 -dev abcd list assignment -v

FA Ports

  • List currently configured FA port settings
    # symcfg -sa <##|all> [-p <#>] list -v
  • List currently visable devices on a FA port
    # symcfg -side 1234 -FA 13D -address list

Disk Devices

  • List all devices within the array
    # symdev list
    # inq
  • List a specific device within the array
    # symmaskdb -sid 1234 -dev 0029 list assignment -v
  • Add access to the symmetrix devices
    # symmask -sid 1234 -wwn 10000000ab12cd34 -dir 15c -p 0 add 0029,002A,002B
    • dir — director port
    • p — port number on the director port
    Note: The devices are symmetrix devices ID's not LUN ID this is know as LUN masking.
  • Remove access from the symmetrix devices
    # symmask -sid 1234 -wwn 10000000ab12cd34 remove devs 0029,002A,002B
  • List devices available assigned to the specific host
    # symmaskdb -sid 1234 -host 10000000ab12cd34 list capacity
  • Display meta devices
    # symdev show <symdevname>

HBA

  • Register the HBA with the VCMDB
    # symmask discover hba
  • List HBAs in local host
    # symmask list hba -v
  • List HBAs to FA port logins
    # symmask -sid 1234 list logins