Comment répertorier les périphériques de votre ordinateur à partir du terminal Linux

Découvrez exactement quels périphériques se trouvent à l’intérieur de votre ordinateur Linux ou y sont connectés. Nous couvrirons 12 commandes pour répertorier vos appareils connectés.

Pourquoi 12 commandes?

Quelle que soit la manière dont il existe pour écorcher un chat, je serais prêt à parier qu’il y a plus de façons de répertorier les appareils connectés ou hébergés à l’intérieur de votre ordinateur Linux. Nous allons vous en montrer 12. Et ce ne sont pas tous!

Inévitablement, il y a beaucoup de chevauchement dans les informations que vous pouvez obtenir de ces commandes, alors pourquoi se donner la peine de décrire autant d’entre elles?

Eh bien, d’une part, les variations de contenu et de détails les rendent suffisamment différents pour que certaines personnes préfèrent une méthode à une autre. Le format de sortie d’une commande peut se prêter particulièrement bien à un cas d’utilisation spécifique. Le format d’une autre commande peut être parfaitement adapté à son acheminement via grep ou une autre méthode de traitement ultérieur.

Mais surtout, il s’agit de rendre l’article aussi général que possible. Plutôt que de décider quelles commandes intéresseront ou utiliseront nos lecteurs, nous préférons fournir un large échantillon des commandes disponibles et demander à nos lecteurs de choisir celles qu’ils utiliseront et celles qu’ils laisseront intactes.

Une certaine installation est requise

La plupart de ces commandes sont incluses par défaut dans votre distribution Linux. Ubuntu, Fedora et Manjaro ont été utilisés comme échantillon représentatif de distributions des principales branches des familles Debian, Red Hat et Arch.

Les trois distributions nécessaires pour installer procinfo, qui fournit la commande lsdev. La commande lsscsi devait également être installée sur les trois.

Pour installer lsdev et lsscsi, utilisez ces commandes.

Ubuntu:

sudo apt-get install procinf
sudo apt-get install lsscsi

sudo apt-get install lsscsi dans une fenêtre de terminal

sudo apt-get install procinf dans une fenêtre de terminal

Feutre:

sudo dnf install procinfo
sudo dnf install lsscsi

sudo dnf installe procinfo dans une fenêtre de terminal

sudo dnf installer lsscsi dans une fenêtre de terminal

Manjaro

sudo pacman -Syu procinfo
sudo pacman -Syu lsscsi

sudo pacman -Syu lsscsi dans une fenêtre de terminal

sudo pacman -Syu procinfo dans une fenêtre de terminal

Étonnamment, Manjaro – célèbre pour être un type de distribution simple – était la distribution qui avait la plupart des commandes que nous allons examiner préinstallées.

Ubuntu et Fedora nécessitaient l’installation de hwinfo, et Fedora nécessitait également l’installation de lshw et hdparm.

Ubuntu:

sudo apt-get install hwinfo

sudo apt-get install hwinfo dans une fenêtre de terminal

Feutre:

sudo dnf install hwinfo
sudo dnf install lshw
sudo dnf install hdparm

sudo dnf installer hwinfo dans une fenêtre de terminal

sudo dnf installer hwinfo dans une fenêtre de terminal

sudo dnf installer lshw dans une fenêtre de terminal

1. La commande mount

La commande mount est utilisée pour monter des systèmes de fichiers.

Mais l’exécution de la commande sans paramètres l’amène à répertorier tous les systèmes de fichiers montés, ainsi que les périphériques sur lesquels ils se trouvent. Nous pouvons donc utiliser cela pour découvrir ces appareils.

mount

monter dans une fenêtre de terminal

La sortie du montage peut être plus longue que prévu, surtout si vous avez utilisé la méthode snap pour installer le logiciel. Chaque fois que vous utilisez snap, vous acquérez un autre pseudo-système de fichiers et ceux-ci sont répertoriés par montage. Bien sûr, ils ne sont pas associés à des appareils physiques, ils ne font donc qu’obscurcir la vraie image.

  Comment toujours démarrer Microsoft Edge en mode de navigation InPrivate sur Windows 10

sortie du montage dans une fenêtre de terminal

Si vous repérez un vrai système de fichiers dans la liste sur un disque dur, nous pouvons l’isoler avec grep.

Les disques durs sont identifiés par leur nom, généralement appelé «sd» suivi d’une lettre commençant par «a» pour le premier disque, «b» pour le deuxième disque et ainsi de suite. Les partitions sont identifiées en ajoutant un 1 pour la première partition et 2 pour la deuxième partition, et ainsi de suite.

Ainsi, le premier disque dur serait sda, et la première partition de ce disque s’appellerait sda1. Les disques durs sont interfacés via des fichiers de périphériques spéciaux (appelés fichiers blocs) dans / dev, puis montés quelque part dans l’arborescence du système de fichiers.

Cette commande utilisait grep pour filtrer les détails de tout lecteur commençant par «sd».

