Informations sur le matériel
Comme pour chaque chose, il existe une multitude de commandes pour vérifier les informations sur le matériel de votre système linux.
Certaines commandes ne signalent que des composants matériels spécifiques comme le cpu ou la mémoire, tandis que les autres couvrent plusieurs unités matérielles.
Ce billet jette un coup d’œil rapide à certaines des commandes les plus couramment utilisées pour vérifier les informations et les détails de configuration de divers périphériques et appareils matériels.
La liste comprend lscpu, hwinfo, lshw, dmidecode, lspci etc.
1. lscpu
La commande lscpu rapporte des informations sur le cpu et les unités de traitement. Elle n’a pas d’autres options ou fonctionnalités.
$ lscpuArchitecture: x86_64CPU op-mode(s): 32-bit, 64-bitByte Order: Little EndianCPU(s): 4On-line CPU(s) list: 0-3Thread(s) per core: 1Core(s) per socket: 4Socket(s): 1NUMA node(s): 1Vendor ID: GenuineIntelCPU family: 6Model: 23Stepping: 10CPU MHz: 1998.000BogoMIPS: 5302.48Virtualization: VT-xL1d cache: 32KL1i cache: 32KL2 cache: 2048KNUMA node0 CPU(s): 0-3
2. lshw – List Hardware
Un utilitaire à usage général, qui rapporte des informations détaillées et brèves sur plusieurs unités matérielles différentes telles que cpu, mémoire, disque, contrôleurs usb, adaptateurs réseau, etc. Lshw extrait les informations de différents fichiers /proc.
$ sudo lshw -shortH/W path Device Class Description=================================================== system ()/0 bus DG35EC/0/0 processor Intel(R) Core(TM)2 Quad CPU Q8400 @ 2.66GHz/0/0/1 memory 2MiB L2 cache/0/0/3 memory 32KiB L1 cache/0/2 memory 32KiB L1 cache/0/4 memory 64KiB BIOS/0/14 memory 8GiB System Memory/0/14/0 memory 2GiB DIMM DDR2 Synchronous 667 MHz (1.5 ns)/0/14/1 memory 2GiB DIMM DDR2 Synchronous 667 MHz (1.5 ns)/0/14/2 memory 2GiB DIMM DDR2 Synchronous 667 MHz (1.5 ns)/0/14/3 memory 2GiB DIMM DDR2 Synchronous 667 MHz (1.5 ns)/0/100 bridge 82G35 Express DRAM Controller/0/100/2 display 82G35 Express Integrated Graphics Controller/0/100/2.1 display 82G35 Express Integrated Graphics Controller/0/100/19 eth0 network 82566DC Gigabit Network Connection/0/100/1a bus 82801H (ICH8 Family) USB UHCI Controller #4/0/100/1a.1 bus 82801H (ICH8 Family) USB UHCI Controller #5/0/100/1a.7 bus 82801H (ICH8 Family) USB2 EHCI Controller #2/0/100/1b multimedia 82801H (ICH8 Family) HD Audio Controller/0/100/1c bridge 82801H (ICH8 Family) PCI Express Port 1/0/100/1c.1 bridge 82801H (ICH8 Family) PCI Express Port 2/0/100/1c.2 bridge 82801H (ICH8 Family) PCI Express Port 3/0/100/1c.2/0 storage JMB368 IDE controller/0/100/1d bus 82801H (ICH8 Family) USB UHCI Controller #1/0/100/1d.1 bus 82801H (ICH8 Family) USB UHCI Controller #2/0/100/1d.2 bus 82801H (ICH8 Family) USB UHCI Controller #3/0/100/1d.7 bus 82801H (ICH8 Family) USB2 EHCI Controller #1/0/100/1e bridge 82801 PCI Bridge/0/100/1e/5 bus FW322/323 1394a Controller/0/100/1f bridge 82801HB/HR (ICH8/R) LPC Interface Controller/0/100/1f.2 storage 82801H (ICH8 Family) 4 port SATA Controller /0/100/1f.3 bus 82801H (ICH8 Family) SMBus Controller/0/100/1f.5 storage 82801HR/HO/HH (ICH8R/DO/DH) 2 port SATA Controller (rev 02)00:1f.3 SMBus: Intel Corporation 82801H (ICH8 Family) SMBus Controller (rev 02)00:1f.5 IDE interface: Intel Corporation 82801HR/HO/HH (ICH8R/DO/DH) 2 port SATA Controller (rev 02)03:00.0 IDE interface: JMicron Technology Corp. JMB368 IDE controller04:05.0 FireWire (IEEE 1394): LSI Corporation FW322/323 1394a Controller (rev 70)
Filtrez les informations spécifiques aux périphériques avec grep.
$ lspci -v | grep "VGA" -A 12
5. lsscsi – Lister les périphériques scsi
Lister les périphériques scsi/sata comme les disques durs et les lecteurs optiques.
$ lsscsi disk ATA ST3500418AS CC38 /dev/sda cd/dvd SONY DVD RW DRU-190A 1.63 /dev/sr0
6. lsusb – Lister les bus usb et les détails des périphériques
Cette commande affiche les contrôleurs USB et les détails sur les périphériques qui leur sont connectés. Par défaut, des informations brèves sont imprimées. Utilisez l’option verbose « -v » pour imprimer des informations détaillées sur chaque port usb
$ lsusbBus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hubBus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hubBus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hubBus 005 Device 002: ID 045e:00cb Microsoft Corp. Basic Optical Mouse v2.0Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hubBus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hubBus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hubBus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Sur le système ci-dessus, 1 port usb est utilisé par la souris.
7. Inxi
Inxi est un méga script bash de 10K lignes qui récupère les détails du matériel à partir de plusieurs sources et commandes différentes sur le système, et génère un rapport de belle apparence que les utilisateurs non techniques peuvent lire facilement.
$ inxi -Fx
8. lsblk – Lister les périphériques de bloc
Lister les informations de tous les périphériques de bloc, qui sont les partitions du disque dur et d’autres périphériques de stockage comme les lecteurs optiques et les lecteurs flash
$ lsblkNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTsda 8:0 0 465.8G 0 disk├─sda1 8:1 0 70G 0 part├─sda2 8:2 0 1K 0 part├─sda5 8:5 0 97.7G 0 part /media/4668484A68483B47├─sda6 8:6 0 97.7G 0 part /├─sda7 8:7 0 1.9G 0 part └─sda8 8:8 0 198.5G 0 part /media/13f35f59-f023-4d98-b06f-9dfaebefd6c1sr0 11:0 1 1024M 0 rom
9. df – espace disque des systèmes de fichiers
Rapportant diverses partitions, leurs points de montage et l’espace utilisé et disponible sur chacun.
$ df -HFilesystem Size Used Avail Use% Mounted on/dev/sda6 104G 26G 73G 26% /none 4.1k 0 4.1k 0% /sys/fs/cgroupudev 4.2G 4.1k 4.2G 1% /devtmpfs 837M 1.6M 835M 1% /runnone 5.3M 0 5.3M 0% /run/locknone 4.2G 13M 4.2G 1% /run/shmnone 105M 21k 105M 1% /run/user/dev/sda8 210G 149G 51G 75% /media/13f35f59-f023-4d98-b06f-9dfaebefd6c1/dev/sda5 105G 31G 75G 30% /media/4668484A68483B47
10. Pydf – Python df
Une version améliorée de df écrite en python, qui affiche une sortie colorée qui semble meilleure que df
$ pydfFilesystem Size Used Avail Use% Mounted on/dev/sda6 96G 23G 68G 24.4 //dev/sda8 195G 138G 47G 70.6 /media/13f35f59-f023-4d98-b06f-9dfaebefd6c1/dev/sda5 98G 28G 69G 29.2 /media/4668484A68483B47
11. fdisk
Fdisk est un utilitaire pour modifier les partitions sur les disques durs, et peut aussi être utilisé pour lister les informations sur les partitions.
$ sudo fdisk -lDisk /dev/sda: 500.1 GB, 500107862016 bytes255 heads, 63 sectors/track, 60801 cylinders, total 976773168 sectorsUnits = sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes / 512 bytesDisk identifier: 0x30093008 Device Boot Start End Blocks Id System/dev/sda1 * 63 146801969 73400953+ 7 HPFS/NTFS/exFAT/dev/sda2 146802031 976771071 414984520+ f W95 Ext'd (LBA)/dev/sda5 146802033 351614654 102406311 7 HPFS/NTFS/exFAT/dev/sda6 351614718 556427339 102406311 83 Linux/dev/sda7 556429312 560427007 1998848 82 Linux swap / Solaris/dev/sda8 560429056 976771071 208171008 83 Linux
12. mount
Le mount est utilisé pour monter/démonter et visualiser les systèmes de fichiers montés.
$ mount | column -t/dev/sda6 on / type ext4 (rw,errors=remount-ro)proc on /proc type proc (rw,noexec,nosuid,nodev)sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)none on /sys/fs/cgroup type tmpfs (rw)none on /sys/fs/fuse/connections type fusectl (rw)none on /sys/kernel/debug type debugfs (rw)none on /sys/kernel/security type securityfs (rw)udev on /dev type devtmpfs (rw,mode=0755)devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)none on /run/shm type tmpfs (rw,nosuid,nodev)none on /run/user type tmpfs (rw,noexec,nosuid,nodev,size=104857600,mode=0755)none on /sys/fs/pstore type pstore (rw)/dev/sda8 on /media/13f35f59-f023-4d98-b06f-9dfaebefd6c1 type ext4 (rw,nosuid,nodev,errors=remount-ro)/dev/sda5 on /media/4668484A68483B47 type fuseblk (rw,nosuid,nodev,allow_other,blksize=4096)binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,noexec,nosuid,nodev)systemd on /sys/fs/cgroup/systemd type cgroup (rw,noexec,nosuid,nodev,none,name=systemd)gvfsd-fuse on /run/user/1000/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,user=enlightened)
Encore, utilisez grep pour filtrer uniquement les systèmes de fichiers que vous voulez voir
$ mount | column -t | grep ext
13. free – Vérifier la RAM
Vérifiez la quantité de RAM utilisée, libre et totale sur le système avec la commande free.
$ free -m total used free shared buffers cachedMem: 7975 5865 2110 0 24 622-/+ buffers/cache: 5218 2757Swap: 1951 921 1030
14. dmidecode
La commande dmidecode est différente de toutes les autres commandes. Elle extrait des informations matérielles en lisant les données des structures de données SMBOIS (également appelées tables DMI).
# display information about the processor/cpu$ sudo dmidecode -t processor# memory/ram information$ sudo dmidecode -t memory# bios details$ sudo dmidecode -t bios
Voir la page de manuel pour plus de détails.
15. Fichiers /proc
Plusieurs des fichiers virtuels du répertoire /proc contiennent des informations sur le matériel et les configurations. En voici quelques-uns
Informations sur l’unité centrale/la mémoire
# cpu information$ cat /proc/cpuinfo# memory information$ cat /proc/meminfo
Informations sur Linux/le noyau
$ cat /proc/versionLinux version 3.11.0-12-generic () (gcc version 4.8.1 (Ubuntu/Linaro 4.8.1-10ubuntu7) ) #19-Ubuntu SMP Wed Oct 9 16:20:46 UTC 2013
Scsi/Sata devices
$ cat /proc/scsi/scsiAttached devices:Host: scsi3 Channel: 00 Id: 00 Lun: 00 Vendor: ATA Model: ST3500418AS Rev: CC38 Type: Direct-Access ANSI SCSI revision: 05Host: scsi4 Channel: 00 Id: 00 Lun: 00 Vendor: SONY Model: DVD RW DRU-190A Rev: 1.63 Type: CD-ROM ANSI SCSI revision: 05
Partitions
$ cat /proc/partitionsmajor minor #blocks name 8 0 488386584 sda 8 1 73400953 sda1 8 2 1 sda2 8 5 102406311 sda5 8 6 102406311 sda6 8 7 1998848 sda7 8 8 208171008 sda8 11 0 1048575 sr0
16. hdparm
La commande hdparm obtient des informations sur les périphériques sata comme les disques durs.
$ sudo hdparm -i /dev/sda/dev/sda: Model=ST3500418AS, FwRev=CC38, SerialNo=9VMJXV1N Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs RotSpdTol>.5% } RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=4 BuffType=unknown, BuffSize=16384kB, MaxMultSect=16, MultSect=16 CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=976773168 IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120} PIO modes: pio0 pio1 pio2 pio3 pio4 DMA modes: mdma0 mdma1 mdma2 UDMA modes: udma0 udma1 udma2 udma3 udma4 udma5 *udma6 AdvancedPM=no WriteCache=enabled Drive conforms to: unknown: ATA/ATAPI-4,5,6,7 * signifies the current active mode
Summary
Chacune de ces commandes a une méthode légèrement différente pour extraire des informations, et vous devrez peut-être essayer plus d’une d’entre elles, tout en recherchant des détails matériels spécifiques. Cependant, ils sont disponibles à travers la plupart des distros linux, et peuvent être facilement installés à partir des dépôts par défaut.
Sur le bureau, il existe des outils gui, pour ceux qui ne veulent pas mémoriser et taper des commandes. Hardinfo, I-nex sont quelques-uns des plus populaires qui fournissent des informations détaillées sur de multiples composants matériels différents.
Il y a aussi des outils qui peuvent être installés sur le bureau.