lkml.org 
[lkml]   [2007]   [Jul]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: SCSI vs SATA
BuraphaLinux Server wrote:
> Hello,
>
> I have had a hard time determining if /dev/sda is SCSI or SATA
> from my boot scripts. It matters for smartd which needs an added
> parameter -d sat in the configuration file for SATA drives. Finally I
> came up with this, but I wonder if there is a better way? It appears
> that
> vendor is "ATA " (5 trailing spaces) for SATA. If the kernel is
> ever fixed to show proper vendor information (Maxtor, Seagate,
> whatever) then how can I know if /dev/sda is SCSI or SATA from a bash
> script? When flaming me, please also include the proper solution.
> Thanks.
>
> #! /bin/bash
> drive="sda"
> vendor=$(</sys/block/${drive}/device/vendor)
> if [[ "${vendor}" = "ATA " ]]
> then
> printf "SATA\n"
> else
> printf "SCSI\n"
> fi
> exit 0

libata follows the SAT standard for ATA device identification as a SCSI
device, which specifies the vendor is always supposed to be ATA.
Checking for vendor ATA is likely safe then, though if it's not you
can't assume it's going to be SCSI as it could also be USB, IEEE1394, etc.

--
Robert Hancock Saskatoon, SK, Canada
To email, remove "nospam" from hancockr@nospamshaw.ca
Home Page: http://www.roberthancock.com/

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2007-07-23 18:29    [W:0.043 / U:0.076 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site