Inxi is an amazing tool to check hardware information on Linux

221 Flares Filament.io 221 Flares ×

Inxi

A very common thing linux users struggle with is to find what hardware has the OS detected and how well. Because unless the OS is aware of the hardware, it might not be using it at all. And there an entire ocean of commands to check hardware information.

There are quite a few gui tools like hardinfo, sysinfo etc on the desktop, but having a generic command line tool is far more useful and this is where Inxi works well. Inxi is a set of scripts that will detect a whole lot of information about the hardware, including vendor details, device driver configuration etc. And most importantly, it will print everything in a easy to read format.

Install inxi

Inxi is there in the default repos of most distros so just get it quick

# Ubuntu/Debian users
$ sudo apt-get install inxi

# CentOS/Fedora users
$ sudo yum install inxi

If inxi is not present on your distro, then install it by following the instructions here
https://code.google.com/p/inxi/wiki/Installation

Using inxi

Inxi comes with a huge list of options that will display more and more information about different hardware parts as much possible. So in this post we shall cover just some basics to get started and the rest you can explore.

1. Run Inxi

To get a one line snapshot of your hardware just run inxi like this.

$ inxi -c 5
CPU~Quad core Intel Core2 Quad CPU Q8400 (-MCP-) clocked at 1998.000 Mhz Kernel~3.11.0-12-generic x86_64 Up~1:43 Mem~4774.1/7975.7MB HDD~500.1GB(38.8% used) Procs~301 Client~Shell inxi~1.9.12
Color schemes - Inxi output is colored and if you need to change the color for better visibility just use the c option followed by a random number between 0-32.

2. Getting basic information

The b flag will present a good amount of basic information about the system.

$ inxi -c 5 -b
System:    Host: enlightened Kernel: 3.11.0-12-generic x86_64 (64 bit) Desktop: KDE 4.11.2 Distro: Ubuntu 13.10
Machine:   Mobo: Intel model: DG35EC version: AAE29266-210
           Bios: Intel version: ECG3510M.86A.0112.2009.0203.1136 date: 02/03/2009
CPU:       Quad core Intel Core2 Quad CPU Q8400 (-MCP-) clocked at 1998.00 MHz 
Graphics:  Card: Intel 82G35 Express Integrated Graphics Controller 
           X.Org: 1.14.3 drivers: intel (unloaded: fbdev,vesa) Resolution: 1360x768@60.0hz 
           GLX Renderer: Mesa DRI Intel 965G GLX Version: 2.1 Mesa 9.2.1
Network:   Card: Intel 82566DC Gigabit Network Connection driver: e1000e 
Drives:    HDD Total Size: 500.1GB (38.8% used)
Info:      Processes: 304 Uptime: 1:50 Memory: 4983.3/7975.7MB Client: Shell (bash) inxi: 1.9.12






The about output contains plenty of information, about the CPU, Graphics card, drives, and the OS installation. Very useful when installing drivers or diagnosing.

3. Print Hard drive partitions

Lets now print out the information about hard drive partitions. It will print out all the mounted partitions along with their mount points, and space usage.

$ inxi -p
Partition: ID: / size: 97G used: 22G (24%) fs: ext4 ID: /media/13f35f59-f023-4d98-b06f-9dfaebefd6c1 size: 196G used: 132G (71%) fs: ext4 
           ID: /media/4668484A68483B47 size: 98G used: 28G (29%) fs: fuseblk ID: swap-1 size: 2.05GB used: 0.00GB (0%) fs: swap

To print out the unmounted partitions along with the mounted ones, use the o option with p

$ inxi  -p
Partition: ID: / size: 97G used: 22G (24%) fs: ext4 ID: /media/13f35f59-f023-4d98-b06f-9dfaebefd6c1 size: 196G used: 132G (71%) fs: ext4 
           ID: /media/4668484A68483B47 size: 98G used: 28G (29%) fs: fuseblk ID: swap-1 size: 2.05GB used: 0.00GB (0%) fs: swap 
enlightened@enlightened:~$ inxi -po
Partition: ID: / size: 97G used: 22G (24%) fs: ext4 ID: /media/13f35f59-f023-4d98-b06f-9dfaebefd6c1 size: 196G used: 132G (71%) fs: ext4 
           ID: /media/4668484A68483B47 size: 98G used: 28G (29%) fs: fuseblk ID: swap-1 size: 2.05GB used: 0.00GB (0%) fs: swap 
