Linux命令lsscsi详解
你在学习文章相关的知识吗?本文《Linux命令lsscsi详解》,主要介绍的内容就涉及到,如果你想提升自己的开发能力,就不要错过这篇文章,大家要知道编程理论基础和实战操作都是不可或缺的哦!
为了深入理解lsscsi命令的工作原理,我们先需要掌握SCSI的概念以及硬盘接口和参数的基础知识。
一、SCSI是什么?
SCSI(Small Computer System Interface),即小型计算机系统接口,是一种成熟的数据传输标准,主要目的是促进主机与外部存储设备之间的命令、数据和状态信息的交换。在众多存储解决方案中,SCSI技术扮演了核心角色。
位于操作系统与外部设备之间的SCSI协议,提供了一套丰富的功能,使得操作系统能够通过这一协议完成对外部设备(如硬盘驱动器、磁带机、CD-ROM、打印机等)的输入输出操作。SCSI协议通常集成于设备的驱动程序或是主机适配器的内部逻辑中。

二、常见硬盘接口
1. IDE接口的硬盘
其英文名称:Integrated Drive Electronics,常见的2.5英寸IDE硬盘接口它的本意是指把“硬盘控制器”与“盘体”集成在一起的硬盘驱动器。
IDE代表着硬盘的一种类型,但在实际的应用中,人们也习惯用IDE来称呼最早出现IDE类型硬盘ATA-1,这种类型的接口随着接口技术的发展已经被淘汰了,而其后发展分支出更多类型的硬盘接口,比如ATA、Ultra ATA、DMA、Ultra DMA等接口都属于IDE硬盘。
其特点为:价格低廉,兼容性强,性价比高,数据传输慢,不支持热插拔等等。

2. SCSI接口硬盘
SCSI并不是专门为硬盘设计的接口,是一种广泛应用于小型机上的高速数据传输技术。
SCSI接口具有应用范围广、多任务、带宽大、CPU占用率低,以及热插拔等优点,但较高的价格使得它很难如IDE硬盘般普及,因此SCSI硬盘主要应用于中、高端服务器和高档工作站中。
其特点为:传输速率高、读写性能好、可连接多个设备、可支持热插拔,但是价格相对来说比较贵。

3. SATA接口类型
其英文名称为:Serial Advanced Technology Attachment。使用SATA(Serial ATA)口的硬盘又叫串口硬盘,是未来PC机硬盘的趋势。
Serial ATA采用串行连接方式,串行ATA总线使用嵌入式时钟信号,具备了更强的纠错能力,与以往相比其最大的区别在于能对传输指令(不仅仅是数据)进行检查,如果发现错误会自动矫正,这在很大程度上提高了数据传输的可靠性。
串行接口还具有结构简单、支持热插拔的优点。

三、 lsscsi命令
lsscsi列出scsi/sata设备信息,比如硬盘驱动器,光盘驱动器。
1. lsscsi 命令安装
-bash: lsscsi command not found #Debian apt-get install lsscsi #Ubuntu apt-get install lsscsi #Alpine apk add lsscsi #Arch Linux pacman -S lsscsi #Kali Linux apt-get install lsscsi #CentOS yum install lsscsi #Fedora dnf install lsscsi #Raspbian apt-get install lsscsi #Docker docker run cmd.cat/lsscsi lsscsi
2. lsscsi命令英文手册
详细命令说明地址
https://sg.danny.cz/scsi/lsscsi.html

2. 命令格式
lsscsi 命令语法:
lsscsi [选项] [H:C:T:L]
lsscsi 命令选项:
选项 | 含义 |
---|---|
-g | 显示SCSI通用设备文件名称 |
-k | 显示内核名称而不是设备节点名 |
-d | 显示设备节点的主要号码和次要号码 |
-H | 列出当前连接到系统的SCSI主机而不是SCSI设备 |
-l | 显示每一个SCSI设备(主机)的附加信息 |
-c | 相对于执行 cat /proc/scsi/scsi 命令的输出 |
-p | 显示额外的数据完整性(保护)的信息 |
-t | 显示传输信息 |
-L | 以“属性名=值”的方式显示附加信息 |
-v | 当信息找到时输出目录名 |
-y | 假设sysfs挂载在指定路径而不是默认的 “/sys” |
-s | 显示容量大小。 |
-c | 用全称显示默认的信息。 |
-d | 显示设备主,次设备号。 |
-g | 显示对应的sg设备名。 |
-H | 显示主机控制器列表,-Hl,-Hlv。 |
-l | 显示相关属性,-ll,-lll=-L。 |
-v | 显示设备属性所在目录。 |
-x | 以16进制显示lun号。 |
-p | 输出DIF,DIX 保护类型。 |
-P | 输出有效的保护模式信息。 |
-i | 显示udev相关的属性 |
-w | 显示WWN |
-t | 显示相应传输信息(ATA,FC,SBP,ISCSI,SPI,SAS,SATA,USB),-Ht,-tl.(包括sas地址) |
3. 结果含义

