Skip to content

Open source tool to capture hardware data about computers generating a report on JSON file.

License

Notifications You must be signed in to change notification settings

usody/hardware_metadata

Repository files navigation

Usody Hardware Metadata

An open source tool to capture hardware data about computers generating a report on JSON file.

By default Hardware Metadata generates a report of the hardware characteristics of the computer using lshw, dmidecode, hwinfo, lscpi and smartmontools packages.

You must run as root / sudo.

Installation

Hardware Metadata should work in any Linux as long as it has all dependencies installed.

In Debian 11 Bullseye following installation steps:

  1. Clone this repository and go to the repository main folder.
git clone https://github.com/usody/hardware-metadata.git
  1. Make sure we have all required packages installed, debian packages and python packages . You can install all HWMD dependencies like the following way:
sudo make install_HWMD_dependencies
  1. If the previous step 2 fails, we can manually install HWMD dependencies. On bullseye, you can do it like the following way:
echo "deb http://deb.debian.org/debian bullseye-backports main contrib" | sudo tee /etc/apt/sources.list.d/backports.list
sudo apt update
sudo apt install -t bullseye-backports lshw=02.19*
sudo apt install --no-install-recommends python3 python3-dev python3-pip dmidecode smartmontools hwinfo
sudo pip3 install python-dateutil==2.8.2 hashids==1.3.1 requests~=2.21.0 python-decouple==3.3 colorlog==6.7.0

Run Hardware Metadata

Execute Hardware Metadata like sudo/root:

sudo make run

Also you can run Hardware Metadata manually like the following way:

sudo python3 <project-folder>/hwmetadata_core.py

At the end of the execution, generates a json file with the hardware information collected from your computer, called '{date}_{sid}_snapshot.json'.

Where {date}="%Y-%m-%d_%Hh%Mm%Ss" and {sid}=_snapshot_uuid_

Build Hardware Metadata ISO

To generate ISO image of Hardware Metadata based on Debian 11 Bullseye, execute:

sudo make build_bullseye

At the end of the execution, generate an ISO image inside '<project-folder>/build/iso/USODY_{hwmd_version}.iso'.

If you want to clean up all the files generated by the image (including iso file), execute:

sudo make build_clean

If you want to boot HWMD ISO, make sure you have installed qemu-system, execute:

sudo make boot_iso

Run tests

  1. Clone this repository and go to the repository main folder.
git clone https://github.com/usody/hardware-metadata.git
  1. Execute on project folder:
sudo make test

Code Ownership

All the code in this repository currently is owned by Associació Pangea – Coordinadora Comunicació per a la Cooperació.

About

Open source tool to capture hardware data about computers generating a report on JSON file.

Resources

License

Stars

Watchers

Forks