LinuxCommandLibrary

discover

Discover system hardware

SYNOPSIS

discover [options] [devices]

PARAMETERS

-h, --help
    Display help message and exit

-V, --version
    Print version information and exit

-l, --list
    List all detected hardware devices

-p, --pci
    Scan only PCI bus

-u, --usb
    Scan only USB devices

-s, --scsi
    Scan SCSI and Fibre Channel devices

-i, --ide
    Scan IDE/ATAPI drives

-f, --format=<format>
    Set output format (e.g., text, xml, html)

--data-path=<path>
    Specify path to hardware database

--root=<path>
    Set alternate root directory for scanning

DESCRIPTION

discover is a Linux command-line tool for probing and identifying hardware components on a system. It scans buses like PCI, USB, SCSI, and IDE, matching detected devices against a local database of known hardware signatures.

Originally designed for use during system installation or troubleshooting, it outputs detailed information about processors, motherboards, network cards, storage devices, and more. The tool supports various output formats and can focus on specific hardware categories.

While powerful for its time, discover is largely deprecated in modern distributions, replaced by dynamic tools like udev, udevadm, and ls* utilities. It remains useful in legacy environments or for static hardware inventories.

CAVEATS

Deprecated in modern Linux; not installed by default. Requires hardware database package. May not detect virtualized or new hardware accurately.

COMMON USAGE

List PCI devices: discover -p -l
Full scan: discover -l

DATABASE

Relies on /usr/share/discover/ database; update via package manager.

HISTORY

Developed in late 1990s for Mandrake Linux by Bill Nottingham and others. Integrated into several distros like Conectiva and Linspire for installer hardware probing. Peaked in early 2000s; superseded by HAL, solid, and udev by mid-2000s.

SEE ALSO

lspci(8), lsusb(8), lshw(1), hwinfo(1), udevadm(8)

Copied to clipboard