我有什么硬件?

作者:Joey Bernard
通常您可能不一定知道您有什么样的硬件——您可能有一个来自小公司的无名盒子或一台二手机器。本月,我将介绍您可以用来找出已安装内容的工具。

首先是 lshw。这个实用程序列出硬件 (lshw)。如果您以普通用户身份运行它,它实际上会警告您以 root 身份运行它。所以请继续运行sudo lshw。您应该会看到系统信息的屏幕。第一部分将是常规信息,看起来应该像这样

jbernard-eeepc            
    description: Notebook
    product: 700
    vendor: ASUSTeK Computer INC.
    version: 0129
    serial: EeePC-1234567890
    width: 32 bits
    capabilities: smbios-2.5 dmi-2.5 smp-1.4 smp
    configuration: boot=normal chassis=notebook 
    ↪cpus=1 uuid=XXXXXX-XXXXX-XXXXX-XXXXX

这是我在我的小 ASUS EeePC 上运行它时得到的结果。您可以立即找到这只小野兽的制造商 (ASUSTeK)、BIOS 版本 (0129) 以及它是一台具有一个 CPU 的 32 位机器。 更多信息分为以下几类

core
   firmware - motherboard and BIOS information
   cpu - CPU information
      cache - cache information
   memory - memory information
      bank - specific bank memory information
   pci - PCI bus information
      display - PCI display adapter
      multimedia - PCI audio adapter
      pci - other PCI devices
      network - PCI network adapter
   usb - USB devices
   ide - IDE information
      disk - individual disks
         volume - volumes on this disk

为了了解有多少信息可用,主内存部分显示了关于我的 EeePC 的以下信息

*-memory
     description: System Memory
     physical id: 1f
     slot: System board or motherboard
     size: 512MiB
   *-bank
        description: DIMM DDR2 Synchronous 400 MHz (2.5 ns)
        product: PartNum0
        vendor: Manufacturer0
        physical id: 0
        serial: SerNum0
        slot: DIMM0
        size: 512MiB
        width: 64 bits
        clock: 400MHz (2.5ns)

这个实用程序基本上是一个多合一的工具,可以一次性输出您系统上的所有内容。但是,如果您只想了解有关机器中特定子系统的信息怎么办?为此存在一整套实用程序,当您需要一些特定信息或想在脚本中进行一些系统查询时,它们可能会更有用。

您可能想查看 CPU。 lscpu 实用程序提供类似于以下的输出

Architecture:          i686
CPU op-mode(s):        32-bit
CPU(s):                1
Thread(s) per core:    1
Core(s) per socket:    1
CPU socket(s):         1
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 13
Stepping:              8
CPU MHz:               571.427

由此,您可以看到制造商、它是 32 位还是 64 位、确切的版本和型号以及当前的 CPU 频率。

如果您想知道您的视频卡是否受 X11 支持,或者是否需要找到第三方驱动程序,您可以使用 lspci。此实用程序提供插入 PCI 总线的所有设备的列表。输出看起来像这样

00:02.0 VGA compatible controller: Intel Corporation 
 ↪Mobile 915GM/GMS/910GML Express Graphics Controller (rev 04)
00:02.1 Display controller: Intel Corporation 
 ↪Mobile 915GM/GMS/910GML Express Graphics Controller (rev 04)

此信息表明我的 EeePC 中的视频控制器是 Intel 控制器。所以,如果您愿意,您现在可以使用此信息在 Google 上搜索以了解您的视频卡以及如何最好地配置它。如果您想查看系统上有什么 USB 设备,请使用 lsusb。在我的 EeePC 上,我安装了一个 SD 卡,它显示为

Bus 001 Device 002: ID 0951:1606 Kingston Technology 

如果您对磁盘子系统感兴趣,您可以使用 blkid 实用程序找出您的系统有哪些磁盘子系统。此实用程序打印出所有可用的文件系统,输出格式如下

/dev/sda1: UUID="XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" TYPE="ext2" 
/dev/sda2: UUID="XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" TYPE="swap" 
/dev/sda3: UUID="XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" TYPE="ext2" 
/dev/sdb1: UUID="XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" TYPE="ext2" 

使用此实用程序,您可以了解有哪些设备可用以及在这些设备上使用了哪些文件系统。如果您想在 /etc/fstab 的条目中使用它们,也可以使用相关的 UUID。

现在您已经知道您的系统上有什么类型的硬件,最后要检查的是您的内核是否真正在使用可用的硬件。在大多数现代发行版中,内核被编译为使用模块。您可以使用 lsmod 命令检查加载了哪些模块。您将获得一个如下所示的列表

agpgart                31788  2 drm,intel_agp
lp                      7028  0 
video                  17375  1 i915
output                  1871  1 video

您可以看到 agpgart 模块的大小为 31788 字节,并被 drm 和 intel_agp 模块使用。

现在,希望您可以配置和优化您的硬件,以便充分利用它。如果您发现此处未涵盖的其他实用程序,我很乐意听到有关它们的信息。

图片来源:© Nenov Brothers/Shutterstock
加载 Disqus 评论