Unmounted: ID: /dev/sda1 size: 75.16G label: N/A uuid: 5E38BE8B38BE6227

Print the hard drive details like make, model and size with D option

$ inxi -D
Drives:    HDD Total Size: 500.1GB (38.8% used) 1: id: /dev/sda model: ST3500418AS size: 500.1GB

4. Optical drive details

Print out full list of drives, including all storage and optical drives along with their specifications.

$ inxi -d
Drives:    HDD Total Size: 500.1GB (38.8% used) 1: id: /dev/sda model: ST3500418AS size: 500.1GB 
           Optical: /dev/sr0 model: N/A dev-links: cdrom
           Features: speed: 12x multisession: yes audio: yes dvd: yes rw: cd-r,cd-rw,dvd-r,dvd-ram

That was quick.

5. Network interfaces and configurations

The n option simply prints out the details about the network interface along with the configuration details

$ inxi -n
Network:   Card: Intel 82566DC Gigabit Network Connection driver: e1000e 
           IF: eth0 state: up speed: 100 Mbps duplex: full mac: 00:1c:c0:f8:79:ee

Use the i optio along with n to get ip address details (both wan and lan)

$ inxi -ni
Network:   Card: Intel 82566DC Gigabit Network Connection driver: e1000e 
           IF: eth0 state: up speed: 100 Mbps duplex: full mac: 00:1c:c0:f8:79:ee
           WAN IP: 122.163.33.2 IF: eth0 ip: 192.168.1.2

6. Show Audio/sound card and graphics card information

The A option is for audio information and G is for graphics card information

$ inxi -AG
Graphics:  Card: Intel 82G35 Express Integrated Graphics Controller 
           X.Org: 1.14.3 drivers: intel (unloaded: fbdev,vesa) Resolution: 1360x768@60.0hz 
           GLX Renderer: Mesa DRI Intel 965G GLX Version: 2.1 Mesa 9.2.1
Audio:     Card: Intel 82801H (ICH8 Family) HD Audio Controller driver: snd_hda_intel Sound: ALSA ver: k3.11.0-12-generic

The graphics card details are already included with the b option.

7. Show distro specific repository data

$ inxi -r
Repos:     Active apt sources in file: /etc/apt/sources.list
           deb http://in.archive.ubuntu.com/ubuntu/ saucy main restricted
           deb-src http://in.archive.ubuntu.com/ubuntu/ saucy main restricted
           deb http://in.archive.ubuntu.com/ubuntu/ saucy-updates main restricted
           deb-src http://in.archive.ubuntu.com/ubuntu/ saucy-updates main restricted
           deb http://in.archive.ubuntu.com/ubuntu/ saucy universe
           deb-src http://in.archive.ubuntu.com/ubuntu/ saucy universe
           deb http://in.archive.ubuntu.com/ubuntu/ saucy-updates universe
           deb-src http://in.archive.ubuntu.com/ubuntu/ saucy-updates universe
           deb http://in.archive.ubuntu.com/ubuntu/ saucy multiverse
           deb-src http://in.archive.ubuntu.com/ubuntu/ saucy multiverse
           deb http://in.archive.ubuntu.com/ubuntu/ saucy-updates multiverse
           deb-src http://in.archive.ubuntu.com/ubuntu/ saucy-updates multiverse
           deb http://in.archive.ubuntu.com/ubuntu/ saucy-backports main restricted universe multiverse
           deb-src http://in.archive.ubuntu.com/ubuntu/ saucy-backports main restricted universe multiverse
           deb http://security.ubuntu.com/ubuntu saucy-security main restricted
           deb-src http://security.ubuntu.com/ubuntu saucy-security main restricted
           deb http://security.ubuntu.com/ubuntu saucy-security universe
           deb-src http://security.ubuntu.com/ubuntu saucy-security universe
           deb http://security.ubuntu.com/ubuntu saucy-security multiverse
           deb-src http://security.ubuntu.com/ubuntu saucy-security multiverse
           deb http://extras.ubuntu.com/ubuntu saucy main
           deb-src http://extras.ubuntu.com/ubuntu saucy main
           deb http://archive.canonical.com/ saucy partner
           deb http://download.virtualbox.org/virtualbox/debian saucy contrib
           Active apt sources in file: /etc/apt/sources.list.d/google-chrome.list
           deb http://dl.google.com/linux/chrome/deb/ stable main

