Hardware informatie
Zoals voor alles, zijn er genoeg commando’s om informatie te controleren over de hardware van uw Linux systeem.
Sommige commando’s rapporteren alleen specifieke hardware componenten zoals cpu of geheugen, terwijl de rest meerdere hardware units beslaat.
Dit bericht neemt een snelle blik op enkele van de meest gebruikte commando’s om informatie en configuratie details te controleren over diverse hardware randapparatuur en apparaten.
De lijst bevat lscpu, hwinfo, lshw, dmidecode, lspci etc.
1. lscpu
Het lscpu commando rapporteert informatie over de cpu en verwerkingseenheden. Het heeft geen verdere opties of functionaliteit.
$ 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
Een hulpprogramma voor algemene doeleinden, dat gedetailleerde en beknopte informatie rapporteert over meerdere verschillende hardware-eenheden zoals cpu, geheugen, schijf, usb-controllers, netwerkadapters enzovoort. Lshw haalt de informatie uit verschillende /proc bestanden.
$ 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)
Filter specifieke apparaat informatie uit met grep.
$ lspci -v | grep "VGA" -A 12
5. lsscsi – List scsi devices
Lijst de scsi/sata apparaten zoals harde schijven en optische drives.
$ lsscsi disk ATA ST3500418AS CC38 /dev/sda cd/dvd SONY DVD RW DRU-190A 1.63 /dev/sr0
6. lsusb – List usb buses and device details
Dit commando toont de USB controllers en details over de apparaten die erop zijn aangesloten. Standaard wordt beknopte informatie afgedrukt. Gebruik de verbose optie “-v” om gedetailleerde informatie over elke usb poort af te drukken
$ 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
Op bovenstaand systeem wordt 1 usb poort gebruikt door de muis.
7. Inxi
Inxi is een 10K regels mega bash script dat hardware details ophaalt van meerdere verschillende bronnen en commando’s op het systeem, en een mooi uitziend rapport genereert dat niet-technische gebruikers gemakkelijk kunnen lezen.
$ inxi -Fx
8. lsblk – List block devices
Lijst informatie over alle block devices, dat zijn de harde schijf partities en andere opslag apparaten zoals optische drives en flash drives
$ 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 – schijfruimte van bestandssystemen
Rapportage van verschillende partities, hun koppelpunten en de gebruikte en beschikbare ruimte op elk.
$ 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
Een verbeterde df-versie geschreven in python, die gekleurde uitvoer weergeeft die er beter uitziet dan 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 is een hulpprogramma om partities op harde schijven aan te passen, en kan ook worden gebruikt om de partitie informatie op te sommen.
$ 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
Mount wordt gebruikt om gemounte bestandssystemen te mounten/unmounten en te bekijken.
$ 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)
Ook hier kunt u grep gebruiken om alleen die bestandssystemen eruit te filteren die u wilt zien
$ mount | column -t | grep ext
13. free – Controleer RAM
Controleer de hoeveelheid gebruikte, vrije en totale hoeveelheid RAM op het systeem met het free commando.
$ free -m total used free shared buffers cachedMem: 7975 5865 2110 0 24 622-/+ buffers/cache: 5218 2757Swap: 1951 921 1030
14. dmidecode
Het dmidecode commando is anders dan alle andere commando’s. Het haalt hardware informatie uit de SMBOIS datastructuren (ook wel DMI tabellen genoemd).
# display information about the processor/cpu$ sudo dmidecode -t processor# memory/ram information$ sudo dmidecode -t memory# bios details$ sudo dmidecode -t bios
Kijk op de man page voor meer details.
15. /proc bestanden
Vele van de virtuele bestanden in de /proc directory bevatten informatie over hardware en configuraties. Hier zijn er enkele
CPU/Memory informatie
# cpu information$ cat /proc/cpuinfo# memory information$ cat /proc/meminfo
Linux/kernel informatie
$ cat /proc/versionLinux versie 3.11.0-12-generic () (gcc versie 4.8.1 (Ubuntu/Linaro 4.8.1-10ubuntu7) ) #19-Ubuntu SMP Wed Oct 9 16:20:46 UTC 2013
SCSI/Sata apparaten
$ 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
Partities
$ 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
Het hdparm commando krijgt informatie over sata apparaten zoals harde schijven.
$ 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
Samenvatting
Elk van de commando’s heeft een iets andere methode om informatie te extraheren, en het kan zijn dat u meer dan een van hen moet proberen, terwijl u op zoek bent naar specifieke hardware details. Ze zijn echter beschikbaar in de meeste Linux distro’s, en kunnen eenvoudig worden geïnstalleerd vanuit de standaard repositories.
Op de desktop zijn er gui tools, voor diegenen die geen commando’s uit het hoofd willen leren en willen typen. Hardinfo, I-nex zijn enkele van de populaire die gedetailleerde informatie geven over meerdere verschillende hardware componenten.