[Digression]Diagnostiquer son matériel

Partagez ici vos Trucs et vos Astuces.
Répondre
Avatar du membre
sv0t
Membre actif
Membre actif
Messages : 533
Enregistré le : 30 avr. 2016, 12:06
Localisation : Charente-Maritime
Status : Hors ligne

14 juin 2020, 21:49

Salut,

Je met en ligne le brouillon de ce sujet (il y a des coquilles et sûrement des fautes) afin de recueillir vos commentaires et conseils.



Lister son materiel

dmidecode est un outil pour vider le contenu d'une table DMI d'un ordinateur (certains disent SMBIOS) dans un format lisible par l'homme. sous la forme d'un tableau contennant une description des composants matériels du système, ainsi que d'autres informations utiles telles que les numéros de série et la révision du BIOS.
Grâce à ce tableau, vous pouvez récupérer ces informations sans avoir à rechercher le matériel réel. Bien que ce soit un bon point en termes de vitesse et de sécurité des rapports, cela rend également les informations présentées peu fiables.
Le tableau DMI ne décrit pas seulement de quoi le système est actuellement composé, il peut également signaler les évolutions possibles (telles que les processeurs plus rapide pris en charge ou la quantité maximale de mémoire prise en charge).
SMBIOS signifie System Management BIOS, tandis que DMI signifie Desktop Management Interface. Les deux normes sont étroitement liées et développées par le DMTF (Desktop Management Task Force). https://www.dmtf.org/
Lorsque vous l'exécutez, dmidecode essaiera de localiser la table DMI. Il essaiera d'abord de lire la table DMI à partir de sysfs, puis essaiera de lire directement à partir de la mémoire si l'accès sysfs a échoué. Si dmidecode réussit à localiser une table DMI valide, il analysera alors cette table et affichera une liste d'enregistrements comme celle-ci:

Handle 0x0002, DMI type 2, 8 bytes. Base Board Information
Manufacturer: Intel
Product Name: XXXXXXX
Version: XXXXXX-XXX
Serial Number: XXXXXXXXXXXX

lshw qui permet d'extraire des informations détaillées sur la configuration matérielle de la machine. lshw peut signaler la configuration exacte de la mémoire, la version du micrologiciel, la configuration de la carte mère, la version et la vitesse du processeur, la configuration du cache, la vitesse du bus, etc. sur x86 ou IA-64 compatible DMI systèmes et sur certaines machines PowerPC

lshw prend actuellement en charge DMI (x86 et IA-64 uniquement), l'arborescence des périphériques OpenFirmware (PowerPC uniquement), PCI / AGP, CPUID (x86), IDE / ATA / ATAPI, PCMCIA (uniquement testé sur x86), SCSI et USB.

lspci est un utilitaire permettant d'afficher des informations sur les bus PCI dans le système et les périphériques qui y sont connectés.
Par défaut, il affiche une brève liste de périphériques. Utilisez les options décrites ci-dessous pour demander une sortie plus détaillée ou une sortie prévue pour l'analyse par d'autres programmes. Si vous allez signaler des bogues dans les pilotes de périphériques PCI ou dans lspci lui-même, veuillez inclure la sortie de "lspci -vvx" ou encore mieux "lspci -vvxxx "(voir cependant ci-dessous les éventuelles mises en garde).
Certaines parties de la sortie, en particulier dans les modes très verbeux, ne sont probablement intelligibles que pour les pirates PCI expérimentés. Pour une définition exacte initions des champs, veuillez consulter les spécifications PCI ou les fichiers include de header.h et /usr/include/linux/pci.h.
L'accès à certaines parties de l'espace de configuration PCI est limité à root sur de nombreux systèmes d'exploitation, donc les fonctionnalités de lspci disponibles pour les utilisateurs normaux sont limités. Cependant, lspci fait de son mieux pour afficher autant que disponible et marquer toutes les autres informations avec <accès refusé>

lsusb est un utilitaire permettant d'afficher des informations sur les bus USB du système et les périphériques qui y sont connectés.

