1lsscsi(8)                           LSSCSI                           lsscsi(8)
2
3
4

NAME

6       lsscsi - list SCSI devices (or hosts), list NVMe devices
7

SYNOPSIS

9       lsscsi  [--brief]  [--classic]  [--controllers]  [--device] [--generic]
10       [--help] [--hosts] [--kname] [--list] [--long] [--long-unit] [--lunhex]
11       [--no-nvme]  [--pdt]  [--protection]  [--protmode] [--scsi_id] [--size]
12       [--sysfsroot=PATH]  [--sz-lbs]   [--transport]   [--unit]   [--verbose]
13       [--version] [--wwn] [H:C:T:L]
14

DESCRIPTION

16       Uses  information  in sysfs (Linux kernel series 2.6 and later) to list
17       SCSI devices (or hosts) currently attached to the system. Many non-SCSI
18       storage devices (but not all) used the SCSI subsystem in Linux. In lss‐
19       csi version 0.30 support was added to list NVMe devices.
20
21       In single line per device (LU or NVMe  namespace)  mode,  the  default,
22       each  line starts with a 4 element tuple surrounded by square brackets.
23       For SCSI devices the first element 'H' is the host number,  the  second
24       element 'C' is the controller number, the third element 'T' is the tar‐
25       get number and the final element is the Logical Unit Number (LUN).  All
26       four  are  integers.  For NVMe namespaces see two paragraphs down. When
27       the --hosts option is given for SCSI devices the tuple  is  reduced  to
28       one element: the host number.
29
30       If  a H:C:T:L tuple is given as an argument on the command line then it
31       acts as a filter and only devices that match it are listed. The  colons
32       don't  have  to  be present, and '-', '*', '?' or missing components at
33       the end are interpreted as wildcards. The default  is  '*:*:*:*'  which
34       means  to  match devices (i.e.  Logical Units). Any filter string using
35       '*' of '?'  should be surrounded by single or  double  quotes  to  stop
36       shell  expansions.   If '-' is used as a wildcard then the whole filter
37       tuple should be prefixed by '-- ' to tell this  utility  there  are  no
38       more  options on the command line to be interpreted.  A leading '[' and
39       trailing ']' are permitted ( e.g. '[1:0:0]' matches all LUNs on 1:0:0).
40       May  also  be used to filter --hosts in which case only the H is active
41       and may be either a number or in the form "host<n>" where <n> is a host
42       number.
43
44       For  NVMe  devices and controllers almost all of the previous paragraph
45       applies. The main difference is that "N" appears  in  the  'H'  (first)
46       position.   The  'C' position for NVMe is the controller's Linux gener‐
47       ated "char" device minor number which is the first number that  appears
48       in  a  typical NVMe controller name, for example: "/dev/nvme2". The 'T'
49       position for NVMe is the "CNTLID" value. The final 'L' position is  the
50       NVMe  namespace identifier which is typically a sequential value start‐
51       ing at 1. The leading explicit "N" for NVMe devices is converted inter‐
52       nally  into  a  large value (32,767) that should not interfere with any
53       Linux generated SCSI host number; it also means that the  numeric  sort
54       used  to  show  hosts  (controllers) and devices (LUs or logical units)
55       will always place NVMe devices and controllers after those that use the
56       SCSI  subsystem.  To  filter  using  a  H:C:T:L  argument for NVMe con‐
57       trollers, "hostN", "hostN:<num>", "N" or "N:<num>" may be used; when no
58       "<num>"  is  given, only NVMe controllers will be listed (i.e. it lists
59       no SCSI hosts (HBAs)).
60
61       By default in this  utility  device  node  names  (e.g.  "/dev/sda"  or
62       "/dev/root_disk")  are  obtained  by noting the major and minor numbers
63       for the listed  device  obtained  from  sysfs  (e.g.  the  contents  of
64       "/sys/block/sda/dev") and then looking for a match in the "/dev" direc‐
65       tory. This "match by major and minor" will allow devices that have been
66       given  a  different name by udev (for example) to be correctly reported
67       by this utility.
68
69       In some situations it may be useful to see the device  node  name  that
70       Linux  would produce by default, so the --kname option is provided.  An
71       example of where this may be useful is kernel error logs which tend  to
72       report disk error messages using the disk's default kernel name.
73

