Skip to content
Menu
ComaNotiz ComaNotiz
  • How To’s
  • Network
  • Windows
  • Telefon
  • iPhone
  • Linux
  • Dreambox
  • Repair
  • Office
  • Eagle
  • Temp. Logger
ComaNotiz ComaNotiz

10 Commands to Collect System and Hardware Info in Linux 

Posted on 26.01.2022 by Milan

Clipped from: https://www.tecmint.com/commands-to-collect-system-and-hardware-information-in-linux/ 

It is always a good practice to know the hardware components of your Linux system is running on, this helps you to deal with compatibility issues when it comes to installing packages, drivers on your system using yum, dnf, or apt. 

10 Commands to Check Hardware and System Information in Linux 

Therefore in these tips and tricks series, we shall look at some useful commands that can help you to extract information about your Linux system and hardware components. 

1. How to View Linux System Information 

To know only the system name, you can use the uname command without any switch that will print system information or the uname -s command will print the kernel name of your system. 

tecmint@tecmint ~ $ uname 
 
Linux 
  

To view your network hostname, use the ‘-n’ switch with the uname command as shown. 

tecmint@tecmint ~ $ uname -n 
 
tecmint.com 
  

To get information about kernel-version, use the ‘-v’ switch. 

tecmint@tecmint ~ $ uname -v 
 
#64-Ubuntu SMP Mon Sep 22 21:28:38 UTC 2014 
  

To get the information about your kernel release, use the ‘-r’ switch. 

tecmint@tecmint ~ $ uname -r 
 
3.13.0-37-generic 
  

To print your machine hardware name, use the ‘-m’ switch: 

tecmint@tecmint ~ $ uname -m 
 
x86_64 
  

All this information can be printed at once by running the ‘uname -a’ command as shown below. 

tecmint@tecmint ~ $ uname -a 
 
Linux tecmint.com 3.13.0-37-generic #64-Ubuntu SMP Mon Sep 22 21:28:38 
UTC 2014 x86_64 x86_64 x86_64 GNU/Linux 
  

2. How to View Linux System Hardware Information 

Here you can use the lshw tool to gather vast information about your hardware components such as cpu, disks, memory, usb controllers, etc. 

lshw is a relatively small tool and there are few options that you can use with it while extracting information. The information provided by lshw was gathered from different /proc files. 

Note: Do remember that the lshw command is executed by the superuser (root) or sudo user. 

Read Also: Difference Between su and sudo User in Linux 

To print information about your Linux system hardware, run this command. 

tecmint@tecmint ~ $ sudo lshw 
 
tecmint.com                
    description: Notebook 
    product: 20354 (LENOVO_MT_20354_BU_idea_FM_Lenovo Z50-70) 
    vendor: LENOVO 
    version: Lenovo Z50-70 
    serial: 1037407803441 
    width: 64 bits 
    capabilities: smbios-2.7 dmi-2.7 vsyscall32 
    configuration: administrator_password=disabled boot=normal  
    chassis=notebook family=IDEAPAD frontpanel_password=disabled  
    keyboard_password=disabled power-on_password=disabled  
    sku=LENOVO_MT_20354_BU_idea_FM_Lenovo Z50-70  
    uuid=E4B1D229-D237-E411-9F6E-28D244EBBD98 
  *-core 
       description: Motherboard 
       product: Lancer 5A5 
       vendor: LENOVO 
       physical id: 0 
       version: 31900059WIN 
       serial: YB06377069 
       slot: Type2 – Board Chassis Location 
     *-firmware 
          description: BIOS 
          vendor: LENOVO 
          physical id: 0 
          version: 9BCN26WW 
          date: 07/31/2014 
          size: 128KiB 
          capacity: 4032KiB 
          capabilities: pci upgrade shadowing cdboot bootselect edd   
          int13floppytoshiba int13floppy360 int13floppy1200 int13floppy720  
int13floppy2880 int9keyboard int10video acpi usb biosbootspecification uefi 
…… 
  

You can print a summary of your hardware information by using the -short option. 

tecmint@tecmint ~ $ sudo lshw -short 
 
H/W path       Device      Class          Description 
===================================================== 
                           system         20354 (LENOVO_MT_20354_ 
                                          BU_idea_FM_Lenovo Z50-70) 