hardinfo est un profileur de système et une référence pour les systèmes Linux, qui rassemble des informations sur le matériel et le système d'exploitation, effectue un benchmark et génère des rapports. Les informations recueillies sont présentées sur une interface graphique simple et intuitive.
Les informations sont regroupées en quatre groupes principaux: ordinateur, périphériques, réseau et repères.
Le groupe Ordinateur contient principalement des informations sur les logiciels de base. Cela comprend, mais sans s'y limiter, les informations sur le fonctionnement système (version du noyau, bibliothèque C, distribution, etc.), modules du noyau, informations locales, utilisation du système de fichiers, utilisateurs / groupes et outils de developement.

Le groupe Périphériques contient des informations sur le matériel, telles que détectées par le système d'exploitation. Hardinfo est incapable de détecter par lui-même, il répertorie simplement ce que le système d'exploitation a pu trouver. Cela comprend, mais sans s'y limiter, des informations sur le processeur (y compris la disposition du cache, les bogues connus et les indicateurs de fonctionnalité avec leur explication), les périphériques (tels que les périphériques USB, PCI et d'entrée).

Le groupe Réseau répertorie les informations sur les interfaces réseau, la table de routage, les serveurs DNS et d'autres sujets liés au réseau.

Le groupe Benchmarks permet d'effectuer des benchmarks simples pour tester les capacités du CPU et du FPU, ainsi que certaines des interfaces utilisateur graphiques capacités aussi. Dans les versions précédentes, il était possible d'envoyer les résultats du benchmark à un serveur central, il était donc possible de comparer les repères avec les autres utilisateurs Hardinfo; ce service est désactivé.

Les rapports peuvent être générés soit en appelant Hardinfo avec des paramètres de ligne de commande spéciaux (voir ci-dessous), soit en cliquant sur "Générer le rapport" dans l'interface graphique. Les rapports peuvent être personnalisés dans l'interface graphique et enregistrés au format HTML ou texte brut.



information temps réel
top fournit la vue dynamique en temps réel d'un système en cours d'exécution. Il peut afficher des informations résumées sur le système ainsi qu'une liste des processus ou threads actuellement gérés par le noyau Linux. Les types d'informations récapitulatives du système affichés et les types, l'ordre et la taille des informations affichées pour les processus sont toutes configurables par l'utilisateur et cette configuration peut être rendue persistante lors des redémarrages.

Le programme fournit une interface interactive limitée pour la manipulation de processus mais aussi une interface beaucoup plus étendue pour la configuration englobant tous les aspects de son fonctionnement. Vous êtes libre derenommer les programme comme vous le souhaitez. Ce nouveau nom, éventuellement un alias, sera ensuite reflété sur l'affichage et utilisé lors de la lecture et de l'écriture du fichier de configuration.

nmon est un administrateur système, un tuner, un outil de référence. Il peut afficher le CPU, la mémoire, le réseau, les disques (mini graphiques ou nombres), le fichier systèmes, NFS, principaux processus, ressources (version Linux et processeurs) et sur les informations de micro-partition Power.



mémoire


free free affiche la quantité totale de mémoire physique et d'échange libre et utilisée dans le système, ainsi que les tampons et les caches utilisés par le kernel. Les informations sont collectées en analysant / proc / meminfo. Les colonnes affichées sont:
* Mémoire installée totale (MemTotal et SwapTotal dans / proc / meminfo)
* Mémoire utilisée (calculée comme le total - libre - tampons - cache)
* Mémoire inutilisée disponnible (MemFree et SwapFree dans / proc / meminfo)
* Mémoire partagée utilisée (principalement) par tmpfs (Shmem dans / proc / meminfo)
* Mémoire utilisée par les tampons du noyau (tampons dans / proc / meminfo)
* Mémoire utilisée par le cache de pages et les dalles (mis en cache et récupérable dans / proc / meminfo)
* buff / cache Somme des tampons et du cache disponible