OPTIONS

75       Arguments  to long options are mandatory for short options as well. The
76       options are arranged in alphabetical order based  on  the  long  option
77       name.  Hyphenated long options can also take underscore, and vice versa
78       (e.g. --scsi_id or --scsi-id are acceptable).
79
80       -b, --brief
81              reduces one line per device output to the tuple and the  primary
82              device  name.  This may simplify scripts that process the output
83              of this utility. With the --generic option it will show on  each
84              line  the tuple (from which the bsg pass-through device name can
85              be deduced), the primary device name (which the block  subsystem
86              uses) and the sg device name (also a pass-through).
87              When the --pdt option is used together with this option the SCSI
88              Peripheral Device Type (PDT) is displayed in hex (with a leading
89              "0x")  between  the  tuple and the primary device name. For NVMe
90              namespaces "0x0" is displayed  (for  a  disk  or  direct  access
91              device).
92
93       -c, --classic
94              The   output   is   similar   to   that   obtained   from   'cat
95              /proc/scsi/scsi'
96
97       -C, --controllers
98              Lists NVMe controllers and SCSI hosts. This is a synonym for the
99              --hosts option.
100
101       -d, --device
102              After outputting the (probable) SCSI device name the device node
103              major  and  minor  numbers   are   shown   in   brackets   (e.g.
104              "/dev/sda[8:0]").
105
106       -g, --generic
107              Output  the  SCSI  generic device file name. Note that if the sg
108              driver is a module it may need to be loaded  otherwise  '-'  may
109              appear.
110              NVMe  does  not have generic (char) devices in the same sense as
111              SCSI.  Instead NVMe Admin, NVM (i.e. block type commands such as
112              Read  and Write) and MI (Management Interface (e.g. to an enclo‐
113              sure)) commands are all sent to the containing controller  whose
114              device name is shown when the --hosts option is used.
115              To  unclutter the single line per device mode the --brief option
116              combined with this option should help.
117
118       -h, --help
119              Output the usage message and exit.
120
121       -H, --hosts
122              List the SCSI hosts and NVMe controllers currently  attached  to
123              the  system.  If this option is not given (and the --controllers
124              option is not given) then SCSI  devices  (logical  units  (LUs))
125              followed by NVMe devices (namespaces) are listed.
126
127       -k, --kname
128              Use Linux default algorithm for naming devices (e.g. block major
129              8, minor 0 is "/dev/sda") rather than the "match  by  major  and
130              minor" in the "/dev" directory as discussed above.
131
132       -L, --list
133              Output additional information in <attribute_name>=<value> pairs,
134              one pair per line preceded by two spaces. This  option  has  the
135              same effect as '-lll'.
136
137       -l, --long
138              Output  additional  information for each SCSI device (host). Can
139              be used multiple times for more output in which case the shorter
140              option  form  is  more convenient (e.g. '-lll'). When used three
141              times (i.e. '-lll') outputs SCSI device  (host)  attributes  one
142              per    line;    preceded    by   two   spaces;   in   the   form
143              "<attribute_name>=<value>".
144
145       -U, --long-unit
146              Output logical unit name in full, if available. It replaces  the
147              normal  vendor, product and revision strings given in the single
148              logical unit per line mode. If no logical  unit  name  is  found
149              "none"  is  printed.  If  the  logical unit name is long (e.g. a
150              UUID) then following fields are pushed further to the  right  as
151              required.  This  option is functionally equivalent to the '-uuu'
152              option.
153              If the option is used twice (e.g. '-UU') then EUI, NAA, UUID and
154              T10  vendor  ID  formats are prefixed by "eui.", "naa.", "uuid."
155              and "t10." respectively.  Note that SCSI  name  format  used  by
156              iSCSI  should  already be prefixed by 'iqn.'. Using the '--unit'
157              option 4 or more times (e.g. '-uuuu') will have the same  action
158              as '-UU'.
159              --long_unit  is  also  an  acceptable  form  when  invoking this
160              option.
161
162       -x, --lunhex
163              when this option is used once the LUN in the tuple (at the start
164              of  each device line) is shown in "T10" format which is up to 16
165              hexadecimal digits. It is prefixed by "0x"  to  distinguish  the
166              LUN  from the decimal value shown in the absence of this option.
167              Also hierarchal LUNs are shown with a "_"  character  separating
168              the  levels.  For  example the two level LUN: 0x0355006600000000
169              will appear as 0x0355_0066. If this option is given twice  (e.g.
170              using the short form: '-xx') then the full 16 hexadecimal digits
171              are shown for each LUN, prefixed by "0x".
172              For NVMe, the namespace identifier (nsid) is shown  in  the  "L"
173              position.  The nsid is a 32 bit unsigned quantities with 0x0 and
174              0xffffffff reserved.  Without this option, the nsid is shown  in
175              decimal. When this option is used once the nsid is output in hex
176              with a lead 0x and with up to 3 leading zeros.  When this option
177              is  used  twice  the  nsid is output in hex with up to 7 leading
178              zeros.
179
180       -N, --no-nvme
181              this option excludes NVMe devices and controllers for  the  out‐
182              put. This option may be needed to stop NVMe device output inter‐
183              fering with specific format output like that produced  when  the
184              --classic option is used.
185              To  only  show  NVMe  devices, use 'lsscsi N', to only show NVMe
186              controllers, use 'lsscsi -H N'.
187
188       -D, --pdt
189              this option displays the SCSI Peripheral Device  Type  (PDT)  in
190              hex  preceded  by  "0x".  For NVME namespaces "0x0' is displayed
191              which corresponds to a disk ("Direct Access Device" or SSD).  In
192              single  line output this hex PDT replaces the device type abbre‐
193              viation (e.g. "0x0     " replaces "disk    ") and appears  after
194              the tuple.
195
196       -p, --protection
197              Output target (DIF) and initiator (DIX) protection types.
198
199       -P, --protmode
200              Output  effective  protection  information  mode  for  each disk
201              device.
202
203       -i, --scsi_id
204              outputs   the   udev    derived    matching    id    found    in
205              /dev/disk/by-id/scsi*  .   This is only for disk (and disk like)
206              devices. If no match is found then "dm-uuid-mpath*"  and  "usb*"
207              are  searched in the same directory.  If there is still no match
208              then the /sys/class/block/<disk>/holders directory is  searched.
209              The  matching  id  is  printed  following  the device name (e.g.
210              /dev/sdc) and if there is no match "-" is output.
211
212       -s, --size
213              Print disk capacity in human readable  form.  When  given  once,
214              normal  base  10  SI units are used as a prefix for 'B' which is
215              bytes (aka octets).  For example MB, GB and TB stand  for  10^6,
216              10^9 and 10^12 bytes respectively. When given twice, IEC 80000-3
217              prefixes for 'B' are used; for example MiB, GiB  and  TiB  stand
218              for  2^20,  2^30  and  2^40  bytes  respectively.  The output is
219              rounded to 3 or less significant figures in order to  fit  on  a
220              single  line.   It  will  also  output  the size of RBC devices,
221              CD/DVD media and host managed ZBC disks. Host  aware  ZBC  disks
222              have their "peripheral device type" set to 0 (the same as normal
223              disks) so their size is output.
224              If given three times (short form is the more convenient: '-sss')
225              then  the  disk capacity as a logical block count is given. This
226              is an exact figure in decimal reported by the storage device  at
227              discovery.  Discovery is typically just after boot time, or when
228              it was last attached if the storage device is removable.
229              To unclutter the single line per device mode the --brief  option
230              combined with this option should help.
231
232       -y, --sysfsroot=PATH
233              assumes sysfs is mounted at PATH instead of the default '/sys' .
234              If this option is given PATH should be an  absolute  path  (i.e.
235              start with '/').
236
237       -S, --sz-lbs
238              Print  disk capacity as a number of logical blocks (which is the
239              same as '-sss'). When used twice a comma is  added  followed  by
240              the  logical block size in bytes. It should be a number like 512
241              or 4096.
242              If the logical block size cannot be found (e.g. because the ver‐
243              sion  of  Linux  predates the /sys/block/<dev_name>/queue direc‐
244              tory) then the number of 512 byte blocks followed comma and then
245              '512' is output irrespective of what the true logical block size
246              of the device is. This special case action occurs  whether  this
247              option is given one or more times.
248              To  unclutter the single line per device mode the --brief option
249              combined with this option should help.
250
251       -t, --transport
252              Output transport information. This will be target related infor‐
253              mation  or,  if --hosts is given, initiator related information.
254              When used without --list, a name or  identifier  (or  both)  are
255              output  on a single line, usually prefixed by the type of trans‐
256              port. For devices this information replaces the  normal  vendor,
257              product  and  revision  strings.  When the --list option is also
258              given then additionally multiple lines  of  attribute_name=value
259              pairs  are  output, each indented by two spaces. See the section
260              on transports below.
261
262       -u, --unit
263              Output logical unit name, if available. If this option is  given
264              once  or  twice,  then  the 30 character field where the vendor,
265              product and revision strings are usually placed is  expanded  to
266              32 characters and replaced by the logical unit name. If no logi‐
267              cal unit name is found "none" is printed.  The  first  found  of
268              the NAA, EUI-64 or SCSI name string is output unless a SCSI name
269              string is found and the associated  target  port  indicates  the
270              iSCSI protocol, in which case the SCSI name string is preferred.
271              Finally if there is no match on the above and a  T10  Vendor  ID
272              descriptor is found then it is used.
273              If  the  name  cannot  fit  in the 32 character field then it is
274              truncated to the right and a trailing '_' character is  used  to
275              alert  the  reader  to the truncation. The 32 character width is
276              chosen since that is large enough to hold 16 byte NAA or  EUI-64
277              identifiers.  However  SCSI name strings as used by iSCSI can be
278              larger than that.
279              If this option is used twice then this field is also 32  charac‐
280              ter  wide.  If  the logical unit name cannot fit then it will be
281              truncated to the left and a leading '_'  character  is  used  to
282              alert the reader to the truncation.
283              If  this  option is used three times the whole logical unit name
284              is output, followed by several spaces.
285              In order for this option to work, it needs a Linux  kernel  from
286              and including 3.15 . It accesses the sysfs vpd_pg83 file for the
287              device in question. Old SCSI and ATA (SATA)  equipment  may  not
288              provide  this  information. If it is provided by ATA (SATA) then
289              it will be the WWN.
290
291       -v, --verbose
292              outputs directory names where information is found. Use multiple
293              times for more output.
294
295       -V, --version
296              outputs  version information then exits. If used once outputs to
297              stderr; if used twice outputs to stdout and shortens the date to
298              yyyymmdd numeric format.
299
300       -w, --wwn
301              outputs  the  WWN  for  disks instead of manufacturer, model and
302              revision (or instead of transport information). The  World  Wide
303              Name  (WWN)  is typically 64 bits long (16 hex digits) but could
304              be up to 128 bits long. To indicate the WWN is  hexadecimal,  it
305              is  prefixed by "0x". The ATA/SATA WWN is referred to as LU name
306              in SCSI jargon; hence this option is more or less superseded  by
307              the --unit and --long-unit options.
308

