Comment puis-je obtenir des informations matérielles à partir d'une machine Linux / Unix. Y a-t-il un ensemble d'API? P>
J'essaie d'obtenir des informations comme: p>
Je cherche une application qui collecte ces informations et le montrer dans un bon format. J'ai utilisé quelque chose de similaire avec l'outil de ligne de commande "system_profile" pour Mac OS X. i se demandait si quelque chose de similaire est également disponible pour Linux. P>
7 Réponses :
Il y a une commande Bash LSHW - Liste Hardware P>
Dans certaines circonstances, LSHW pourrait ne pas être disponible, mais DMidecode, qui fournit des informations similaires, c'est souvent (je pense aux hyperviseurs VMware ESX).
@Unicorn, pouvez-vous être plus précis sur les informations matérielles que vous souhaitez extraire?
J'utiliserais HAL n'est pas vraiment une partie standard de "Linux", mais je pense qu'il est utilisé par la plupart des distributions modernes. P> hal code>, la couche d'abstraction matérielle. Il inclut à la fois certaines commandes d'interface graphique, certaines commandes TTY (qui peuvent être utilisées à partir de programmes Shell) et des liaisons de bibliothèque pour C et plusieurs autres langues. P>
Si vous avez besoin d'une réponse simple, utilisez: p>
CAT / PROC / CPUINFO CODE> LI>
-
CAT / PROC / MEMINFO CODE> LI>
-
lspci code> li>
-
lsusb code> li>
ul>
et récolte toutes les informations dont vous avez besoin de la sortie de ces commandes. (Remarque: la commande couper code> peut être votre ami ici si vous écrivez un script shell.) P>
Si vous avez besoin de plus en détail, ajoutez un commutateur -V code> pour obtenir la sortie Verbose dans le LSPCI code> et lsusb code> commandes. P>
Si ce que vous cherchez est une API plus fonctionnelle, puis utilisez HAL, bien que cela puisse être une overcive pour ce que vous essayez de construire. P>
Ou écrivez un script dans une belle langue de script pour aller chercher et formater les données comme vous le souhaitez. N'oubliez pas d'ajouter Ifconfig pour obtenir des informations sur l'adaptateur réseau.
Si vous recherchez un outil qui affiche des informations système, l'outil GUI comme Hardinfo serait utile pour vous. p>
in ubuntu, vous pouvez installer hardinfo comme celui-ci ... p>
sudo apt-get installer hardinfo p> blockQuote>
acclamations p>
Depuis que vous avez mentionné API, essayez le EXED famille de commandes de C. Vous peut les utiliser pour exécuter ces fichiers binaires que d'autres personnes ont mentionné. Pour créer une solution robuste / flexible, vous devrez probablement également exploiter les commandes UNIX Fork (). Vous devrez également développer un mécanisme de capture de la production de la production de ces utilitaires. Regardez dans des tuyaux Unix pour cela. P>
Essayez sudo lshw code>.
C'est le plus facile. P>
Vous pouvez utiliser InXi qui fournit toutes les informations matérielles, y compris la température du processeur, etc. p>
Installer sur le système d'exploitation basé sur le chapeau rouge
Installer sur OS basé sur Debian
Sudo DNF Installez Inixi CODE> P>
APT-GET INSTALLER INXI CODE> P>
Il y a beaucoup de manières, des outils de ligne de commande aux appels d'API de noyau. À moins que vous ne nous disiez ce que vous essayez de faire, toutes les réponses ne pouvaient être que des devintes.