/0                         bus            Lancer 5A5 
/0/0                       memory         128KiB BIOS 
/0/4                       processor      Intel(R) Core(TM) i5-4210U  
                                          CPU @ 1.70GHz 
/0/4/b                     memory         32KiB L1 cache 
/0/4/c                     memory         256KiB L2 cache 
/0/4/d                     memory         3MiB L3 cache 
/0/a                       memory         32KiB L1 cache 
/0/12                      memory         8GiB System Memory 
/0/12/0                    memory         DIMM [empty] 
/0/12/1                    memory         DIMM [empty] 
/0/12/2                    memory         8GiB SODIMM DDR3 Synchronous  
                                          1600 MHz (0.6 ns) 
/0/12/3                    memory         DIMM [empty] 
/0/100                     bridge         Haswell-ULT DRAM Controller 
/0/100/2                   display        Haswell-ULT Integrated  
                                          Graphics Controller 
/0/100/3                   multimedia     Haswell-ULT HD Audio Controller 
… 
  

If you wish to generate output as an html file, you can use the option -html. 

tecmint@tecmint ~ $ sudo lshw -html > lshw.html 
  

Generate Linux Hardware Information in HTML 

3. How to View Linux CPU Information 

To view information about your CPU, use the lscpu command as it shows information about your CPU architecture such as a number of CPUs, cores, CPU family model, CPU caches, threads, etc from sysfs and /proc/cpuinfo. 

tecmint@tecmint ~ $ lscpu 
 
Architecture:          x86_64 
CPU op-mode(s):        32-bit, 64-bit 
Byte Order:            Little Endian 
CPU(s):                4 
On-line CPU(s) list:   0-3 
Thread(s) per core:    2 
Core(s) per socket:    2 
Socket(s):             1 
NUMA node(s):          1 
Vendor ID:             GenuineIntel 
CPU family:            6 
Model:                 69 
Stepping:              1 
CPU MHz:               768.000 
BogoMIPS:              4788.72 
Virtualization:        VT-x 
L1d cache:             32K 
L1i cache:             32K 
L2 cache:              256K 
L3 cache:              3072K 
NUMA node0 CPU(s):     0-3 
  

4. How to Collect Linux Block Device Information 

Block devices are storage devices such as hard disks, flash drives, etc. lsblk command is used to report information about block devices as follows. 

tecmint@tecmint ~ $ lsblk 
 
NAME    MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT 
sda       8:0    0 931.5G  0 disk  
├─sda1    8:1    0  1000M  0 part  
├─sda2    8:2    0   260M  0 part /boot/efi 
├─sda3    8:3    0  1000M  0 part  
├─sda4    8:4    0   128M  0 part  
├─sda5    8:5    0 557.1G  0 part  
├─sda6    8:6    0    25G  0 part  
├─sda7    8:7    0  14.7G  0 part  
├─sda8    8:8    0     1M  0 part  
├─sda9    8:9    0 324.5G  0 part / 
└─sda10   8:10   0   7.9G  0 part [SWAP] 
sr0      11:0    1  1024M  0 rom   
  

If you want to view all block devices on your system then include the -a option. 

tecmint@tecmint ~ $ lsblk -a 
 
NAME    MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT 
sda       8:0    0 931.5G  0 disk  
├─sda1    8:1    0  1000M  0 part  
├─sda2    8:2    0   260M  0 part /boot/efi 
├─sda3    8:3    0  1000M  0 part  
├─sda4    8:4    0   128M  0 part  
├─sda5    8:5    0 557.1G  0 part  
├─sda6    8:6    0    25G  0 part  
├─sda7    8:7    0  14.7G  0 part  
├─sda8    8:8    0     1M  0 part  
├─sda9    8:9    0 324.5G  0 part / 
└─sda10   8:10   0   7.9G  0 part [SWAP] 
sdb       8:16   1         0 disk  
sr0      11:0    1  1024M  0 rom   
ram0      1:0    0    64M  0 disk  
ram1      1:1    0    64M  0 disk  
ram2      1:2    0    64M  0 disk  
ram3      1:3    0    64M  0 disk  
ram4      1:4    0    64M  0 disk  
ram5      1:5    0    64M  0 disk  
ram6      1:6    0    64M  0 disk  
ram7      1:7    0    64M  0 disk  
ram8      1:8    0    64M  0 disk  
ram9      1:9    0    64M  0 disk  
loop0     7:0    0         0 loop  
loop1     7:1    0         0 loop  
loop2     7:2    0         0 loop  
loop3     7:3    0         0 loop  
loop4     7:4    0         0 loop  
loop5     7:5    0         0 loop  
loop6     7:6    0         0 loop  
loop7     7:7    0         0 loop  
ram10     1:10   0    64M  0 disk  
ram11     1:11   0    64M  0 disk  
ram12     1:12   0    64M  0 disk  
ram13     1:13   0    64M  0 disk  
ram14     1:14   0    64M  0 disk  
ram15     1:15   0    64M  0 disk  
  