mount | grep /dev/sd

monter | grep / dev / sd dans une fenêtre de terminal

La sortie contient le disque dur unique de la machine qui a été utilisé pour rechercher cet article.

monter la sortie dans une fenêtre de terminal

La réponse de mount nous indique que le lecteur / dev / sda est monté sur / (la racine de l’arborescence du système de fichiers) et qu’il a un système de fichiers ext4. Le «rw» indique qu’il a été monté en mode lecture-écriture

Relatime est le schéma utilisé par les routines de mise à jour d’horodatage de fichier. L’heure d’accès n’est pas écrite sur le disque à moins que l’heure de modification (mtime) ou l’heure de changement (ctime) d’un fichier ne soit plus récente que la dernière heure d’accès, ou que l’heure d’accès (atime) soit antérieure à un seuil défini par le système . Cela réduit considérablement le nombre de mises à jour de disque nécessaires pour les fichiers fréquemment consultés.

Le « errors = remount-ro » indique que s’il y a des erreurs suffisamment graves, le système de fichiers sera remonté en mode lecture seule.

Pour pouvoir faire défiler la sortie de mount et repérer plus facilement les systèmes de fichiers montés sur les périphériques, dirigez la sortie de mount vers less.

mount | less

monter | moins dans une fenêtre de terminal

Faites défiler la sortie jusqu’à ce que vous voyiez les systèmes de fichiers connectés aux fichiers spéciaux / dev.