四、命令举例
lsscsi 列出所有 SCSI 设备:
peng@ubuntu:~$ lsscsi [3:0:0:0] cd/dvd NECVMWar VMware SATA CD01 1.00 /dev/sr0 [32:0:0:0] disk VMware, VMware Virtual S 1.0 /dev/sda
lsscsi -L列出所有具有详细属性的 SCSI 设备:
peng@ubuntu:~$ lsscsi -L [3:0:0:0] cd/dvd NECVMWar VMware SATA CD01 1.00 /dev/sr0 device_blocked=0 iocounterbits=32 iodone_cnt=0x229 ioerr_cnt=0x4 iorequest_cnt=0x23a queue_depth=1 queue_type=none scsi_level=6 state=running timeout=30 type=5 [32:0:0:0] disk VMware, VMware Virtual S 1.0 /dev/sda device_blocked=0 iocounterbits=32 iodone_cnt=0x37370 ioerr_cnt=0x3 iorequest_cnt=0x37370 queue_depth=32 queue_type=simple scsi_level=3 state=running timeout=180 type=0
lsscsi -s列出所有具有人类可读磁盘容量的 SCSI 设备:
peng@ubuntu:~$ lsscsi -s [3:0:0:0] cd/dvd NECVMWar VMware SATA CD01 1.00 /dev/sr0 - [32:0:0:0] disk VMware, VMware Virtual S 1.0 /dev/sda 536GB
五、其他
1. Linux下scsi相关文件节点
/proc/scsi/
peng@ubuntu:~$ cd /proc/scsi/ peng@ubuntu:/proc/scsi$ ls device_info mptspi scsi sg peng@ubuntu:/proc/scsi$ cat scsi Attached devices: Host: scsi32 Channel: 00 Id: 00 Lun: 00 Vendor: VMware, Model: VMware Virtual S Rev: 1.0 Type: Direct-Access ANSI SCSI revision: 02 Host: scsi3 Channel: 00 Id: 00 Lun: 00 Vendor: NECVMWar Model: VMware SATA CD01 Rev: 1.00 Type: CD-ROM ANSI SCSI revision: 05
/sys/class/scsi_host
peng@ubuntu:/sys/class/scsi_host$ ls host0 host12 host16 host2 host23 host27 host30 host5 host9 host1 host13 host17 host20 host24 host28 host31 host6 host10 host14 host18 host21 host25 host29 host32 host7 host11 host15 host19 host22 host26 host3 host4 host8
/sys/class/scsi_device
peng@ubuntu:/sys/class/scsi_device$ ls 3:0:0:0 32:0:0:0
/sys/class/scsi_disk
peng@ubuntu:/sys/class/scsi_disk$ ls 32:0:0:0
/sys/class/scsi_generic
peng@ubuntu:/sys/class/scsi_generic$ ls sg0 sg1
/sys/bus/scsi
peng@ubuntu:/sys/bus/scsi$ ls devices drivers drivers_autoprobe drivers_probe uevent peng@ubuntu:/sys/bus/scsi/devices$ ls 3:0:0:0 host11 host16 host20 host25 host3 host5 target3:0:0 32:0:0:0 host12 host17 host21 host26 host30 host6 target32:0:0 host0 host13 host18 host22 host27 host31 host7 host1 host14 host19 host23 host28 host32 host8 host10 host15 host2 host24 host29 host4 host9
其中target3:0:0
对应
host:bus:id:lun
2. Linux 开启 SCSI 日志调试功能
- 1.编译选项中需开启 CONFIG_SCSI_LOGGING

- 2.该编译选项说明
drivers/scsi/Kconfig:213 config SCSI_LOGGING bool "SCSI logging facility" depends on SCSI ---help--- This turns on a logging facility that can be used to debug a number of SCSI related problems. If you say Y here, no logging output will appear by default, but you can enable logging by saying Y to "/proc file system support" and "Sysctl support" below and executing the command echo > /proc/sys/dev/scsi/logging_level where is a four byte value representing the logging type and logging level for each type of logging selected. There are a number of logging types and you can find them in the source at . The logging levels are also described in that file and they determine the verbosity of the logging for each logging type. If you say N here, it may be harder to track down some types of SCSI problems. If you say Y here your kernel will be somewhat larger, but there should be no noticeable performance impact as long as you have logging turned off.
- 3.logging 类型源码文件位置(有说明)
-> drivers\scsi\scsi_logging.h
- 4.使用说明
/* * Note - the initial logging level can be set here to log events at boot time. * After the system is up, you may enable logging via the /proc interface. */ unsigned int scsi_logging_level; #if defined(CONFIG_SCSI_LOGGING) EXPORT_SYMBOL(scsi_logging_level); #endif
scsi_logging_level 被定义成int类型(32bit),该机制使用了30个bit,从低位到高位每3bit为一个logging level从SCSI_LOG_ERROR_SHIFT到SCSI_LOG_IOCTL_SHIFT(SCSI_LOG_XXX_SHIFT为不同level的移位数),每个level使用的bit数都是3,所以 SCSI_LOG_XXX_BITS 均为3
- 5.scsi_logging_level 值可以在 boot 命令行设置也可以开启设备后在 /proc 文件系统中设置:
-1 - Enable scsi events to syslog. // 开启所有scsi log 0 - Disable scsi events to syslog. // 关闭所有scsi log
命令:
echo 0/-1 > /proc/sys/dev/scsi/logging_level
好了,本文到此结束,带大家了解了《Linux命令lsscsi详解》,希望本文对你有所帮助!关注golang学习网公众号,给大家分享更多文章知识!