5. How to Print USB Controllers Information 

The lsusb command is used to report information about USB controllers and all the devices that are connected to them. 

tecmint@tecmint ~ $ lsusb 
 
Bus 001 Device 002: ID 8087:8000 Intel Corp.  
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub 
Bus 003 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub 
Bus 002 Device 005: ID 0bda:b728 Realtek Semiconductor Corp.  
Bus 002 Device 004: ID 5986:0249 Acer, Inc  
Bus 002 Device 003: ID 0bda:0129 Realtek Semiconductor Corp.  
RTS5129 Card Reader Controller 
Bus 002 Device 002: ID 045e:00cb Microsoft Corp.  
Basic Optical Mouse v2.0 
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation  
2.0 root hub 
  

You can use the -v option to generate detailed information about each USB device. 

tecmint@tecmint ~ $ lsusb -v 
  

6. How to Print PCI Devices Information 

PCI devices may include usb ports, graphics cards, network adapters, etc. The lspci tool is used to generate information concerning all PCI controllers on your system plus the devices that are connected to them. 

To print information about PCI devices run the following command. 

tecmint@tecmint ~ $ lspci 
 
00:00.0 Host bridge: Intel Corporation Haswell-ULT  
DRAM Controller (rev 0b) 
00:02.0 VGA compatible controller: Intel Corporation Haswell-ULT  
Integrated Graphics Controller (rev 0b) 
00:03.0 Audio device: Intel Corporation Haswell-ULT HD Audio Controller 
(rev 0b) 
00:14.0 USB controller: Intel Corporation Lynx Point-LP USB xHCI HC  
(rev 04) 
00:16.0 Communication controller: Intel Corporation Lynx Point-LP HECI #0  
(rev 04) 
00:1b.0 Audio device: Intel Corporation Lynx Point-LP HD Audio Controller  
(rev 04) 
00:1c.0 PCI bridge: Intel Corporation Lynx Point-LP PCI Express Root Port 3  
(rev e4) 
00:1c.3 PCI bridge: Intel Corporation Lynx Point-LP PCI Express Root Port 4  
(rev e4) 
00:1c.4 PCI bridge: Intel Corporation Lynx Point-LP PCI Express Root Port 5  
(rev e4) 
00:1d.0 USB controller: Intel Corporation Lynx Point-LP USB EHCI #1  
(rev 04) 
00:1f.0 ISA bridge: Intel Corporation Lynx Point-LP LPC Controller  
(rev 04) 
00:1f.2 SATA controller: Intel Corporation Lynx Point-LP SATA Controller 1  
[AHCI mode] (rev 04) 
00:1f.3 SMBus: Intel Corporation Lynx Point-LP SMBus Controller (rev 04) 
01:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411  
PCI Express Gigabit Ethernet Controller (rev 10) 
02:00.0 Network controller: Realtek Semiconductor Co., Ltd.  
RTL8723BE PCIe Wireless Network Adapter 
03:00.0 3D controller: NVIDIA Corporation GM108M [GeForce 840M] (rev a2) 
  

Use the -t option to produce output in a tree format. 

tecmint@tecmint ~ $ lspci -t 
 
-[0000:00]-+-00.0 
           +-02.0 
           +-03.0 
           +-14.0 
           +-16.0 
           +-1b.0 
           +-1c.0-[01]—-00.0 
           +-1c.3-[02]—-00.0 
           +-1c.4-[03]—-00.0 
           +-1d.0 
           +-1f.0 
           +-1f.2 
           \-1f.3 
  

Use the -v option to produce detailed information about each connected device. 

tecmint@tecmint ~ $ lspci -v 
 
00:00.0 Host bridge: Intel Corporation Haswell-ULT DRAM Controller (rev 0b) 
Subsystem: Lenovo Device 3978 
Flags: bus master, fast devsel, latency 0 
Capabilities:  
 
