Servers & Storage

PERC CLI (perccli) basics: check controller, disk and virtual disk status

Install Dell PERC CLI and use read-only perccli commands to check controllers, virtual disks, physical disks, rebuild progress and the event log.

Published
Reading time
8 min read

PERC CLI (perccli / perccli64) is Dell's command-line tool for PowerEdge RAID Controllers. It runs inside the installed operating system (Windows, Linux or VMware ESXi), so you can check RAID health over SSH or a console without rebooting into System Setup. This guide sticks to the read-only show commands from Dell's PowerEdge RAID Controller 9, 10, and 11 Command Line Interface Reference Guide and lists the commands that change data separately, so you know which ones to avoid while you are only checking status.

Before you start

  • This guide covers PERC 9, 10 and 11 controllers (for example H730P, H740P, H755, H355). PERC 12 and PERC 13 (H965 and H975 series) are covered by a separate guide, the PERC13, PERC12 and HBA465 CLI Reference Guide, which uses the PERCCLI2 tool. Check that guide for its syntax.
  • You need Administrator (Windows) or root (Linux, ESXi) access on the server.
  • Download the PERC CLI package for your controller and OS from the Dell support site (Drivers & Downloads for your Service Tag).
  • Dell's guide warns not to use PERC CLI in scripts that poll frequently, because the commands add overhead that can hurt performance. For ongoing monitoring use iDRAC alerts instead.

Step 1 — Install PERC CLI and open a prompt

Dell knowledge base article 000217748 describes the install for each OS:

  • Red Hat and similar (RPM): extract the downloaded tarball and install the RPM with rpm -ivh (use rpm -Uvh to upgrade). The tool installs to /opt/MegaRAID/perccli.
  • Ubuntu (DEB): install the .deb package with dpkg -i. The tool is also in /opt/MegaRAID/perccli.
  • VMware ESXi: enable the ESXi Shell or SSH, upload the package to a datastore, extract it and install the .vib for your ESXi version with esxcli software vib install -v followed by the full path to the file. Dell's KB says the tool is then in /opt/lsi/perccli64, while the reference guide says /opt/lsi/perccli. Check which folder exists on your host.
  • Windows Server: run the downloaded package to extract it. The reference guide says to copy perccli.exe and perccli64.exe to C:\Windows\System32, then run the commands from an Administrator command prompt.
cd /opt/MegaRAID/perccli
./perccli64 show

The examples below use perccli as the command name, as in the reference guide. On 64-bit systems the binary is usually perccli64. The tool is not case sensitive, but Dell warns that options must be in the same order as in the guide's examples, or the command fails.

Step 2 — Find the controllers

perccli -v
perccli show ctrlcount
perccli show
perccli show all
  • perccli -v shows the version of the tool.
  • show ctrlcount shows how many controllers were detected.
  • show gives a summary: number of controllers, host name, OS and an overview of the configuration.
  • show all adds the drives that need attention and the advanced software options.

Controllers are numbered from 0. Use that index as /c0, /c1 and so on in the next commands.

Step 3 — Check the controller summary

perccli /c0 show
perccli /c0 show all
perccli /c0 show personality
perccli /c0 show freespace

/c0 show is the best single status command. It shows the controller, foreign configurations, drive groups, virtual drives, physical drives, enclosures and battery information. /c0 show all adds bus information, policies, defaults, capabilities and scheduled tasks. show personality shows the controller mode (eHBA mode is listed as eHBA), and show freespace shows usable free space on the disk groups.

Step 4 — Check virtual disks and their background tasks

perccli /c0/v0 show
perccli /c0/v0 show all
perccli /c0/dall show

/c0/v0 show summarises virtual drive 0; show all adds its physical drives and properties. /c0/dall show shows the drive group topology. In the VD list, check the State column and the legend printed under the table. In Dell's sample output, healthy RAID 5 and RAID 0 virtual disks show an optimal state; any other state needs investigation.

To see the progress of tasks running on a virtual disk, use:

CommandShows
perccli /c0/v0 show initInitialization progress in percent
perccli /c0/v0 show bgiBackground initialization progress (BGI does not run on RAID 0)
perccli /c0/v0 show ccConsistency check progress
perccli /c0/v0 show migrateVirtual drive migration progress

Step 5 — Check physical disks

perccli /c0/eall/sall show
perccli /c0/e32/s4 show all