Estimation de la quantité de mémoire disponible pour démarrer de nouvelles applications, sans échange. Contrairement aux données fournies par le cache ou champs libres, ce champ prend en compte le cache de pages et également que toutes les dalles de mémoire récupérables ne seront pas récupérées en raison d'éléments en cours d'utilisation (MemAvailable dans / proc / meminfo, disponible sur les noyaux 3.14, émulé depuis les noyaux 2.6.27+

Edit du titre ajout [Digression] du 16.06

Edit du 01.07

lscpu rassemble des informations sur l'architecture du processeur à partir de sysfs, / proc / cpuinfo et de toutes les bibliothèques spécifiques à l'architecture applicables. La sortie de la commande peut être optimisée pour l'analyse ou pour une lisibilité aisée par les humains. Les informations comprennent, par exemple, le nombre de CPU, threads, cœurs, sockets et nœuds NUMA (Non-Uniform Memory Access). Il y a aussi des informations sur les caches CPU et partage de cache, famille, modèle, bogoMIPS, ordre des octets et progression.
Dans les environnements virtualisés, les informations d'architecture CPU affichées reflètent la configuration du système d'exploitation invité qui est généralement différent du système physique (hôte). Sur les architectures qui prennent en charge la récupération des informations de topologie physique, lscpu affiche également le nombre de sockets physiques, puces, cœurs dans le système hôte.
Les options qui aboutissent à une table de sortie ont un argument de liste. Utilisez cet argument pour personnaliser la sortie de la commande. Spécifiez par une virgule séparée la liste des étiquettes de colonne afin de limiter la table de sortie aux seules colonnes spécifiées, disposées dans l'ordre spécifié. Voir COLONNES pour une liste d'étiquettes de colonne valides. Les étiquettes de colonne ne sont pas sensibles à la casse.
Toutes les colonnes ne sont pas prises en charge sur toutes les architectures. Si une colonne non prise en charge est spécifiée, lscpu imprime la colonne mais ne fournit pas toutes les données.

hwinfo est utilisé pour rechercher le matériel présent dans le système. Il peut être utilisé pour générer un journal de présentation du système qui pourra être utilisé ultérieurement.

lsscsi Utilise les informations dans sysfs (noyau Linux série 2.6 et ultérieures) pour répertorier les périphériques SCSI (ou hôtes) actuellement connectés au système. Beaucoup de périphérique de stockage non SCSI (mais pas tous) utilisaient le sous-système SCSI sous Linux. Dans la version lsscsi 0.30, un support a été ajouté pour répertorier les périphériques NVMe.
En mode ligne par périphérique (espace de noms LU ou NVMe), par défaut, chaque ligne commence par un tuple à 4 éléments entouré de crochets.
Pour les périphériques SCSI, le premier élément «H» est le numéro d'hôte, le deuxième élément «C» est le numéro du contrôleur, le troisième élément «T» est le numéro cible et l'élément final est le numéro d'unité logique (LUN). Tous les quatre sont des entiers. Pour les espaces de noms NVMe, voir deux paragraphes plus bas. Lorsque l'option --hosts est donnée pour les périphériques SCSI, le tuple est réduit à un élément: le numéro d'hôte.

lsblk répertorie les informations sur tous les périphériques de bloc disponibles ou spécifiés. La commande lsblk lit le système de fichiers sysfs et udev db pour collecter des informations. Si la base de données udev n'est pas disponible ou si lsblk est compilé sans prise en charge udev, il essaie de lire les ÉTIQUETTES, les UUID e t tous types de système de fichiers du périphérique de bloc. Dans ce cas, les autorisations root sont nécessaires.
La commande imprime tous les périphériques de bloc (sauf les disques RAM) dans un format arborescent par défaut. Utilisez lsblk --help pour obtenir une liste de toutes les options.
La sortie par défaut, ainsi que la sortie par défaut des options telles que --fs et --topology, est susceptible de changer. Donc, chaque fois que possible, vous devrait éviter d'utiliser les sorties par défaut dans vos scripts. Définissez toujours explicitement les colonnes attendues en utilisant --output columns-list dans les environnements où une sortie stable est requise.
Notez que lsblk peut être exécuté à temps quand udev ne dispose pas encore de toutes les informations sur les périphériques récemment ajoutés ou modifiés. Dans ce cas il est recommandé d'utiliser udevadm sett avant lsblk pour se synchroniser avec udev.

Edit du 08.07.2020

df affiche la quantité d'espace disque disponible sur le système de fichiers contenant chaque fichier argumenté. Si aucun nom de fichier n'est donné, l'espace disponible sur tous les systèmes de fichiers montés actuellement est affiché. L'espace disque est affiché en 1K par défaut, sauf si la variable d'environnement POSIXLY_CORRECT est définie, auquel cas des blocs de 512 octets sont utilisés.
Si un argument est le nom de fichier absolu d'un nœud de périphérique de disque contenant un système de fichiers monté, df affiche l'espace disponible sur ce fichier système plutôt que sur le système de fichiers contenant le nœud de périphérique. df ne peut pas montrer l'espace disponible sur le fichier système non monté, car sur la plupart des types de systèmes, cela nécessite une connaissance intime non portable des structures de système de fichiers.
(voir aussi pydf pour un visu avec diagramme et couleur)

fdisk est un programme piloté par boîte de dialogue pour la création et la manipulation de tables de partition. Il comprend les tables de partitions GPT, MBR, Sun, SGI et BSD Les périphériques de bloc peuvent être divisés en un ou plusieurs disques logiques appelés partitions. Cette division est enregistrée dans la table de partition, généralement trouvé dans le secteur 0 du disque. (Dans le monde BSD, on parle de «tranches de disque» et d'une «étiquette de disque».) Tout le partitionnement est piloté par défaut par les limites d'E / S du périphérique (la topologie). fdisk est capable d'optimiser la disposition du disque pour une taille de secteur 4K et utiliser un décalage d'alignement sur les appareils modernes pour MBR et GPT. C'est toujours une bonne idée de suivre les valeurs par défaut de fdisk comme valeurs par défaut (par exemple, premier et dernier secteurs de partition) et les tailles de partition spécifiées par la notation +/- <taille> {M, G, ...} sont toujours alignées selon les propriétés de l'appareil. Notez que partx fournit une interface riche pour les scripts pour imprimer les dispositions de disque, fdisk est principalement conçu pour les humains.

mount Tous les fichiers accessibles dans un système Unix sont organisés dans une grande arborescence, la hiérarchie des fichiers, enracinée dans /. Ces fichiers peuvent être répartis sur plusieurs appareils. La commande mount sert à attacher le système de fichiers trouvé sur un périphérique à la grande arborescence de fichiers. A l'inverse, la commande umount le détachera à nouveau. Le système de fichiers est utilisé pour contrôler la façon dont les données sont stockées sur l'appareil ou fournies de manière virtuelle par le réseau ou un autre service.

hdparm fournit une interface en ligne de commande vers diverses interfaces du noyau prises en charge par le sous-système Linux "SATA / PATA / SAS" libata "et l'ancienne sous-système de pilote IDE. De nombreux boîtiers de lecteurs USB plus récents (2008 et versions ultérieures) prennent également en charge "SAT" (traduction de commande SCSI-ATA) et, par conséquent peuvent également fonctionner avec hdparm, exemple, les modèles WD récents et d'autres boîtiers récents. Certaines options peuvent fonctionner correctement uniquement avec les derniers noyaux.
Avatar du membre
lol
Site Admin
Site Admin
Messages : 3315
Enregistré le : 04 avr. 2016, 12:11
Localisation : Madagascar
Contact :
Status : Hors ligne

15 juin 2020, 10:51

Salut,
La liste et le sujet sont intéressants. Merci!
C'est prévu pour T&A et/ou le Wiki ?
Quelques idées en vrac...

Mise en page bien sur ?
Préciser si la commande se lance en utilisateur ou root ?
Séparer les outils GUI et ligne de commande ?
Debian stable. XFCE.
C'est curieux chez les marins ce besoin de faire des phrases (Les tontons flingueurs).
Avatar du membre
lol
Site Admin
Site Admin
Messages : 3315
Enregistré le : 04 avr. 2016, 12:11
Localisation : Madagascar
Contact :
Status : Hors ligne

15 juin 2020, 15:14

Mes deux balles, à nouveau...

Il y a des outils déjà installés sur le système,n d'autres pas.
Quelques outils non listés:
- lscpu
- hwinfo
- lsscsi
- lsblk
- df (ou pydf pour ceux qui aiment les diagrammes et les couleurs...)
- fdisk
- mount
- hdparm

:006:
Debian stable. XFCE.
C'est curieux chez les marins ce besoin de faire des phrases (Les tontons flingueurs).
Avatar du membre
sv0t
Membre actif
Membre actif
Messages : 533
Enregistré le : 30 avr. 2016, 12:06
Localisation : Charente-Maritime
Status : Hors ligne

15 juin 2020, 19:24

Je pensais faire un T&A avec une description sommaire. Et détailler sur le wiki page par page.
Bien entendu je vais soigner la mise en page.
:006:
Avatar du membre
sv0t
Membre actif
Membre actif
Messages : 533
Enregistré le : 30 avr. 2016, 12:06
Localisation : Charente-Maritime
Status : Hors ligne

15 juin 2020, 21:57

Re,
Merci de donner du grain à mon moulin. Je ne connaissait pas lspcu, hwinfo, lsscsi, lsblk.

J'ai commencé par prendre des notes au brouillon que j'ai posté pour ouvrir le sujet et avancer. Il n'est pas question de le laisser en vrac ;-) mais je n'ai pas encore réfléchi à la mise en page, ni contenu par outils. Ou mettre une limite entre l'essentiel et le détail "superflu" ?

Je suis preneur de toutes suggestions. Merci
Avatar du membre
piratebab
Site Admin
Site Admin
Messages : 3428
Enregistré le : 24 avr. 2016, 18:41
Localisation : sud ouest
Status : Hors ligne

15 juin 2020, 22:55

et il y a aussi le contenu de /proc
et pour le monitoring
vmstat
w (pour savoir qui est connecté)
mon préféré est glances
--gilles--
Membre
Membre
Messages : 498
Enregistré le : 24 août 2016, 19:35
Localisation : Gnome 3.36 - debian 11 bullseye
Status : Hors ligne

16 juin 2020, 10:14

Il y a aussi l'outil inxi qui me semble très complet. En fait tous ces outils mentionnés dans les posts précédents font un ensemble complexe, je pense qu'avant de les regrouper dans un article de wiki gigantesque « Diagnostiquer son matériel », il vaudrait mieux rédiger un article pour chaque. Et pour faciliter les comparaisons entre les outils il faudrait adopter un ordre de présentation identique pour tous. Quitte à indiquer parfois que tel outil ne traite pas de tel domaine.


Juste une idée d'exemple :
0 Modèle, carte mère, BIOS, UEFI
1 CPU
2 RAM
3 Carte(s) graphique(s)
4 Disque(s) magnétique(s) ou SSD
5 Disque optique
6 Carte audio-son
7 Carte réseau
8

Bref, vous voyez l'idée et peut-être que vous trouverez une catégorisation plus détaillée, plus exhaustive.
Parler de liberté n'a de sens qu'à condition que ce soit la liberté de dire aux gens ce qu'ils n'ont pas envie d'entendre. Eric Blair, George Orwell
Avatar du membre
sv0t
Membre actif
Membre actif
Messages : 533
Enregistré le : 30 avr. 2016, 12:06
Localisation : Charente-Maritime
Status : Hors ligne

16 juin 2020, 11:50

Merci pour les contributions.

Je trouve l'idée de --gilles-- intéressante.

Peut-être déplacer le fil dans PC ?

J'ai éditer le titre.
Avatar du membre
piratebab
Site Admin
Site Admin
Messages : 3428
Enregistré le : 24 avr. 2016, 18:41
Localisation : sud ouest
Status : Hors ligne

16 juin 2020, 22:05

Il y a 3 d'outils
- celle permettant de lister le matériel reconnu (lsusb, lspci, lshw ..)
- celle permettant de connaître l'état du matériel (taux cpu, mémoire ...)
- celles permetant de connaitre l'état du systeme (qui est connecté, combien doctets ont transités ..)
Il y a probablement des outils que peuvent etre dans 2 catégories (ip liste les interfaces et donne leur état)
Avatar du membre
sv0t
Membre actif
Membre actif
Messages : 533
Enregistré le : 30 avr. 2016, 12:06
Localisation : Charente-Maritime
Status : Hors ligne

17 juin 2020, 07:57

Je vais faire une mise à jour de la page en synthétisant vos suggestions au plus vite.
Avatar du membre
piratebab
Site Admin
Site Admin
Messages : 3428
Enregistré le : 24 avr. 2016, 18:41
Localisation : sud ouest
Status : Hors ligne

17 juin 2020, 10:44

Un que je n'ai pas vu cité: HardInfo (different de hwinfo). GUI propre et complete
Avatar du membre
sv0t
Membre actif
Membre actif
Messages : 533
Enregistré le : 30 avr. 2016, 12:06
Localisation : Charente-Maritime
Status : Hors ligne

24 juin 2020, 20:23

J'ai eu beaucoup à faire ces derniers temps, je vais pouvoir donner un peu plus à ce sujet qui me tient à cœur ;)

A+
Avatar du membre
sv0t
Membre actif
Membre actif
Messages : 533
Enregistré le : 30 avr. 2016, 12:06
Localisation : Charente-Maritime
Status : Hors ligne

01 juil. 2020, 21:41

Salut,

je continus et continuerais de compléter ce sujet j'ai éditer le "brouillon" pour rajouter quelques outils. (pas encore fini)

Mes disponibilités ne sont pas exhaustives, mais je n’oublie pas.

:006:
Avatar du membre
lol
Site Admin
Site Admin
Messages : 3315
Enregistré le : 04 avr. 2016, 12:11
Localisation : Madagascar
Contact :
Status : Hors ligne

03 juil. 2020, 17:42

Pas de soucis,
C'est sympa d'avoir commencé, déjà!
Debian stable. XFCE.
C'est curieux chez les marins ce besoin de faire des phrases (Les tontons flingueurs).
Avatar du membre
sv0t
Membre actif
Membre actif
Messages : 533
Enregistré le : 30 avr. 2016, 12:06
Localisation : Charente-Maritime
Status : Hors ligne

08 juil. 2020, 06:18

lol a écrit :
15 juin 2020, 15:14
Quelques outils non listés:
- lscpu
- hwinfo
- lsscsi
- lsblk
- df (ou pydf pour ceux qui aiment les diagrammes et les couleurs...)
- fdisk
- mount
- hdparm
Salut,

J'ai inclu les outils listés ci-dessus, j’essaie de finir la liste d'outils cette semaine, puis la réorganisation du sujet.

La suite se fera sur le wiki, nous en reparlerons le moment venu...

A+
Avatar du membre
piratebab
Site Admin
Site Admin
Messages : 3428
Enregistré le : 24 avr. 2016, 18:41
Localisation : sud ouest
Status : Hors ligne

08 juil. 2020, 11:37

tu comptes parler de glances ?
Avatar du membre
sv0t
Membre actif
Membre actif
Messages : 533
Enregistré le : 30 avr. 2016, 12:06
Localisation : Charente-Maritime
Status : Hors ligne

08 juil. 2020, 16:35

Oui mais il faut que je trouve le temps de me familiariser avec, lire la doc et un peu de pratique. Dans ceux déjà lister, il en avait pas mal que je ne connaissait pas.

Je m'en occupe.
:006:
Répondre