00:02.0 VGA compatible controller: Intel Corporation Haswell-ULT  
Integrated Graphics Controller (rev 0b) (prog-if 00 [VGA controller]) 
Subsystem: Lenovo Device 380d 
Flags: bus master, fast devsel, latency 0, IRQ 62 
Memory at c3000000 (64-bit, non-prefetchable) [size=4M] 
Memory at d0000000 (64-bit, prefetchable) [size=256M] 
I/O ports at 6000 [size=64] 
Expansion ROM at  [disabled] 
Capabilities:  
Kernel driver in use: i915 
….. 
  

7. How to Print SCSI Devices Information 

To view all your scsi/sata devices, use the lsscsi command as follows. If you do not have the lsscsi tool installed, run the following command to install it. 

$ sudo apt-get install lsscsi        [on Debian derivatives] 
# yum install lsscsi                 [On RedHat based systems] 
# dnf install lsscsi                 [On Fedora 21+ Onwards] 
  

After installation, run the lsscsi command as shown: 

tecmint@tecmint ~ $ lsscsi 
 
[0:0:0:0]    disk    ATA      ST1000LM024 HN-M 2BA3  /dev/sda  
[1:0:0:0]    cd/dvd  PLDS     DVD-RW DA8A5SH   RL61  /dev/sr0  
[4:0:0:0]    disk    Generic- xD/SD/M.S.       1.00  /dev/sdb  
  

Use the -s option to show device sizes. 

tecmint@tecmint ~ $ lsscsi -s 
 
[0:0:0:0]    disk    ATA      ST1000LM024 HN-M 2BA3  /dev/sda   1.00TB 
[1:0:0:0]    cd/dvd  PLDS     DVD-RW DA8A5SH   RL61  /dev/sr0        – 
[4:0:0:0]    disk    Generic- xD/SD/M.S.       1.00  /dev/sdb        – 
  

8. How to Print Information about SATA Devices 

You can find some information about sata devices on your system as follows using the hdparm utility. In the example below, I used the block device /dev/sda1 which is the hard disk on my system. 

tecmint@tecmint ~ $ sudo hdparm /dev/sda1 
 
/dev/sda1: 
multcount     =  0 (off) 
IO_support    =  1 (32-bit) 
readonly      =  0 (off) 
readahead     = 256 (on) 
geometry      = 56065/255/63, sectors = 2048000, start = 2048 
  

To print information about device geometry in terms of cylinders, heads, sectors, size, and the starting offset of the device, use the -g option. 

tecmint@tecmint ~ $ sudo hdparm -g /dev/sda1 
 
/dev/sda1: 
geometry      = 56065/255/63, sectors = 2048000, start = 2048 
  

9. How to Check Linux File System Information 

To gather information about file system partitions, you can use the fdisk command. Although the main functionality of the fdisk command is to modify file system partitions, it can also be used to view information about the different partitions on your file system. 

You can print partition information as follows. Remember to run the command as a superuser or else you may not see any output. 

tecmint@tecmint ~ $ sudo fdisk -l 
 
WARNING: GPT (GUID Partition Table) detected on ‘/dev/sda’!  
The util fdisk doesn’t support GPT. Use GNU Parted. 
 
 
Disk /dev/sda: 1000.2 GB, 1000204886016 bytes 
255 heads, 63 sectors/track, 121601 cylinders,  
total 1953525168 sectors 
Units = sectors of 1 * 512 = 512 bytes 
Sector size (logical/physical): 512 bytes / 4096 bytes 
I/O size (minimum/optimal): 4096 bytes / 4096 bytes 
Disk identifier: 0xcee8ad92 
 
   Device Boot      Start         End      Blocks   Id  System 
/dev/sda1               1  1953525167   976762583+  ee  GPT 
Partition 1 does not start on physical sector boundary. 
  

10. How to Check Linux Hardware Components Info 

You can also use the dmidecode utility to extract hardware information by reading data from the DMI tables. 

To print information about memory, run this command as a superuser. 

tecmint@tecmint ~ $ sudo dmidecode -t memory 
 
# dmidecode 2.12 
# SMBIOS entry point at 0xaaebef98 
SMBIOS 2.7 present. 
 