On CentOS you would get something like this

# inxi -r
Repos:     Active yum sources in file: /etc/yum.repos.d/CentOS-Base.repo
           base ~ http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
           updates ~ http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
           extras ~ http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras
           Active yum sources in file: /etc/yum.repos.d/epel.repo
           epel ~ https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch
           Active yum sources in file: /etc/yum.repos.d/nginx.repo
           nginx ~ http://nginx.org/packages/centos/$releasever/$basearch/

8. Print full information

The F option give a more detailed overview of the system compared to the b (basic) option. But it does not include everything that inxi is capable of reporting.

# inxi -F
System:    Host: dhcppc3 Kernel: 2.6.32-358.11.1.el6.x86_64 x86_64 (64 bit) 
           Console: tty 0 Distro: CentOS release 6.4 (Final)
Machine:   System: innotek product: VirtualBox version: 1.2 serial: 0 
           Mobo: Oracle model: VirtualBox version: 1.2 serial: 0 Bios: innotek version: VirtualBox date: 12/01/2006
CPU:       Single core Intel Core2 Quad CPU Q8400 (-UP-) cache: 6144 KB flags: (lm nx sse sse2 sse3 ssse3) clocked at 2653.954 MHz 
Graphics:  Card: InnoTek Systemberatung VirtualBox Graphics Adapter 
           X-Vendor: N/A driver: N/A tty size: 76x26 Advanced Data: N/A for root out of X
Audio:     Card: Intel 82801AA AC'97 Audio Controller driver: Intel ICH Sound: ALSA ver: 1.0.21
Network:   Card: Intel 82540EM Gigabit Ethernet Controller driver: e1000 
           IF: eth0 state: up speed: 1000 Mbps duplex: full mac: 08:00:27:54:e4:c6
Drives:    HDD Total Size: 4.3GB (32.6% used) 1: id: /dev/sda model: VBOX_HARDDISK size: 4.3GB 
Partition: ID: / size: 2.5G used: 1.3G (53%) fs: ext4 ID: /boot size: 485M used: 52M (12%) fs: ext4 
           ID: swap-1 size: 1.04GB used: 0.00GB (0%) fs: swap 
RAID:      No RAID devices detected - /proc/mdstat and md_mod kernel raid module present
Sensors:   None detected - is lm-sensors installed and configured?
Info:      Processes: 76 Uptime: 34 min Memory: 92.1/490.6MB Runlevel: 3 Client: Shell (bash) inxi: 1.9.14

Use the i option to print the ip address information

$ inxi -Fi

9. Print eXtra data

The x option can be used with individual options to print extended or extra information about that particular hardware or profile

To print addtional information about audio system

$ inxi -A -x
Audio:     Card: Intel 82801H (ICH8 Family) HD Audio Controller driver: snd_hda_intel bus-ID: 00:1b.0 
           Sound: Advanced Linux Sound Architecture ver: k3.11.0-12-generic

To get extra information about any subset of hardware profile use the x option like above.
To get more extra information use -xx. To get even more extra information use -xxx. Inxi can't give you anything more beyond that.

Summary

Each option prints out information about a specific hardware part. Select the ones needed or print all of it, either way its very simple and quick.

Resources

https://code.google.com/p/inxi/
Last Updated On : 8th January 2014

Subscribe to get updates delivered to your inbox

  • trash80

    Thank you for the great review/overview. Years ago when we started this project, I didn’t believe it would be as popular as it is today. It started out as a patched (h2) infobash script and school project (me). Over the years, h2 has done a lot of work adding feature requests and squashing bugs. Once again, thank you.

  • guest

    sudo apt-get install inxi
    Reading package lists… Done
    Building dependency tree
    Reading state information… Done
    E: Unable to locate package inxi

    • Kiriakos Fitrakis

      first step: sudo apt-get update

221 Flares Twitter 38 Facebook 0 Google+ 175 LinkedIn 0 StumbleUpon 8 Filament.io 221 Flares ×