Il existe plusieurs façons d’avoir des renseignements sur la version de sa distribution, son nom, version du noyau, etc.
Nom générique et version
Pour avoir le nom générique de la distribution et le numéro de version on va voir /etc/issue
Serveur local
# cat /etc/issue |
Serveur ovh
# cat /etc/issue |
Nom générique et version détaillée
Pour avoir la version du noyau on utilise lsb_release -a
Serveur local
# lsb_release -a |
Quasiment similaire à :
# cat /etc/lsb-release |
Serveur ovh
# lsb_release -a |
Quasiment similaire à :
# cat /etc/lsb-release |
Version du noyau
Pour avoir la version du noyau on va voir /proc/version
Serveur local
# cat /proc/version |
Serveur ovh
# cat /proc/version |
Version du noyau détaillées
La commande uname
affiche les informations système suivantes : nom du noyau, hostname, version du noyau, date du noyau, nom matériel de la machine, type de processeur, plate-forme matérielle, système d’exploitation.
Serveur local
# uname -a |
Serveur ovh
# uname -a |
Note : A la place du hostname il y a l‘@IP de la maison (et non pas celle du serveur…). Par ailleurs, la commande hostname renvoie cette même adresse.
La commande permettant de changer le hostname est : hostnamectl set-hostname LeNomDuServer
Informations sur le matériel du système Linux
informations CPU
Commande lscpu
La commande lscpu
donne des informations sur votre CPU : architecture, nombre de CPU, de cœurs, de familles de processeurs, de caches CPU, de threads, etc.
# lscpu |
Le fichier /proc/cpuinfo
Ce fichier donne les détails de chaque processeur :
# cat /proc/cpuinfo |
Utilitaire dmidecode
L’utilitaire dmidecode
lit et interprète directement la table DMI (Desktop Management Interface) ou SMBIOS (System Management BIOS). Il fournit des informations sur l’état matériel actuel de la machine et sur ses extensions possibles (vitesse max. du processeur, quantité de mémoire possible, etc.). Contrairement à hwinfo
qui interroge un composant, dmidecode
lit les informations telles que détectées par le BIOS et la carte mère. C’est rapide, parfois plus précis que hwinfo
, mais parfois faux donc à vérifier.
# dmidecode -t processor |
informations sur les bus PCI
Commande lspci
La commande lspci
fournit des informations détaillées sur les cartes et adaptateurs reliés au bus PCI. Les adaptateurs peuvent être ceux connectés sur les ports d’extension de la carte mère mais aussi ceux intégrés à la carte mère (contrôleurs IDE/SATA, cartes réseaux, etc.). Les bus AGP et PCI Express sont considérés comme étant des bus PCI.
# lspci (-t) |
Donne les détails de chaque bus.
# lspci -v |
Vous pouvez détailler encore plus avec l’option -v
et préciser un adaptateur avec ses identifiants. Pour obtenir les informations détaillées sur le contrôleur Ethernet (02:03.0) procédez comme ceci :
# lspci -v -s 02:03.0 |
Quand c’est possible, la ligne Subsystem indique le constructeur et le modèle exact du périphérique. Le périphérique est identifié par une paire de valeurs hexadécimales. La première est l’identifiant unique du constructeur (vendor). La seconde est l’identifiant du modèle. Certains modèles ont parfois les mêmes identifiants alors que le matériel peut être différent (changement de chipset).
Si les informations ne sont pas suffisantes, spécifiez l’option -vv
:
# lspci -vv -s 02:03.0 |
Informations sur les ports USB
Commande lsusb
La commande lsusb
renvoie les informations sur les contrôleurs USB et les périphériques qui leur sont connectés. Elle fait la même chose que lspci mais pour le bus USB :
# lsusb (-t) |
Pour plus de detail lsusb
:
# lsusb -v -d 002 |
Périphériques de type bloc et caractère
Affiche les différents périphériques de caractères et de blocs actuellement configurés (à l’exclusion des périphériques dont les modules ne sont pas chargés).
# cat /proc/devices |
Canaux DMA
L’accès direct à la mémoire ou DMA (Direct Memory Access), permet les transferts de données entre la mémoire et les périphériques sans intervention de l’unité centrale (CPU).
# cat /proc/dma |
Plages d’adresses d’entrées-sorties
La sortie de /proc/ioports
fournit la liste des ports utilisés pour les entrées/sorties avec un périphérique. La première colonne indique la plage d’adresses du port d’E/S réservée au périphérique qui se trouve dans la deuxième colonne.
# cat /proc/ioports |
Lister le matériel avec des outils multifonction
Commande lshw
List hardware lshw
est un outil permettant d’extraire de façon détaillé les informations de configuration matérielle de votre machine (mémoire, carte mère, CPU, cache, bus, etc.).
# lshw |
Le résultat étant très long, il est possible de faire une mise en page HTML, il existe aussi une option -json.
# lshw -html > Bureau/lshw.html |
il est également possible d’afficher un résumé :
# lshw -short |
Commande hwinfo
L’outil hwinfo
détecte votre matériel et vous en fournit la liste (d’une manière courte avec l’option --short
). Il se base sur une interrogation du matériel qui lui retourne ses informations :
# hwinfo --short |
Pour obtenir plus de détails, supprimez l’option --short
, et spécifiez éventuellement quel composant vous voulez détailler. Par exemple --cpu
pour le processeur, --memory
pour la mémoire, etc. La liste est dans le manuel de la commande.
Pour avoir des informations sur le CPU :
# hwinfo --cpu |
Pour avoir des information sur la mémoire :
# hwinfo --memory |
La liste des sondes est : all, bios, block, bluetooth, braille, bridge, camera, cdrom, chipcard, cpu, disk, dsl, dvb, fingerprint, floppy, framebuffer, gfxcard, hub, ide, isapnp, isdn, joystick, keyboard, memory, modem, monitor, mouse, netcard, network, partition, pci, pcmcia, pcmcia-ctrl, pppoe, printer, scanner, scsi, smp, sound, storage-ctrl, sys, tape, tv, usb, usb-ctrl, vbe, wlan, zip
Commande dmidecode
L’outil dmidecode
n’interroge pas les composants matériels mais lit et interprète la table DMI (Desktop Management Interface) de l’ordinateur, parfois aussi appelée SMBIOS (System Management BIOS). Il fournit non seulement des informations sur l’état matériel actuel de la machine, mais aussi sur ses extensions possibles (par exemple la vitesse maximale du processeur, la quantité de mémoire possible, etc.). Contrairement à hwinfo
qui interroge un composant, par exemple le CPU, dmidecode
lit les informations telles que détectées par le BIOS et la carte mère. C’est rapide, parfois plus précis que hwinfo
, mais parfois faux donc à vérifier. La sortie étant bien plus longue qu’avec hwinfo
, précisez quelles informations vous souhaitez avec -s
ou -t
(consultez le manuel) :
# dmidecode -t processor |
# dmidecode 2.9 |
Information sur la mémoire.
dmidecode -t memory |
Information sur le système.
dmidecode -t system |
Information sur le BIOS.
dmidecode -t bios |
État de la mémoire
Commande free
La commande free
vous fournit des informations sur la mémoire physique (RAM) de votre ordinateur ainsi que sur l’occupation du swap. L’unité par défaut est le Ko (identique avec le paramètre -k
), mais elle peut être modifiée en Mo (-m
) voire en Go (-g
).
free -kh |
Attention cependant à bien interpréter les colonnes. Dans le résultat précédent, disposant de 2,9 Go de mémoire, le système indique que seulement 141 Mo sont libres ! C’est que le système Linux a tendance à se réserver tout l’espace disponible sous forme de buffers (tampons) et de cache. Le contenu du cache est volatile, donc Linux peut libérer en très grande partie cet espace pour l’allouer aux programmes et aux données. C’est aussi le cas pour les buffers. Lorsque la commande précédente a été saisie, l’ordinateur était en train de copier une piste de DVD sur le disque dur. Quelques instants après la fin de la copie, le résultat était le suivant : les buffers ont été libérés, une partie est reparti en cache lors du début de l’encodage de la piste en DivX. Donc lors de vos calculs de mémoire libre, prenez en compte le fait que les caches peuvent être libérés. Le système dispose d’environ 3,2 Go d’espace mémoire (en additionnant Free + cached) que Linux peut attribuer aux programmes.
Mémoire réservée
Cette mémoire est réservée au noyau et ne peut pas être utilisée par d’autres programmes. Elle est utile pour les traitements du noyau, son chargement, l’initrd. Voyez le résultat de la commande suivante (volontairement tronqué) :
# dmesg | grep -i memory |
meminfo
Le système de fichiers virtuel /proc
contient des informations détaillées sur la mémoire au travers du pseudofichier /proc/meminfo
. Il semble bien difficile de trouver quelque chose de plus complet. La sortie suivante est un résultat sur un système Linux en 64 bits. En 32 bits, deux lignes supplémentaires (highmem
et lowmem
) indiquent les zones réservées aux données et au noyau. Les premières lignes et les lignes concernant le swap sont identiques au résultat de la commande free.
# cat /proc/meminfo |
Commande du
La commande du
(disk usage) fournit des informations sur l’espace occupé par une arborescence (un répertoire et tout son contenu). Si rien n’est précisé, c’est le répertoire courant qui est utilisé. Les paramètres -k
(Ko) et -m
(Mo) déterminent l’unité. La taille est fournie pour chaque élément (voire arrondie). La taille totale de l’arborescence est sur la dernière ligne.
# du -m LIVRE_ALGO |
Pour n’avoir que le total et pas tous les détails, utilisez le -s
.
# du -ks LIVRE_ALGO |
Notez que du
n’est pas limitée à un seul système de fichiers et continue à calculer si elle tombe sur un point de montage dans l’arborescence qu’elle analyse. Si vous voulez limiter le calcul au système de fichiers courant sans rentrer dans les points de montage présents dans l’arborescence, précisez -x
.
# du -msx / |
Consulter les traces du système
dmesg
La commande dmesg
permet de récupérer les messages du noyau émis au démarrage de la machine, puis les messages émis par la suite. Le tampon de dmesg
est circulaire. Au bout d’un certain nombre de messages, les premiers disparaissent. Cependant ces traces ne sont pas perdues car le service syslogd
écrit ces éléments dans des fichiers. Cette commande est généralement la première lancée par un administrateur, ingénieur ou exploitant du système Linux pour vérifier la présence d’éventuelles erreurs. En effet, après le boot les messages continuent d’arriver, notamment lors de la connexion à chaud de périphériques, au chargement de certains modules, lorsque des crashs se produisent, lors d’une corruption du système de fichiers, etc. L’exemple suivant est volontairement tronqué à une cinquantaine de lignes, la sortie originale en contenant plus de 500. Le début représente le tout début de l’exécution du noyau (informations fournies par le BIOS). Le milieu montre la détection du premier disque dur et de ses partitions. La fin montre ce qu’il se passe à l’insertion d’une clé USB, après le boot au cours d’une utilisation normale, et à sa déconnexion.
# dmesg |