我有一台基于 ARM 的计算机,似乎可以正常运行 Ubuntu Linux(非 GUI)。如何获取该计算机上所有组件的列表?如果可能的话,比如以太网芯片、Wifi 芯片、蓝牙、CPU、电源管理芯片等类型。
答案1
ARM 实现的变化太大,标准工具无法涵盖。
向下挖掘/sys/class
你会发现所有的组件,但这样做很痛苦。find /sys/class -name name
由于符号链接,您无法用于查找所有组件。find -L
由于圆圈链接,您也无法使用。
cat /sys/class/*/*/device/*/{,*/,*/*/}name */*/device/*/name|sort -u
给您对设备的一些印象,但如果您确实想了解实际加载驱动程序的设备,则必须手动阅读dmesg
.
答案2
对于列出物联网设备中的硬件,通常最有用的命令dmesg
是cat /proc/cpuinfo
和lsusb
。
在大多数物联网品牌中,lsusb
它显示出其有用性,例如sinovoip(香蕉)倾向于将许多硬件连接到USB控制器。
至于列出所有组件;那是不可能的。没有可靠的方法来列出通过 GPIO 或 i2c 标准连接的组件。
请参阅覆盆子示例:
cat /proc/cpuinfo
,除了列出所有核心/线程(这里有 4 个)之外,还在末尾列出了芯片组型号、版本和在一些板上,序列号。 (必须滑到最后才能看到)
pi@raspberrypi:~ $ cat /proc/cpuinfo
processor : 0
model name : ARMv7 Processor rev 4 (v7l)
BogoMIPS : 38.40
Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x0
CPU part : 0xd03
CPU revision : 4
processor : 1
model name : ARMv7 Processor rev 4 (v7l)
BogoMIPS : 38.40
Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x0
CPU part : 0xd03
CPU revision : 4
processor : 2
model name : ARMv7 Processor rev 4 (v7l)
BogoMIPS : 38.40
Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x0
CPU part : 0xd03
CPU revision : 4
processor : 3
model name : ARMv7 Processor rev 4 (v7l)
BogoMIPS : 38.40
Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x0
CPU part : 0xd03
CPU revision : 4
Hardware : BCM2709
Revision : a02082
Serial : 00000000xxxxxxxx
和lsusb
:
$ lsusb
Bus 001 Device 002: ID 0424:9512 Standard Microsystems Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
Bus 001 Device 005: ID 05dc:a781 Lexar Media, Inc.
答案3
答案4
该lshw
命令给出了计算机组件的相当完整的列表。
你可以在 Ubuntu 上使用apt-get install lshw
.