monter [piped through less in a terminal window

2. The lsblk Command

The lsblk command lists the block devices, their mount point, and other information. Type lsblk at a command line:

lsblk

lsblk in a terminal window

The output shows:

Name: the name of the block device
Maj:Min: The major number shows the device type. The minimum number is the number of the current device out of the list of devices of that type. 7:4, for example, means loop device number 4.
RM: Whether the device is removable or not. 0 means no, 1 means yes.
Size is the capacity of the device.
RM: Whether the device is read-only or not. 0 means no, 1 means yes.
Type: The type of the device, for example, loop, dir (directory), disk, rom (CD ROM), and so on.
Mountpoint: Where the filesystem of the device is mounted.

lsblk output in a terminal window

To de-clutter the output and remove the loop devices, we can use the -e (exclude) option and provide the number of the type of devices we wish to ignore.

  4 meilleurs claviers sans fil pour les utilisateurs de Linux en 2021 (Guide d'achat)

This command will cause lsblk to ignore the loop (7) and cd room (11) devices.

lsblk -e 7,11

lsblk -e 7,11 in a terminal window

The results now only contain the hard drive sda.

lsblk output in a terminal window

3. The df Command

The df command reports on drive capacities and used and free space.

Type df on the command line and press Enter.

df

df in a terminal window

The output table shows:

Fileystem: The name of this filesystem.
1K-Blocks: The number of 1K blocks that are available on this filesystem.
Used: The number of 1K blocks that have been used on this file system.
Available: The number of 1K blocks that are unused on this file system.
Use%: The amount of space used in this file system given as a percentage.
File: The filesystem name, if specified on the command line.
Mounted on: The mount point of the filesystem.

output from df in a terminal window

To remove unwanted entries from the output, use the -x (exclude) option. This command will prevent the loop device entries from being listed.

df -x squashfs

df -x squashfs in a terminal window

The compact output is much easier to parse for the important information.

df output in a terminal window

4. The fdisk Command

The fdisk command is a tool designed to manipulate the disk partition table, but it can be used to view information as well. We can use this to our advantage when we are investigating the devices in a computer.

We will use the -l (list) option to list the partition tables. Because the output might be very long, we will pipe the output from fdisk through less. Because fdisk has the potential to alter disk partition tables, we must use sudo.

sudo fdisk -l

fdisk -l in a terminal window

By scrolling through less you will be able to identify the hardware devices. Here is the entry for hard drive sda. This is a physical hard drive of 10 GB.

output from fdisk in a terminal window

Now that we know the identity of one of the hardware devices we can ask fdisk to report on that item alone.

sudo fdisk -l /dev/sda

sudo fdisk -l /dev/sda in a terminal window

We get an output of considerably reduced length.

output of fdisk in a terminal window

5. The /proc Files

The pseudo-files in /proc can be viewed to obtain some system information. The file we will look at is /proc/mounts, which will give us some information regarding the mounted filesystems. We will use nothing grander than cat  to view the file.

cat /proc/mounts

cat /proc/mounts  in a terminal window

The listing shows the special device file in /dev that is used to interface to the device and the mount point on the filesystem tree.

output from cat /proc/mounts in a terminal window

We can refine the listing by using grep to look for entries with /dev/sd in them. This will filter out the physical drives.

cat /proc/mounts | grep /dev/sd

cat /proc/mounts | grep /dev/sd in a terminal window

This gives us a much more manageable report.

output from cat /proc/mounts in a terminal window

We can be slightly more inclusive by using grep to look for devices that have  /dev/sd and /dev/sr special device files. This will include hard drives and the CD ROM for this machine.

cat /proc/partitions | grep s[rd]

cat / proc / partitions | grep s[rd] dans une fenêtre de terminal

Il y a maintenant deux périphériques et une partition inclus dans la sortie.

sortie de cat / proc / mounts dans une fenêtre de terminal

6. La commande lspci

Les listes de commandes lspci tous les périphériques PCI dans votre ordinateur.

lspci

lspci dans une fenêtre de terminal

Les informations fournies sont:

  Comment partager le mot de passe WiFi dans iOS, entre appareils

Slot: l’emplacement dans lequel le périphérique PCi est installé
Classe: la classe de l’appareil.
Nom du fournisseur: nom du fabricant.
Nom de l’appareil: le nom de l’appareil.
Sous-système: nom du fournisseur du sous-système (si le périphérique a un sous-système).
Nom du sous-système: si le périphérique possède un sous-système.
Numéro de révision: le numéro de version de l’appareil
Interface de programmation: L’interface de programmation, si l’appareil en fournit une.

Sortie lspci dans une fenêtre de terminal

7. La commande lsusb

La commande lsusb répertorie les périphériques connecté aux ports USB sur votre ordinateur ainsi que sur les appareils compatibles USB intégrés à votre ordinateur.

lsusb

lsusb dans une fenêtre de terminal

Cet ordinateur de test est équipé d’un scanner Canon en tant que périphérique USB 5 et d’un lecteur USB externe en tant que périphérique USB 4. Les périphériques 3 et 1 sont des gestionnaires d’interface USB internes.

Périphériques USB répertoriés dans une fenêtre de terminal

Vous pouvez recevoir une liste plus détaillée en utilisant l’option -v (verbose), et encore une version plus détaillée en utilisant -vv.

8. La commande lsdev

La commande lsdev affiche des informations sur tous les appareils installés.

Cette commande génère beaucoup de sortie, nous allons donc la diffuser moins.

lsdev | less

lsdev | moins dans une fenêtre de terminal

De nombreux périphériques matériels sont répertoriés dans la sortie.

la sortie lsdev est acheminée via less dans une fenêtre de terminal

9. La commande lshw

La commande lshw répertorie les appareils connecté à votre ordinateur. C’est une autre commande avec beaucoup de sortie. Sur l’ordinateur de test, plus de 260 lignes d’informations ont été générées. Nous allons le faire passer moins une fois de plus.

Notez que vous devez utiliser sudo avec lshw pour en tirer le meilleur parti. Si vous ne le faites pas, il ne pourra pas accéder à tous les appareils.

sudo lshw | less

sudo lshw | moins dans une fenêtre de terminal

Voici l’entrée pour le CD ROM avec une interface SCSI. Comme vous pouvez le voir, les informations fournies pour chaque appareil sont très détaillées. lshw lit la plupart de ses informations dans les différents fichiers de / proc.

sortie de lshw en less dans une fenêtre de terminal

Si vous voulez une sortie plus courte et moins détaillée, vous pouvez utiliser l’option –short.

10. La commande lsscsi

Comme vous pouvez l’imaginer maintenant, la commande lsscsi répertorie les périphériques SCSI connecté à votre ordinateur.

lsscsi

lsscsi dans une fenêtre de terminal

Voici les périphériques SCSI connectés à cette machine de test.

sortie lsscsi dans une fenêtre de terminal

11. La commande dmidecode

Les commandes dmidecode décodent le Tables de l’interface de gestion de bureau (DMI)et extrait les informations relatives au matériel connecté à l’ordinateur et à l’intérieur de l’ordinateur.

Le DMI est également parfois appelé SMBIOS (le système d’entrée / sortie de base de gestion du système) bien qu’il s’agisse en réalité de deux normes différentes.

Encore une fois, nous allons réduire cela.

dmidecode | less

sortie dmidecode dans une fenêtre de terminal

La commande dmidecode peut générer des rapports sur plus de 40 types de matériel différents.

12. La commande hwinfo

La commande hwinfo est la plus détaillée de toutes. Quand nous disons que vous devez faire passer quelque chose à travers moins, cette fois ce n’est pas facultatif. Sur l’ordinateur de test, il a généré 5850 lignes de sortie!

Vous pouvez commencer les choses doucement en incluant l’option –short.

hwinfo --short

hwinfo --short dans une fenêtre de terminal

Si vous avez vraiment besoin de voir les détails les plus fins, répétez cette opération et omettez l’option –short.

sortie de hwinfo en moins dans une fenêtre de terminal

Envelopper

Voici donc nos douzaines de façons d’enquêter sur les appareils à l’intérieur ou connectés à votre ordinateur.

Quel que soit votre intérêt particulier à rechercher ce matériel, il y aura une méthode dans cette liste qui vous permettra de trouver ce dont vous avez besoin.