[smartmontools-support] smartctl over Linux iscsi - how to make it work?

nfxjfg at googlemail.com nfxjfg at googlemail.com
Mon Dec 6 18:59:58 CET 2021


Hi,

I'm trying to use smartctl on a Linux iscsi initiator, which is
connected to a Linux iscsi target (tgt-admin -s says "Driver:
iscsi"), where the final device is a normal SATA disk.

Using "smartctl -a /dev/disk/by-label/label" on the device results in:

   Probable ATA device behind a SAT layer
   Try an additional '-d ata' or '-d sat' argument.

with "smartctl -d ata" I get:

   Read Device Identity failed: Invalid argument

with "smartctl -d sat":

   Read Device Identity failed: scsi error unsupported scsi opcode

with "smartctl -d test":

   /dev/disk/by-label/label: Device of type 'scsi' [SCSI] detected
   /dev/disk/by-label/label: Device of type 'scsi' [SCSI] opened

With the "sat" type I can see on Wireshark that it tries to send SCSI
command 0x85, which seems to be an ATA-over-SCSI passthrough command,
and which results in a ".111 0000 = SNS Error Type: Current Error
(0x70)" error according to Wireshark.

Of course it works if I run smartctl directly on the device on the
iscsi target machine.

From what I can tell, smartctl is doing everything right. But the iscsi
target doesn't support the ATA passthrough command, and doesn't
translate SCSI smart commands (if those even exist).

Is there a way to fix the configuration on any of these layers to make
smartctl work?

Regards


More information about the Smartmontools-support mailing list