Linux系统上的lshw命令提供的系统设备信息比我们大多数人意识到的要多得多。虽然lshw命令(列出硬件,发音为“lshardware”)远不是每个人都会学习的前50个Linux命令之一,但它可以提供有关许多系统硬件的有用信息。它以一种相当易于理解的格式提取出的信息可能比您知道的更多。看到描述,(设备)逻辑名,大小等等,你大概就能知道能得到多少信息了。本文检查lshw提供的信息,但重点放在磁盘和相关硬件上。以下是lshw的示例输出:$sudolshw-Cdisk*-disk:0description:SCSIDiskproduct:CardReader-1vendor:JIELIphysicalid:0.0.0businfo:scsi@4:0.0.0logicalname:/dev/sdcversion:1.00capabilities:removableconfiguration:logicalsectorsize=512sectorsize=512*-mediumphysicalid:0logicalname:/dev/sdc请注意,您需要使用sudo运行lshw命令以确保您获得所有可用的信息。虽然我们在上面的命令中要求输出“disk”(上面只包含原始输出中的五个条目之一),但这里输出的不是硬盘,而是读卡器——磁盘的一部分。种类。请注意,系统将此设备命名为/dev/sdc。系统主盘也有类似的信息:*-diskdescription:ATADiskproduct:SSD2SC120G1CS175physicalid:0businfo:scsi@0:0.0.0logicalname:/dev/sda<==hereversion:1101serial:PNY20150000778410606size:111GiB(120GB)capabilities:partitionedpartitioned:dosconfiguration:ansiversion=5logicalsectorsize=512sectorsize=512signature=f63b5929这个硬盘是/dev/sda。本系统中的硬盘均显示为ATA磁盘,是一种将控制器集成到磁盘本体中的磁盘驱动器实现。要获取“磁盘”类设备的缩写列表,请运行以下命令。请注意,其中两个设备被列出了两次,所以我们仍然看到五个磁盘设备。$sudolshw-short-CdiskH/W路径设备类描述===================================================================/0/100/1d/1/1/0.0.0/dev/sdc磁盘读卡器-1/0/100/1d/1/1/0.0.0/0/dev/sdcdisk/0/100/1d/1/1/0.0.1/dev/sdddisk2/0/100/1d/1/1/0.0.1/0/dev/sdd磁盘/0/100/1f.2/0/dev/sda磁盘120GBSSD2SC120G1CS175/0/100/1f.2/1/dev/cdrom磁盘DVD+-RWGSA-H73N/0/100/1f.5/0.0.0/dev/sdbdisk500GBSAMSUNGHE502HJ如果您决定要查看系统上的所有设备,请耐心等待;你会得到一个文件,其中包含比你通常认为的“设备”更多的列表,这里是一个例子,这是一个“短”(小信息)列表:$sudolshw-short[sudo]password对于shs:H/W路径设备类描述===============================================================系统Inspiron530s/0总线0RY007/0/0内存128KiBBIOS/0/4处理器Intel(R)Core(TM)2DuoCPU/0/4/a内存32KiBL1缓存/0/4/b内存6MiBL2缓存/0/24内存6GiB系统内存/0/24/0内存2GiBDIMMDDR2同步667/0/24/1内存1GiBDIMMDDR2同步667/0/24/2内存2GiBDIMMDDR2同步667/0/24/3内存1GiBDIMMDDR2同步667/0/1通用/0/10通用/0/11通用/0/12通用/0/13通用/0/14通用/0/15通用/0/17通用/0/18通用/0/19通用/0/2通用/0/20通用/0/100桥82G33/G31/P35/P31ExpressDRAM/0/100/1桥82G33/G31/P35/P31ExpressPCI/0/100/1/0显示Caicos[RadeonHD6450/7450/84/0/100/1/0.1多媒体CaicosHDMI音频[RadeonHD6/0/100/19enp0s25网络82562V-210/100网络连接/0/100/1a总线82801I(ICH9系列)USBUHCI/0/100/1a/1usb3总线UHCI主机控制器/0/100/1a.1总线82801I(ICH9系列)USBUHCI/0/100/1a.1/1usb4总线UHCI主机控制器/0/100/1a.1/1/2输入RockCandy无线键盘/0/100/1a.2总线82801I(ICH9系列)USBUHCI/0/100/1a.2/1usb5总线UHCI主机控制器/0/100/1a.2/1/2输入USB光学鼠标/0/100/1a.7总线82801I(ICH9系列)USB2EHCI/0/100/1a.7/1usb1总线EHCI主机控制器/0/100/1b多媒体82801I(ICH9系列)高清音频/0/100/1d总线82801I(ICH9系列)USBUHCI/0/100/1d/1usb6busUHCIHostController/0/100/1d/1/1scsi4storageCD04/0/100/1d/1/1/0.0.0/dev/sdcdiskCardReader-1/0/100/1d/1/1/0.0.0/0/dev/sdc磁盘/0/100/1d/1/1/0.0.1/dev/sdd磁盘2/0/100/1d/1/1/0.0.1/0/dev/sdddisk/0/100/1d.1总线82801I(ICH9系列)USBUHCI/0/100/1d.1/1usb7总线UHCI主机控制器/0/100/1d.2总线82801I(ICH9系列)USBUHCI/0/100/1d.2/1usb8总线UHCI主机控制器/0/100/1d.7总线82801I(ICH9系列)USB2EHCI/0/100/1d.7/1usb2busEHCIHostController/0/100/1d.7/1/2multimediaUSBLivecamera/0/100/1ebridge82801PCIBridge/0/100/1e/1communicationHSF56k数据/传真调制解调器/0/100/1f桥82801IR(ICH9R)LPC接口/0/100/1f.2scsi0存储82801IR/IO/IH(ICH9R/DO/DH)4/0/100/1f.2/0/dev/sda磁盘120GBSSD2SC120G1CS175/0/100/1f.2/0/1/dev/sda1卷111GiBEXT4卷/0/100/1f.2/1/dev/cdrom磁盘DVD+-RWGSA-H73N/0/100/1f.3总线82801I(ICH9系列)SMBusCon/0/100/1f.5scsi3storage82801I(ICH9Family)2portSA/0/100/1f.5/0.0.0/dev/sdbdisk500GBSAMSUNGHE502HJ/0/100/1f.5/0.0.0/1/dev/sdb1卷433GiBEXT4卷/0/3系统PnP设备PNP0c02/0/5系统PnP设备PNP0b00/0/6存储PnP设备PNP0700/0/7系统PnP设备PNP0c02/0/8系统PnPdevicePNP0c02/0/9systemPnPdevicePNP0c01运行以下命令列出设备类别并统计每个类别中的设备数量$须藤lshw-短|awk'{printsubstr($0,36,13)}'|尾巴-n+3|排序|uniq-c4bridge18bus1communication7disk1display12generic2input8memory3multimedia1network1processor4storage6system2volume注意:上面使用awk命令从lshw的输出是通过使用$0(选择完整的行)来实现的,但只能从正确的位置(第36个字符)开始,并且由于Category中没有超过13个字符的条目,子字符串在那里结束。命令的tail-n+3部分去掉了标题和后面的=====,所以最后的列表中只包含了那14种设备类型。(LCTT译注:上面命令中awk的部分在选择子串的时候是从第36个字符开始的,这个数字基本上取决于最长设备逻辑名的长度,所以在不同的系统环境下可能会有所不同,举个例子是当你的系统上有NVMeSSD时,你可能需要将其更改为41。)你会发现如果没有-short选项,每个磁盘类型设备将有大约12行输出,这包括逻辑名称,如/dev/sda,磁盘大小和类型等。$sudolshw-Cdisk[sudo]shs密码:*-disk:0描述:SCSIDiskproduct:CardReader-1<==读卡器?vendor:JIELIphysicalid:0.0.0businfo:scsi@4:0.0.0逻辑名:/dev/sdc版本:1.00能力:可移动配置:logicalsectorsize=512sectorsize=512*-mediumphysicalid:0逻辑名:/dev/sdc*-disk:1描述:SCSI磁盘产品:2供应商:AC4100-物理ID:0.0.1总线信息:scsi@4:0.0.1逻辑名称:/dev/sdd功能:可移动配置:logicalsectorsize=512sectorsize=512*-medium物理id:0逻辑名称:/dev/sdd*-diskdescription:ATADiskproduct:SSD2SC120G1CS175physicalid:0businfo:scsi@0:0.0.0logicalname:/dev/sda<==主磁盘版本:1101serial:PNY20150000778410606大小:111GiB(120GB)功能:分区分区:dos配置:ansiversion=5logicalsectorsize=512sectorsize=512signature=f63b5929*-cdrom<==也叫/dev/sr0描述:DVD刻录机产品:DVD+-RWGSA-H73N供应商:HL-DT-ST物理ID:1总线信息:scsi@1:0.0.0逻辑名称:/dev/cdrom逻辑名称:/dev/cdrw逻辑名称:/dev/dvd逻辑名称:/dev/dvdrw逻辑名称:/dev/sr0版本:B103序列号:[功能:可移动音频cd-rcd-rwdvddvd-r配置:ansiversion=5status=nodisc*-disk描述:ATA磁盘产品:SAMSUNGHE502HJ物理id:0.0。0总线信息:scsi@3:0.0.0逻辑名称:/dev/sdb<==次要磁盘版本:0002序列号:S2B6J90B501053大小:465GiB(500GB)功能:分区分区:dos配置ation:ansiversion=5logicalsectorsize=512sectorsize=512signature=7e67ccf3总结lshw命令提供了一些我们很多人通常不会处理的信息,但即使您只使用其中的一部分,知道有多少信息是很好的可用的