TRANSPORTS

310       This  utility  lists SCSI devices which are known as logical units (LU)
311       in the SCSI Architecture Model (ref: SAM-5  at  http://www.t10.org)  or
312       hosts  when  the --hosts option is given. A host is called an initiator
313       in SAM-5. A SCSI command travels out  via  an  initiator,  across  some
314       transport  to  a  target  and  then onwards to a logical unit. A target
315       device may contain several logical units. A target device  has  one  or
316       more  ports that can be viewed as transport end points. Each FC and SAS
317       disk is a single target that has two ports  and  contains  one  logical
318       unit.  If both target ports on a FC or SAS disk are connected and visi‐
319       ble to a machine, then lsscsi will show two entries.  Initiators  (i.e.
320       hosts)  also  have one or more ports and some HBAs in Linux have a host
321       entry per initiator port while others have a host entry  per  initiator
322       device.
323
324       When  the  --transport  option  is given for devices (i.e.  --hosts not
325       given) then most of the information produced by  lsscsi  is  associated
326       with the target, or more precisely: the target port, through which SCSI
327       commands pass that access a logical unit.
328
329       Typically this utility provides one line  of  output  per  "device"  or
330       host.   Significantly  more  information  can be obtained by adding the
331       --list option. When used together with the  --transport  option,  after
332       the  summary  line, multiple lines of transport specific information in
333       the form "<attribute_name>=<value>" are output, each  indented  by  two
334       spaces.   Using a filter argument will reduce the volume of output if a
335       lot of devices or hosts are present.
336
337       The transports that are currently recognized are: IEEE 1394,  ATA,  FC,
338       iSCSI, SAS, SATA, SPI, SRP and USB.
339
340       For IEEE 1394 (a.k.a. Firewire and "SBP" when storage is involved), the
341       EUI-64 based target port name is output when --transport is  given,  in
342       the  absence  of  the  --hosts option. When the --hosts option is given
343       then the EUI-64 initiator port name is output. Output  on  the  summary
344       line specific to the IEEE 1394 transport is prefixed by "sbp:".
345
346       To detect ATA and SATA devices a crude check is performed on the driver
347       name (after the checks for other transports are  exhausted).  Based  on
348       the driver name either the ATA or SATA transport type is chosen. Output
349       on the summary line is either "ata:" or "sata:". A search is  made  for
350       an  associated  vpd_pg83  file  in  sysfs,  if found it may contain the
351       device's WWN which is output if present. The WWN  will  not  appear  in
352       Linux  kernels  before  3.15  and  with old PATA and SATA devices. Most
353       device and hosts flagged as "ata:" will use the parallel ATA  transport
354       (PATA).  For SATA devices that are attached via a SAS expander, see the
355       SAS paragraph below.
356
357       For Fibre Channel (FC) the port name and  port  identifier  are  output
358       when  --transport  is given. In the absence of the --hosts option these
359       ids will be for the target port associated  with  the  device  (logical
360       unit)  being  listed. When the --hosts option is given then the ids are
361       for the initiator port used by the host. Output  on  the  summary  line
362       specific  to the FC transport is prefixed by "fc:".  If FCoE (over Eth‐
363       ernet) is detected the prefix is changed to "fcoe:".
364
365       For iSCSI the target port name is output when --transport is given,  in
366       the  absence  of  the --hosts option. This is made up of the iSCSI name
367       and the target portal group tag. Since the iSCSI name starts with "iqn"
368       no  further  prefix is used. When the --hosts option is given then only
369       "iscsi:" is output on the summary line.
370
371       For Serial Attached SCSI the SAS address of the target port (or initia‐
372       tor  port  if  --hosts  option is also given) is output. This will be a
373       naa-5 address. For SAS HBAs and SAS targets (such as SAS disks and tape
374       drives)  the  SAS  address  will  be  world wide unique. For SATA disks
375       attached to a SAS expander, the expander provides the  SAS  address  by
376       adding  a non zero value to its (i.e. the expander's) SAS address (e.g.
377       expander_sas_address + phy_id + 1). SATA disks directly attached to SAS
378       HBAs  seem  to have an indeterminate SAS address. Output on the summary
379       line specific to the SAS transport is prefixed by "sas:".
380
381       For SATA devices, see the paragraph above on ATA devices. As  noted  in
382       the  previous  paragraph,  SATA  devices attached to SAS expanders will
383       display a manufactured  SAS  transport  address  (manufactured  by  the
384       expander) rather than the SATA device's WWN.
385
386       For  the SCSI Parallel Interface (SPI) the target port identifier (usu‐
387       ally a number between 0 and 15 inclusive) is output when --transport is
388       given, in the absence of the --hosts option. When the --hosts option is
389       given then only "spi:" is output on the summary line.
390
391       For the PCIe transport (a.k.a. PCI Express) there at two possible stor‐
392       age  types: NVMe and SOP/PQI (SCSI over PCIe). There are very few exam‐
393       ples of the latter currently so this utility concentrates on NVMe. NVMe
394       uses  its  own  command set and not SCSI but has many things in common.
395       Rather than re-invent everything currently in use that SCSI has accumu‐
396       lated  over  nearly  40  years,  NVMe is beginning to use some parts of
397       SCSI. A recent example is the SES-3 standard for  enclosure  management
398       which has been adopted by NVMe.  In SCSI a SES device is a logical unit
399       with a peripheral device type (PDT) of 0xd (for enclosure) so  it  will
400       appear  when the lsscsi utility is invoked without any options. In NVMe
401       is seems that an enclosure with appear as attached  to  the  management
402       interface  (MI)  of a NVMe controller. This means it should appear when
403       "lsscsi --hosts" is invoked. It is unclear whether  such  a  NVMe  con‐
404       troller  can have any storage namespaces associated with it. The sg_ses
405       utility (in the sg3_utils package) can then be  given  that  NVMe  con‐
406       troller's device name (e.g. /dev/nmve1).
407       When  the  --transport  option  is  given,  after  "pcie" the NVMe con‐
408       troller's subsystem vendor id and device id are output, separated by  a
409       colon (e.g. "pcie 0x8086:0x390a").
410
411       For  the  SCSI  RDMA  Protocol (SRP) the IB (InfiniBand) port's GUID is
412       given.  As an example, it has a form like this: 0002:c903:00fa:abcd .
413
414       When a USB transport is detected, the summary line will contain  "usb:"
415       followed  by  a  USB  device  name.  The  USB  device name has the form
416       "<b>-<p1>[.<p2>[.<p3>]]:<c>.<i>" where <b> is the USB bus number,  <p1>
417       is  the  port  on  the host. <p2> is a port on a host connected hub, if
418       present.  If needed <p3> is a USB hub port closer to  the  USB  storage
419       device.  <c> refers to the configuration number while <i> is the inter‐
420       face number. There is a separate SCSI host for each USB (SCSI)  target.
421       A  USB  SCSI  target  may contain multiple logical units. Thus the same
422       "usb: <device_name>" string appears for a USB SCSI host and all logical
423       units  that belong to the USB SCSI target associated with that USB SCSI
424       host.
425

LUNS

427       For historical reasons and as used by several other Unix based  Operat‐
428       ing  Systems,  Linux uses a tuple of integers to describe (a path to) a
429       SCSI device (also know as a Logical Unit (LU)).  The  last  element  of
430       that  tuple  is the so-called Logical Unit Number (LUN). And originally
431       in SCSI a LUN was an integer, at first 3 bits  long,  then  8  then  16
432       bits.  SCSI  LUNs  today (SAM-5 section 4.7) are 64 bits but SCSI stan‐
433       dards now consider a LUN to be an array of 8 bytes.
434
435       Up until 2013, Linux mapped SCSI LUNs to a 32 bit integer by taking the
436       first  4  bytes  of  the  SCSI LUN and ignoring the last 4 bytes. Linux
437       treated the first two bytes of the SCSI LUN as a unit (a word)  and  it
438       became the least significant 16 bits in the Linux LUN integer. The next
439       two bytes of the SCSI LUN became the upper 16 bits  in  the  Linux  LUN
440       integer.  The  rationale  for this was to keep commonly used LUNs small
441       Linux LUN integers. The most common LUN (by  far)  in  SCSI  LUN  (hex)
442       notation  is  00  00  00  00 00 00 00 00 and this becomes the Linux LUN
443       integer 0. The next most common LUN is 00 01 00 00 00 00 00 00 and this
444       becomes the Linux LUN integer 1.
445
446       In  2013  it  is proposed to increase Linux LUNs to a 64 bit integer by
447       extending the mapping outlined above. In this case all information that
448       is  possible  to represent in a SCSI LUN is mapped a Linux LUN (64 bit)
449       integer. And the mapping can be reversed without losing information.
450
451       This version of the utility supports both 32 and 64 bit Linux LUN inte‐
452       gers.  By default the LUN shown at the end of the tuple commencing each
453       line is a Linux LUN as a decimal integer. When the --lunhex  option  is
454       given then the LUN is in SCSI LUN format with the 8 bytes run together,
455       with the output in hexadecimal and prefixed by '0x'. The LUN is decoded
456       according to SAM-5's description and trailing zeros (i.e. digits to the
457       right) are not shown. So LUN 0 (i.e. 00 00 00 00 00 00 00 00) is  shown
458       as 0x0000 and LUN 65 (i.e. 00 41 00 00 00 00 00 00) is shown as 0x0041.
459       If the --lunhex option is given twice then the full 64  bits  (i.e.  16
460       hexadecimal digits) are shown.
461
462       If  the --lunhex option is not given on the command line then the envi‐
463       ronment variable LSSCSI_LUNHEX_OPT is checked. If LSSCSI_LUNHEX_OPT  is
464       present  then  its  associated  value  becomes  the number of times the
465       --lunhex is set internally. So, for example, 'LSSCSI_LUNHEX_OPT=2  lss‐
466       csi' and 'lsscsi -xx' are equivalent.
467