Handle 0x0005, DMI type 5, 24 bytes 
Memory Controller Information 
Error Detecting Method: None 
Error Correcting Capabilities: 
None 
Supported Interleave: One-way Interleave 
Current Interleave: One-way Interleave 
Maximum Memory Module Size: 8192 MB 
Maximum Total Memory Size: 32768 MB 
Supported Speeds: 
Other 
Supported Memory Types: 
Other 
Memory Module Voltage: Unknown 
Associated Memory Slots: 4 
0x0006 
0x0007 
0x0008 
0x0009 
Enabled Error Correcting Capabilities: 
None 
… 
  

To print information about the system, run this command. 

tecmint@tecmint ~ $ sudo dmidecode -t system 
 
# dmidecode 2.12 
# SMBIOS entry point at 0xaaebef98 
SMBIOS 2.7 present. 
 
Handle 0x0001, DMI type 1, 27 bytes 
System Information 
Manufacturer: LENOVO 
Product Name: 20354 
Version: Lenovo Z50-70 
Serial Number: 1037407803441 
UUID: 29D2B1E4-37D2-11E4-9F6E-28D244EBBD98 
Wake-up Type: Power Switch 
SKU Number: LENOVO_MT_20354_BU_idea_FM_Lenovo Z50-70 
Family: IDEAPAD 
… 
  

To print information about BIOS, run this command. 

tecmint@tecmint ~ $ sudo dmidecode -t bios 
 
# dmidecode 2.12 
# SMBIOS entry point at 0xaaebef98 
SMBIOS 2.7 present. 
 
Handle 0x0000, DMI type 0, 24 bytes 
BIOS Information 
Vendor: LENOVO 
Version: 9BCN26WW 
Release Date: 07/31/2014 
Address: 0xE0000 
Runtime Size: 128 kB 
ROM Size: 4096 kB 
Characteristics: 
PCI is supported 
BIOS is upgradeable 
BIOS shadowing is allowed 
Boot from CD is supported 
Selectable boot is supported 
EDD is supported 
Japanese floppy for NEC 9800 1.2 MB is supported (int 13h) 
Japanese floppy for Toshiba 1.2 MB is supported (int 13h) 
5.25″/360 kB floppy services are supported (int 13h) 
5.25″/1.2 MB floppy services are supported (int 13h) 
3.5″/720 kB floppy services are supported (int 13h) 
3.5″/2.88 MB floppy services are supported (int 13h) 
8042 keyboard services are supported (int 9h) 
CGA/mono video services are supported (int 10h) 
ACPI is supported 
USB legacy is supported 
BIOS boot specification is supported 
Targeted content distribution is supported 
UEFI is supported 
BIOS Revision: 0.26 
Firmware Revision: 0.26 
… 
  

To print information about the processor, run this command. 

tecmint@tecmint ~ $ sudo dmidecode -t processor 
 
# dmidecode 2.12 
# SMBIOS entry point at 0xaaebef98 
SMBIOS 2.7 present. 
 
Handle 0x0004, DMI type 4, 42 bytes 
Processor Information 
Socket Designation: U3E1 
Type: Central Processor 
Family: Core i5 
Manufacturer: Intel(R) Corporation 
ID: 51 06 04 00 FF FB EB BF 
Signature: Type 0, Family 6, Model 69, Stepping 1 
Flags: 
… 
  

Summary 

There are many other ways you can use to obtain information about your system hardware components. Most of these commands use files in the /proc directory to extract system information. 

Hope you find these tips and tricks useful and remember to post a comment in case you want to add more information to this or if you face any difficulties in using any of the commands. Remember to always stay connected to Tecmint. 

How To's Linux Raspberry Pi

Log In

Recent Posts

  • FritzFritz Repeater Specifikations
  • How to Install Windows 11 Without a Microsoft Account
  • Proxmox – Tips / Commands
  • Synology DSM 7 with Lets Encrypt and DNS Challenge
  • Proxmox Resize

Categories

  • 3D Print
  • Apple
  • Audio & Video
  • Dreambox
  • Eagle
  • Electronic
  • Home Asisstant
  • How To's
  • iPhone
  • iPod
  • Konsole
  • Linux
  • Media Wiki
  • NAS
  • Network
  • Office
  • Raspberry Pi
  • Repair
  • Telefon
  • Tips & Tricks
  • Uncategorised
  • Uncategorized
  • Windows
  • Xbox
©2025 ComaNotiz | Powered by Superb Themes