Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

[Plugin] Storage Topology – SAS controllers, cables, shelves and bays at a glance

Featured Replies

Mods: this is the support thread for my first plugin. Could you move it to Plugin Support? Thanks!

Storage Topology adds a read-only page at Tools → System Information → Storage Topology that shows how your SAS storage is wired and how healthy it is, from the controller down to each bay.

I wrote it because I couldn't find a single place that answered "which HBA port goes to which shelf, is every lane at 12 Gb/s, are both I/O modules on the same firmware, and is a PSU or fan unhappy?" without running a dozen storcli and sg_ses commands.

What it shows

  • Controllers: model, firmware package, BIOS, driver, mode (e.g. JBOD), chip temperature, and every port with its width (x4/x8) and the link rate of each lane, plus what is attached to it.

  • Cable map: which controller port goes to which shelf I/O module port, and shelf-to-shelf cables, with the cable's vendor, part and serial number where the enclosure reports them.

  • Disk shelves: I/O modules (status, firmware, serial), power supplies (status, firmware, wattage), fans (rpm), voltages, currents and all temperature sensors.

  • Bay grid: each bay with the Unraid disk name (linked to the disk page), size, model, temperature and negotiated vs maximum link rate (e.g. 6G/12G), with error counts flagged.

  • Drive details: firmware, both SAS paths with their link rates, and media, other and predictive-failure counts.

  • Firmware overview: every controller, I/O module, PSU and drive model with its versions. Parts of the same kind running different firmware are highlighted.

  • Problems list at the top: failed or degraded elements, firmware mismatches, narrow or slow links, single paths, drive errors, and over-temperature enclosures. That includes NVMe switch cards that expose SES; mine flagged a HighPoint card running at 86 °C.

image.png

image.png

It changes nothing

The plugin only reads:

  • storcli … show … J nolog, if storcli is installed

  • sg_ses status pages

  • lsscsi and lsblk

  • the kernel's SAS and enclosure sysfs

  • emhttp's disks.ini

There are no settings, no background service and no cron job. Data is collected when you open the page and cached for 60 seconds, and only one collection runs at a time. Each command has a timeout, and a storcli that stops responding isn't sent more commands.

Opening the page never wakes a spun-down drive: per-drive storcli detail is skipped while any disk is spun down.

Requirements

  • Unraid 7.0 or newer.

  • sg_ses (sg3_utils 1.48+). Unraid 7 already includes it.

  • Optional: Broadcom/LSI storcli (or storcli64) for controller, port and per-drive detail. Without it, the page falls back to the kernel's view: HBA PHY link rates, and bays mapped to disks through /sys/class/enclosure. MegaRAID controllers hide their SAS layer from the kernel, so they need storcli.

Tested on

  • Broadcom MegaRAID 9580-8i8e in JBOD mode, with two NetApp DS424 (IOM12) shelves, multipathed, 43 drives

  • HighPoint Rocket 1528D NVMe switch card (SES temperature, fan and slot status)

The kernel-view path for LSI HBAs in IT mode (mpt3sas) is implemented but not yet tested on real IT-mode hardware. If you run one, I'd love a report. Other shelves (Supermicro, Dell MD12xx, HP D2600/D3600, EMC/Xyratex) should show status and sensors. Cable and port labels currently come from NetApp's descriptor format, so they may be sparser on other shelves.

Install

Plugins → Install Plugin, and paste:

https://raw.githubusercontent.com/davidcoulson/unraid-storage-topology/main/storage-topology.plg

Source and issues: https://github.com/davidcoulson/unraid-storage-topology (MIT)

Reporting problems or adding support for your hardware

Please post in this thread or open a GitHub issue. Include:

  • your controller and enclosure models

  • what looks wrong

  • if you can, the output of:

    • lsscsi -g

    • sg_ses --json --join /dev/sgN for each enclosure

    • (with storcli) storcli /call show all J nolog and storcli /call/eall show all J nolog

Feel free to blank out serial numbers first.

Changelog

  • 2026.10.09a: the install message now reports storcli correctly.

  • 2026.10.09: first release.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.