EXAMPLES

469       Information about this utility including examples can also be found at:
470       http://sg.danny.cz/scsi/lsscsi.html .
471

NOTES

473       Information for this command is derived from  the  sysfs  file  system,
474       which  is  assumed  to be mounted at /sys unless specified otherwise by
475       the user.  SCSI (pseudo) devices that have been detected  by  the  SCSI
476       mid level will be listed even if the required upper level drivers (i.e.
477       sd, sr, st, osst or ch) have not been loaded. If the appropriate  upper
478       level  driver has not been loaded then the device file name will appear
479       as '-' rather than something like '/dev/st0'. Note  that  some  devices
480       (e.g.  scanners  and medium changers) do not have a primary upper level
481       driver and can only be accessed via a SCSI generic (sg) device name.
482
483       Generic SCSI devices can also be accessed via the bsg driver in  Linux.
484       By  default,  the  bsg  driver's  device  node  names  are  of the form
485       '/dev/bsg/H:C:T:L'. So, for example, the  SCSI  device  shown  by  this
486       utility  on  a line starting with the tuple '6:0:1:2' could be accessed
487       via the bsg driver with the '/dev/bsg/6:0:1:2' device node name.
488
489       lsscsi version 0.21 or later is  required  to  correctly  display  SCSI
490       devices  in  Linux  kernel  2.6.26  (and  possibly later) when the CON‐
491       FIG_SYSFS_DEPRECATED_V2 kernel option is not defined.
492

AUTHOR

494       Written by Doug Gilbert
495

REPORTING BUGS

497       Report bugs to <dgilbert at interlog dot com>.
498
500       Copyright © 2003-2020 Douglas Gilbert
501       This software is distributed under the GPL version 2. There is NO  war‐
502       ranty;  not  even  for MERCHANTABILITY or FITNESS FOR A PARTICULAR PUR‐
503       POSE.
504

SEE ALSO

506       lspci lsusb lsblk
507
508
509
510lsscsi-0.31                      February 2020                       lsscsi(8)
Impressum