Hardware-Inventarisierung mal anders(?)

05.07.2026

Ich habe bereits seit einiger Zeit immer mal wieder vor, die in meinen Bastelschränken und auf meinem Schreibtisch vorhandenen Hardwarekomponenten sauber zu inventarisieren. Alle meine bisherigen Versuche schlugen jedoch fehl, da ich mich bisher darauf fokussierte, eine self-hosted Anwendung dafür zu finden. Allerdings sind mir die üblichen Verdächtigen entweder zu schwergewichtig oder zu unflexibel. Ich kam aber auf eine (für mich) neue Idee:

Die Idee ist simpel: Benutze installierte Anwdndungen, um die Rechner zu inventarisieren, gib acht, dass das Resultat in Markdown formatiert ist. Alles, was dann noch zu tun blieb war, das Resultat in ein Textpanel in das Dashboard der jeweiligen Maschine in Grafana zu integrieren.

Für die einzige Windows-Maschine, die ich noch besitze, habe ich das Resultat per Hand erzeugt, für die Linux-Maschinen habe ich zwei Skripte geschrieben - eins funktioniert für PCs und eins funktioniert für Raspis und ähnliche:

#!/bin/bash
#Intel und vergleichbare
echo "# ${HOSTNAME}"
echo "dmidecode -t 2 |grep "Manufacturer\|Product Name\|Serial Number\|Type:"
echo "dmidecode -t 4 |grep "Version:"
echo -e '\tCores: '$(nproc --all)
echo "dmidecode -t 17 |grep "Size\|Locator\|Manufacturer\|Serial Number"
echo "lsblk -o NAME,KNAME,VENDOR,MODEL,SERIAL,SIZE,STATE -d |grep -v loop| sed -e 's/^/\t/'
echo "echo -e '\t'$(uname -a)
echo -e '\t'$(cat /etc/lsb-release |grep DISTRIB_DESCRIPTION|cut -d "=" -f2 | tr -d \")
#!/bin/bash
#Raspis, Arm et. al.
echo "# ${HOSTNAME}"
echo "cat /sys/firmware/devicetree/base/model| sed -e 's/^/\t/'
echo ""
#Diese beiden Zeilen müssen auskommentiert werden, wenn es sich nicht um einen Raspi handelt!
#echo -e "\n#vcgencmd version| sed -e 's/^/\t/'
echo "lscpu |grep "Architecture\|Vendor ID\|Model name\|Serial Number"| sed -e 's/^/\t/'
echo "free -h| sed -e 's/^/\t/'
echo "lsblk -o NAME,KNAME,VENDOR,MODEL,SERIAL,SIZE,STATE -d |grep -v "zram\|loop"| sed -e 's/^/\t/'
echo "echo -e '\t`'$(uname -a)'`'

Damit erhält man dann zum Beispiel ein solches Ergebnis:

# Futro
        Manufacturer: FUJITSU
        Product Name: D3313-B1
        Serial Number: xxxxxxxx
        Type: Motherboard
        Version: AMD GX-217GA SOC with Radeon(tm) HD Graphics   
        Size: 8 GB
        Locator: DIMM 1
        Bank Locator: CHANNEL A
        Manufacturer: <BAD INDEX>
        Serial Number: xxxxxxxx
        NAME   KNAME  VENDOR   MODEL   SERIAL                 SIZE STATE
        sda    sda    ATA      INTENSO xxxxxxxxxxxxxxxxxxxx1 476,9G running
        `Linux futro 5.15.0-139-generic #149-Ubuntu SMP Fri Apr 11 22:06:13 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux`

und in Grafana sieht das dann so aus:

Screenshot Inventaraufstellung in Grafana

Aktualisierung vom 5. Juli 2026

Das Skript wurde verbessert - unter anderem werden nun auch Angaben zur Anzahl der Cores und der installierten Distribution ins Ergebnis aufgenommen.

Artikel, die hierher verlinken

Datenmodell für Inventarisierung

07.09.2025

Im vorhergehenden Artikel zum Thema Inventarisierung habe ich beschrieben, wie ich Rechner und deren Komponenten für meinen Haushalt/Labor mit einer sehr schnellen Lösung umfassend dokumentiert habe. Diese Beschränkung auf Rechner reicht natürlich nicht aus.

Alle Artikel rss Wochenübersicht Monatsübersicht Codeberg Repositories Mastodon Über mich home xmpp


Vor 5 Jahren hier im Blog

  • GeoJSON in EBMap4D

    31.07.2021

    Ich habe die Anwendung EBMap4D einer Generalüberholung unterzogen und neue Features hinzugefügt...

    Weiterlesen

Neueste Artikel

  • Automatische Konvertierung von JavaScript nach Java

    Ich halte mich von den Themen Artificial Intelligence und Machine Learning (Large Language Models) ja fern so gut es geht - vor allem, weil ich das mal studiert habe. Manchmal überkommt mich aber die Neugierde - das Resultat war bisher immer schlechte Laune.

    Weiterlesen
  • OCR Workflow in der sQLshell

    Wie bereits in einem früheren Artikel beschrieben habe verfügt die sQLshell über eine Integration zur Erfassung von Daten aus Dokumentendirekt per Optical Character Recognition. Ich habe diese Integration weiter verfeinert und möchte hier einen exemplarischen Workflow für diese Möglichkeit zeigen

    Weiterlesen
  • Docker-Services im Homelab

    Diese Seite wird mit allen derzeit in meinem Self-Hosting Homelab betriebenen Services auf Docker-Basis befüllt (Eigenentwicklungen werden nicht genannt, sofern sie keine öffentlich verfügbaren Open-Source-Lösungen darstellen).

    Weiterlesen

Manche nennen es Blog, manche Web-Seite - ich schreibe hier hin und wieder über meine Erlebnisse, Rückschläge und Erleuchtungen bei meinen Hobbies.

Wer daran teilhaben und eventuell sogar davon profitieren möchte, muss damit leben, daß ich hin und wieder kleine Ausflüge in Bereiche mache, die nichts mit IT, Administration oder Softwareentwicklung zu tun haben.

Ich wünsche allen Lesern viel Spaß und hin und wieder einen kleinen AHA!-Effekt...

PS: Meine öffentlichen Codeberg-Repositories findet man hier.