- 上一篇
- 豆包大模型披露2024技术进展,亮相7个月综合能力全面对齐GPT-4o

- 下一篇
- 全面指南:轻松在电脑上安装Linux操作系统
-
- 文章 · linux | 9分钟前 |
- OpenSSL让开发变简单?大佬带你手把手教你用!
- 280浏览 收藏
-
- 文章 · linux | 30分钟前 |
- Liboffice更新前瞻!Debian用户不得不看的未来走势分析
- 137浏览 收藏
-
- 文章 · linux | 42分钟前 |
- Go语言必看!Golang在Linux服务器中的应用场景
- 333浏览 收藏
-
- 文章 · linux | 45分钟前 |
- Debian系统Java内存参数超详细配置教程
- 307浏览 收藏
-
- 文章 · linux | 48分钟前 |
- Java项目在Debian编译惨败?手把手教你快速解决!
- 273浏览 收藏
-
- 文章 · linux | 1小时前 |
- Hadoop在Linux上怎么优化资源?手把手教你搞定资源配置
- 221浏览 收藏
-
- 文章 · linux | 1小时前 |
- 对比评测:Linux下Kafka与其它消息队列性能大不同
- 268浏览 收藏
-
- 文章 · linux | 1小时前 | Linux
- 磁盘满了?Linux系统“Diskfull”轻松解决技巧
- 248浏览 收藏
-
- 文章 · linux | 3小时前 |
- 用OpenSSL在Linux搞端口扫描,简单到飞起!
- 436浏览 收藏
-
- 文章 · linux | 3小时前 |
- DebianGCC手把手教学:教你正确使用库文件
- 280浏览 收藏
-
- 文章 · linux | 3小时前 |
- GitLab协作功能大揭秘,Linux团队开发必备神器
- 480浏览 收藏
-
- 文章 · linux | 4小时前 |
- Tomcat在Debian上的JVM参数怎么调?详细教程在这!
- 175浏览 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 542次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 508次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 497次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 484次学习
-
- 茅茅虫AIGC检测
- 茅茅虫AIGC检测,湖南茅茅虫科技有限公司倾力打造,运用NLP技术精准识别AI生成文本,提供论文、专著等学术文本的AIGC检测服务。支持多种格式,生成可视化报告,保障您的学术诚信和内容质量。
- 96次使用
-
- 赛林匹克平台(Challympics)
- 探索赛林匹克平台Challympics,一个聚焦人工智能、算力算法、量子计算等前沿技术的赛事聚合平台。连接产学研用,助力科技创新与产业升级。
- 100次使用
-
- 笔格AIPPT
- SEO 笔格AIPPT是135编辑器推出的AI智能PPT制作平台,依托DeepSeek大模型,实现智能大纲生成、一键PPT生成、AI文字优化、图像生成等功能。免费试用,提升PPT制作效率,适用于商务演示、教育培训等多种场景。
- 106次使用
-
- 稿定PPT
- 告别PPT制作难题!稿定PPT提供海量模板、AI智能生成、在线协作,助您轻松制作专业演示文稿。职场办公、教育学习、企业服务全覆盖,降本增效,释放创意!
- 101次使用
-
- Suno苏诺中文版
- 探索Suno苏诺中文版,一款颠覆传统音乐创作的AI平台。无需专业技能,轻松创作个性化音乐。智能词曲生成、风格迁移、海量音效,释放您的音乐灵感!
- 99次使用
-
- 命令行工具:应对Linux服务器安全挑战的利器
- 2023-10-04 501浏览
-
- 如何使用Docker进行容器的水平伸缩和负载均衡
- 2023-11-07 501浏览
-
- linux .profile的作用是什么
- 2024-04-07 501浏览
-
- 如何解决s权限位引发postfix及crontab异常
- 2024-11-21 501浏览
-
- 如何通过脚本自动化Linux上的K8S安装
- 2025-02-17 501浏览