The first command lists every drive behind every enclosure. The second shows full details for one drive (here enclosure 32, slot 4). Take the enclosure ID and slot from the EID:Slt column of the first command. If no enclosure is used, give only the controller and slot, for example /c0/s4. The guide notes that enclosure IDs can change if cables fail or are removed.

The legend printed under the drive table includes these states:

CodeMeaning
OnlnOnline (member of a virtual disk)
UGoodUnconfigured Good
UBadUnconfigured Bad
OfflnOffline
GHS / DHSGlobal hot spare / Dedicated hot spare

Non-RAID disks show up with perccli /c0/eall/sall show jbod. To find a drive in the rack, turn on its LED with perccli /c0/e32/s4 start locate and turn it off with perccli /c0/e32/s4 stop locate.

Step 6 — Watch rebuilds and scheduled checks

perccli /c0/e32/s4 show rebuild
perccli /c0 show rebuildrate
perccli /c0 show patrolread
perccli /c0 show cc

show rebuild gives the rebuild progress of a drive in percent. show rebuildrate shows the rebuild task rate as a percentage; Dell notes that a high rebuild rate slows I/O. show patrolread and show cc show the patrol read and consistency check settings, such as the state and start time. For the full rebuild procedure, see replace a failed disk on Dell PERC.

Step 7 — Battery, preserved cache and foreign configuration

perccli /c0/bbu show status
perccli /c0 show preservedCache
perccli /c0/fall show all

/c0/bbu show status shows battery summary information. show preservedCache shows any virtual disk whose dirty cache was preserved after it went offline or missing. /c0/fall show all shows any foreign configuration, which is common after moving disks between servers. These commands only read; deciding whether to import or clear is covered in import or clear a PERC foreign configuration.

Step 8 — Save the controller event log

When you open a case with Dell or your support provider, export the controller events to a file:

perccli /c0 show events file=/tmp/perc-c0-events.txt
perccli /c0 show eventloginfo

On Windows the guide's example is perccli /c0 show events file=C:\Users\Administrator\Documents\eventreport. The command also accepts a type= option (sincereboot, sinceshutdown, includedeleted, latest=x) and a filter= option (info, warning, critical, fatal). In Dell's definitions, critical means a component failed but no data was lost; fatal means data loss has occurred or will occur.

Commands that change data

Warning: The commands below are not status checks. They delete virtual disks, clear foreign configurations, delete preserved cache, take drives offline or erase logs. Do not run them unless you have a verified backup and a reason to. Back up first.

  • perccli /cx/vx|vall del and del force — delete one or all virtual drives; the data is no longer accessible.
  • perccli /cx/fx|fall del — deletes the foreign configuration.
  • perccli /cx/vx delete preservedcache — discards the preserved cache.
  • perccli /cx[/ex]/sx set offline and set missing — take a member drive out of its array.
  • perccli /cx delete events — deletes all records in the controller event log. Export the log first.

Frequently asked questions

Can I use the same perccli commands on a PERC 12 controller?

No. PERC 12 and PERC 13 controllers have their own CLI Reference Guide, which uses PERCCLI2. Use that guide's syntax instead of the PERC 9, 10 and 11 guide.

Why does a perccli command fail with correct-looking options?

Dell's reference guide says options must be given in the same order as in its examples; otherwise the command fails. Copy the order from the guide.

Checklist

  • Right tool for the controller: perccli for PERC 9, 10 and 11, PERCCLI2 for PERC 12 and 13.
  • perccli show finds every controller.
  • /c0 show reviewed: virtual disk state, drive states, battery.
  • No drives in UBad or Offln state; rebuilds tracked with show rebuild.
  • Foreign configuration and preserved cache checked before any change.
  • Event log exported to a file before opening a support case.
  • No delete or set commands run without a verified backup.

Skyline can supply, configure and maintain Dell, HPE and Huawei servers under an annual maintenance contract (AMC). Contact us.

SKYLINE Engineering

@skyline

The engineering team at SKYLINE Industrial Solutions. We publish field-tested guides drawn from real KSA and GCC deployments.

See author profile
SKYLINE engineering services

Need this implemented for you?

Reading is free — building it right takes a team. SKYLINE engineers ship Servers & Storage for Aramco vendors, banks, hospitals and government agencies across Saudi Arabia. Talk to us before you start.

Aramco Approved Contractor ISO 9001 · ISO 27001 SAMA CSF aligned NCA ECC ready 247+ KSA clients

Comments

0 total · 0 threads
Be the first to leave a comment.