Install HP Smart Storage Admin CLI (ssacli) on your PVE (or debian) node background

Install HP Smart Storage Admin CLI (ssacli) on your PVE (or debian) node

Outdated information [deprecated on 6th of feb 2026]

HPE removed the public linux repository, so this guilde became obsolete. The content is left here for archival purposes

Open a terminal of your PVE host (be it via SSH or via the pve webui) and check which Debian release you are using. PVE 8 is based off of Debian 12 codenamed "Bookworm".

root@ethos:~# cat /etc/apt/sources.list
deb http://ftp.si.debian.org/debian bookworm main contrib

deb http://ftp.si.debian.org/debian bookworm-updates main contrib

# security updates
deb http://security.debian.org bookworm-security main contrib

deb http://download.proxmox.com/debian/pve bookworm pve-no-subscription

Here we add the HP signing key. Other tutorials provide two more keys (three in total), but those are - to my understanding - not required for this (ssacli) repository, so we'll only be adding one.

curl -fsSL https://downloads.linux.hpe.com/SDR/hpePublicKey2048_key1.pub | gpg --dearmor > /etc/apt/keyrings/hpePublicKey2048_key1.gpg
chmod 0644 /etc/apt/keyrings/hpePublicKey2048_key1.gpg

Add the repository to your APT sources (make sure you use correct OS release codename - in this case, at the time of writing, it is "bookworm"), update and install ssacli package

cat <<EOT > /etc/apt/sources.list.d/hp-mcp.list
deb [signed-by=/etc/apt/keyrings/hpePublicKey2048_key1.gpg] http://downloads.linux.hpe.com/SDR/repo/mcp bookworm/current non-free
EOT
apt update && apt install -y ssacli

You will most likely get the following warning after running apt update. You can safely ignore it as HPE (at least as of 31th of Oct 2024) have not migrated to the new format yet

N: Repository 'Debian bookworm' changed its 'non-free component' value from 'non-free' to 'non-free non-free-firmware'
N: More information about this can be found online in the Release notes at: https://www.debian.org/releases/bookworm/amd64/release-notes/ch-information.html#non-free-split

HPE provides SSACLI packages in .rpm packaging format on their support page.

In this guide you will download the rpm package, verify its signature, extract its content and install it on your Proxmox VE (or any Debian based distribution) machine.

Search with some results on the softwaredetails subpage of the support.hpe.com website

Search for "ssa cli linux" (hotlink) and find the relevant "variant" for your server. The general "HPE Smart Storage Administrator (HPE SSA) CLI for Linux 64-bit" is usually ok, but there are also variants like "for Gen10/Gen10 Plus/Gen11 Controllers".

Software variant page with important text marked with red-bordered boxes

When you decide which one you will use first make sure you are looking at the latest version of the variant (marked with numbers 1 and 2), click the "Download software" button (marked with 3), you will get a popup, click the "copy curl" button, you will download a .txt file, open it and it should look something like the following

curl -fL -o "ssacli-4.21-7.0.x86_64.compsig" https://downloads.hpe.com/pub/softlib2/software1/pubsw-linux/p1857046646/v183344/ssacli-4.21-7.0.x86_64.compsig
curl -fL -o "ssacli-4.21-7.0.x86_64.rpm" https://downloads.hpe.com/pub/softlib2/software1/pubsw-linux/p1857046646/v183344/ssacli-4.21-7.0.x86_64.rpm
curl -fL -o "ssacli-4.21-7.0.x86_64.txt" https://downloads.hpe.com/pub/softlib2/software1/pubsw-linux/p1857046646/v183344/ssacli-4.21-7.0.x86_64.txt

You should be now able to run ssacli ctrl all show and see the array controllers present in your system.

After successful installation you will be able to use the ssacli utility and (for example) list all drives in your system

root@ml350-g9-01:~# ssacli ctrl all show

Smart Array P440ar in Slot 0 (Embedded) (sn: PDNLH0BRHBJ0HI)

root@ml350-g9-01:~# ssacli ctrl slot=0 physicaldrive all show

Smart Array P440ar in Slot 0 (Embedded)

Array A

physicaldrive 1I:1:1 (port 1I:box 1:bay 1, SAS SSD, 400 GB, OK)
physicaldrive 1I:1:3 (port 1I:box 1:bay 3, SAS SSD, 400 GB, OK)
physicaldrive 1I:1:2 (port 1I:box 1:bay 2, SAS SSD, 400 GB, OK, spare)
physicaldrive 1I:1:4 (port 1I:box 1:bay 4, SAS SSD, 400 GB, OK, spare)

Array B

physicaldrive 1I:1:5 (port 1I:box 1:bay 5, SAS SSD, 800 GB, OK)
physicaldrive 1I:1:6 (port 1I:box 1:bay 6, SAS SSD, 800 GB, OK)
physicaldrive 1I:1:7 (port 1I:box 1:bay 7, SAS SSD, 800 GB, OK)
physicaldrive 1I:1:8 (port 1I:box 1:bay 8, SAS SSD, 800 GB, OK)

root@ml350-g9-01:~#