From Gentoo Wiki
Jump to:navigation Jump to:search


The linux hardware database is an automatically created dataset, based on information collected through the hw-probe utility. The information accessible on the linux-hardware website can help to check operability of hardware devices, view logs and find drivers.

In addition to the sys-apps/hw-probe package provided in the Gentoo repository, there is hw-probe.AppImage and a flatpak.

The database is backed up to the linuxhw github repository for statistical analysis by third parties. The project is active, and there are currently new additions for Gentoo every day.



Install sys-apps/hw-probe:

root #emerge --ask sys-apps/hw-probe



user $hw-probe --help
  Hardware Probe (hw-probe)
  A tool to probe for hardware, check operability and find drivers

  Hardware Probe (hw-probe) is a tool to probe for hardware,
  check its operability and upload result to the BSD hardware database.
  By creating probes you contribute to the "HDD/SSD Desktop-Class Reliability
  Test" study: https://github.com/linuxhw/SMART

  hw-probe [options]

  hw-probe -all -upload

  Private information (including the username, machine's hostname, IP addresses,
  MAC addresses, UUIDs and serial numbers) is NOT uploaded to the database.
  The tool uploads 32-byte prefix of salted SHA512 hash of MAC addresses and serial
  numbers to properly identify unique computers and hard drives. UUIDs are decorated
  in the same way, but formatted like regular UUIDs in order to save readability of
  logs. All the data is uploaded securely via HTTPS.

      Print this help.
      Print version info.

      Print the tool version (1.6) and don't do anything else.

      Enable all probes.
      Probe for hardware. Collect only
      hardware related logs.
      Collect system logs.
  -log-level N
      Set the logging level to N.
      Available values:
        - minimal
        - default
        - maximal
      Collect minimal number of logs. Equal to --log-level=min.
      Collect maximal number of logs. Equal to --log-level=max.
  -enable LIST
      Comma separated list of logs to enable in addition to
      current log level.
  -disable LIST
      Comma separated list of logs to disable in current
      log level. Some logs cannot be disabled. For example,
      you can disable collecting of 'fstab', but you cannot
      disable logging of 'smartctl'.
      Probe for printers.
      Probe for scanners.
      Check devices operability.
  -id|-name DESC
      Any description of the probe.
      Upload result to the hardware database. You will get
      a permanent URL to view the probe.
      By use of this option you confirm uploading of 32-byte
      prefix of salted SHA512 hash of MAC addresses and serial
      numbers to prevent duplication of computers in the DB.
  -hwinfo-path PATH
      Path to a local hwinfo binary.
      Set outgoing http/https proxy using syntax: proxy.domain.local:3128

  -i|-inventory-id ID
      Mark the probe by inventory ID.
      Generate new inventory ID.
  -email ADDR
      Email for node status notifications.

      Start monitoring of the node.
      Stop monitoring of the node.
      Remind node inventory ID.

  -save DIR
      Save probe package to DIR. This is useful if you are offline
      and need to upload a probe later (with the help of -src option).
  -src|-source PATH
      A probe to upload.
  -fix PATH
      Update list of devices and host info
      in the probe using probe data.
      Show devices list.
      Show host info and devices list.
      Show host info only.
      Use with -show option to show type and status of the device.
  -pci-ids  PATH
  -usb-ids  PATH
  -sdio-ids PATH
  -pnp-ids  PATH
      Path to {pci,usb,sdio,pnp}.ids file to read missed device names.
      List executed probes (for debugging).
      Do nothing. Obsolete option.
      Save uploaded probes.
      Do nothing. Obsolete option.
      Probe for ACPI table.
      Decode ACPI table.
  -import DIR
      Import probes from the database to DIR for offline use.
      If you are using Snap or Flatpak package, then DIR will be created
      in the sandbox data directory.
      Provide inventory ID by -i option in order to import your inventory.

  Probes info is saved in the /root/HW_PROBE directory.

Submitting information

Anybody can submit computer details to the database with a single command:

root #hw-probe -all -upload
Probe for hardware ... Ok
Reading logs ... Ok
Uploaded to DB, Thank you!
Probe URL: https://linux-hardware.org/?probe=65e73516b5


Creating a hardware probe contributes to following 2 projects and studies:


Please note that a 32-byte prefix of salted SHA512 hashes of MAC addresses and serial numbers are uploaded to the server in order to properly identify unique computers and parts. These are unlikely to be reversible.

Private info is not collected. Moreover, it's safer to share logs by hw-probe rather than share manually, because most private data is removed or hashed at the client side before uploading.

External resources