Wie bekomme ich Hardware Informationen über Linux / Unix?

7

Wie kann ich Hardware-Informationen von einem Linux / Unix-Rechner bekommen? Gibt es eine Reihe von APIs?

Ich versuche Informationen zu erhalten wie:

  • Betriebssystemname.
  • Betriebssystemversion.
  • verfügbare Netzwerkadapter.
  • Informationen zu Netzwerkadaptern.
  • die gesamte installierte Software.

Ich suche nach einer Anwendung, die diese Informationen sammelt und in einem schönen Format zeigt. Ich habe etwas Ähnliches mit dem Befehlszeilenprogramm "system_profile" für Mac OS X verwendet Ich frage mich, ob etwas Ähnliches auch für Linux verfügbar ist.

    
Unicorn 13.11.2009, 07:01
quelle

6 Antworten

15

Wenn Sie eine einfache Antwort benötigen, verwenden Sie:

  • cat /proc/cpuinfo
  • cat /proc/meminfo
  • lspci
  • lsusb

und ernten Sie alle benötigten Informationen aus der Ausgabe dieser Befehle. (Hinweis: Der Befehl cut könnte hier Ihr Freund sein, wenn Sie ein Shell-Skript schreiben.)

Wenn Sie weitere Details benötigen, fügen Sie einen -v -Schalter hinzu, um eine ausführliche Ausgabe von den Befehlen lspci und lsusb zu erhalten.

Wenn Sie nach einer funktionsreicheren API suchen, verwenden Sie HAL, auch wenn das für den Versuch, etwas zu bauen, ein Overkill sein könnte.

    
AttishOculus 13.11.2009, 07:48
quelle
7

Es gibt einen Bash-Befehl lshw - list hardware

    
Mojo Risin 13.11.2009 07:05
quelle
7

Wenn Sie nach einem Werkzeug suchen, das Systeminformationen anzeigt, wäre das GUI-Tool wie HardInfo für Sie nützlich.

>

In Ubuntu können Sie HardInfo wie folgt installieren ...

  

sudo apt-get install hardinfo

Prost

    
Ei Maung 13.11.2009 08:31
quelle
2

Ich würde hal , die Hardware-Abstraktionsschicht, verwenden. Es enthält sowohl einige GUI-Befehle, einige tty-Befehle (die von Shell-Programmen verwendet werden können) als auch Bibliotheksbindungen für c und mehrere andere Sprachen.

HAL ist nicht wirklich ein Standard-Teil von "linux", aber ich denke, es wird von den meisten modernen Distributionen verwendet.

    
Rasmus Kaj 13.11.2009 07:19
quelle
1

Versuchen Sie sudo lshw . Es ist am einfachsten.

    
oli 05.01.2015 14:14
quelle
0

Da Sie die API erwähnt haben, versuchen Sie es mit der exec Befehlsfamilie für C. Sie können sie verwenden, um diese auszuführen Binärdateien, die andere Leute erwähnt haben. Um eine robuste / flexible Lösung zu erstellen, müssen Sie wahrscheinlich auch die Unix fork () - Befehle nutzen. Sie müssen auch einen Mechanismus entwickeln, um die von diesen Dienstprogrammen ausgegebenen Ausgaben zu erfassen. Schauen Sie in Unix-Pipes dafür.

    
Jai Prabhu 14.11.2009 01:43
quelle

Tags und Links