Querying SATA and SAS Drive Backplanes

Does anyone know how to do it? There are several servers I can't unrack to check the backplane model. Is there any way to query it from Linux?

Posted Apr 27, 2012, 2:29 AM UTC

315
McGlockenshire•

You mentioned that they're Supermicro servers.

If you assembled them yourself (as opposed to buying from a VAR) and you can get the chassis model number, there' a good chance that you can simply look up the backplane that ships with that chassis.

Keep in mind that backplanes intentionally try not to get in the way, so I don't expect that it's going to be easy to sniff it out. If it would be anywhere, it would be a piece of information queryable through your RAID card, if you're using one. Your lspci output suggests not.

3
omgdave•

Going through the RAID card seems like an idea. If you can get the management interface of the card, it might have info on there.

2
whetu•

You'll probably want to investigate SCSI packages like sg3_utils...

2
gjs278•

dmidecode maybe

1
questionablemooseOP•

Not in any human parseable format as far as I know.

1
mthode•

Try it, I think it's parseable. You could also try lshw.

1
questionablemooseOP•

The closest (after examining both dmidecode and lshw output) is this:

*-serial UNCLAIMED description: SMBus product: 5 Series/3400 Series Chipset SMBus Controller vendor: Intel Corporation physical id: 1f.3 bus info: pci@0000:00:1f.3 version: 05 width: 64 bits clock: 33MHz configuration: latency=0 resources: memory:fb4f6000-fb4f60ff ioport:400(size=32)

But I'm pretty sure that's the SATA bus on the motherboard, not the backplane.

1
mthode•

Maybe lspci is what you are looking for. In my experience, backpanes are transparent to the motherboard, and only exist to make it so we don't have to deal with cables (though there are some fancy ones).

1
nonpet•

No lspci?

1
questionablemooseOP•
root@hostname:~# lspci
00:00.0 Host bridge: Intel Corporation Core Processor DRAM Controller (rev 18)
00:1a.0 USB Controller: Intel Corporation 5 Series/3400 Series Chipset USB2 Enhanced Host Controller (rev 05)
00:1c.0 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 1 (rev 05)
00:1c.4 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 5 (rev 05)
00:1c.5 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 6 (rev 05)
00:1d.0 USB Controller: Intel Corporation 5 Series/3400 Series Chipset USB2 Enhanced Host Controller (rev 05)
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev a5)
00:1f.0 ISA bridge: Intel Corporation 3400 Series Chipset LPC Interface Controller (rev 05)
00:1f.2 SATA controller: Intel Corporation 5 Series/3400 Series Chipset 6 port SATA AHCI Controller (rev 05)
00:1f.3 SMBus: Intel Corporation 5 Series/3400 Series Chipset SMBus Controller (rev 05)
02:00.0 Ethernet controller: Intel Corporation 82574L Gigabit Network Connection
03:00.0 Ethernet controller: Intel Corporation 82574L Gigabit Network Connection
04:03.0 VGA compatible controller: Matrox Graphics, Inc. MGA G200eW WPCM450 (rev 0a)
1
kreiger•

Try lspci -vvv

3
nonpet•

Nasty, tricksy little beast. I'ma sleep on it, see what else I can come up with.

Edit: Actually giving it a second longer here . . . if it's not playing nice for any of these queries, we might only be able to get at it with vendor specific tools. What about your other machines? Any luck there? Still gonna see what else I can think up for this one.

(This is backwards for me, since I'm accustomed to having the vendor tools.)

Another edit: I'd also maybe dig through messages logs (hopefully they're rolling over and archiving reasonably) to see if the drivers spit out anything useful during boot. If your predecessor was good and you're lucky, you might be able do fish something outta there. Alternately, this may take too much time to be useful if your predecessor wasn't good.

1
questionablemooseOP•

Here's the thing, these are almost all Supermicro builds. I'm not even sure they have vendor specific tools, and I have to have some common method for querying the backlane. I'm not even sure there is a way.

The backplane must have some way of identifying itself to the drive bus, I'm just not sure how it would do it.

1
flussence•

90% of modern hardware info display tools are just fancy frontends to cat /sys/$somefile. Look in there.

1