Inxi – full featured system information script

inxi-2013-05-20-1

How to describe Inxi? Simple said, it’s console system information script,  but it goes far beyond that because it can print out almost any desirable information about your system. Inxi has a wide range of options and custom triggers, along with useful defaults like inxi -v4 -c6 (basic output in short form) or inxi -F -c6 (show Fuller output for inxi, includes all upper case line arguments). Plain inxi with no options, prints a single line of basic system information, but with long list of different options it can print various informations along with different color (-c option) choise, 36 color combinations to be precize. The following options if used without -b, -F or -v + number will show just that complete line:

Output Control Options:
-A  Audio/sound card information.
-b  Basic output, short form. Like inxi -v 2, only minus hard disk names.
-c  Color schemes. Scheme number is required. Color selectors run a color selector option
    prior to inxi starting which lets you set the config file value for the selection.
    Supported color schemes: 0-32 Example: inxi -c 11
    Color selectors for each type display (NOTE: irc and global only show safe color set):
    94 - Console, out of X
    95 - Terminal, running in X - like xTerm
    96 - Gui IRC, running in X - like Xchat, Quassel, Konversation etc.
    97 - Console IRC running in X - like irssi in xTerm
    98 - Console IRC not in  X
    99 - Global - Overrides/removes all settings. Setting specific removes global.
-C  Full CPU output, including per CPU clockspeed (if available).
-d  Optical drive data. Same as -Dd. See also -x and -xx.
-D  Full hard Disk info, not only model, ie: /dev/sda ST380817AS 80.0GB. See also -x and -xx.
-f  All cpu flags, triggers -C. Not shown with -F to avoid spamming. ARM cpus show 'features'.
-F  Full output for inxi. Includes all Upper Case line letters, plus -s and -n.
    Does not show extra verbose options like -x -d -f -u -l -o -p -t -r
-G  Graphic card information (card, x type, resolution, glx renderer, version).
-i  Wan IP address, and shows local interfaces (requires ifconfig network tool). Same as -Nni
    Not shown with -F for user security reasons, you shouldn't paste your local/wan IP.
-I  Information: processes, uptime, memory, irc client (or shell type), inxi version.
-l  Partition labels. Default: short partition -P. For full -p output, use: -pl (or -plu).
-M  Machine data. Motherboard, Bios, and if present, System Builder (Like Lenovo).
    Older systems/kernels without the required /sys data can use dmidecode instead, run as root.
-n  Advanced Network card information. Same as -Nn. Shows interface, speed, mac id, state, etc.
-N  Network card information. With -x, shows PCI BusID, Port number.
-o  Unmounted partition information (includes UUID and LABEL if available).
    Shows file system type if you have file installed, if you are root OR if you have
    added to /etc/sudoers (sudo v. 1.7 or newer):  ALL = NOPASSWD: /usr/bin/file (sample)
-p  Full partition information (-P plus all other detected partitions).
-P  Basic partition information (shows what -v 4 would show, but without extra data).
    Shows, if detected: / /boot /home /tmp /usr /var. Use -p to see all mounted partitions.
-r  Distro repository data. Currently supported repo types: APT; PACMAN; PISI; YUM; Ports.
-R  RAID data. Shows RAID devices, states, levels, and components, and extra data with -x/-xx
    md-raid: If device is resyncing, shows resync progress line as well.
-s  Sensors output (if sensors installed/configured): mobo/cpu/gpu temp; detected fan speeds.
    Gpu temp only for Fglrx/Nvidia drivers. Nvidia shows screen number for > 1 screens.
-S  System information: host name, kernel, desktop environment (if in X), distro
-t  Processes. Requires extra options: c (cpu) m (memory) cm (cpu+memory). If followed by numbers 1-20,
    shows that number of processes for each type (default: 5; if in irc, max: 5): -t cm10
    Make sure to have no space between letters and numbers (-t cm10 - right, -t cm 10 - wrong).
-u  Partition UUIDs. Default: short partition -P. For full -p output, use: -pu (or -plu).
-v  Script verbosity levels. Verbosity level number is required. Should not be used with -b or -F
    Supported levels: 0-7 Example: inxi -v 4
    0 - Short output, same as: inxi
    1 - Basic verbose, -S + basic CPU + -G + basic Disk + -I.
    2 - Networking card (-N), Machine (-M) data, shows basic hard disk data (names only),
        and, if present, basic raid (devices only, and if inactive, notes that). similar to: inxi -b
    3 - Advanced CPU (-C), network (-n) data, and switches on -x advanced data option.
    4 - Partition size/filled data (-P) for (if present):/, /home, /var/, /boot
        Shows full disk data (-D).
    5 - Audio card (-A); sensors (-s), partition label (-l) and UUID (-u), short form of optical drives,
        standard raid data (-R).
    6 - Full partition (-p), unmounted partition (-o), optical drive (-d), full raid; triggers -xx.
    7 - Network IP data (-i); triggers -xxx.
-w  Local weather data/time. To check an alternate location, see: -W .
    For extra weather data options see -x, -xx, and -xxx.
-W   -  supported options: postal code; city,[state/country]; latitude,longitude
    Only use if you want the weather somewhere other than the machine running inxi.
    Use only ascii characters, replace spaces in city/state/country names with +: new+york,ny
-x  Adds the following extra data (only works with verbose or line output, not short form): 
    -C - Bogomips on Cpu;
    -d - Extra optical drive data; adds rev version to optical drive.
    -D - Hdd temp with disk data if you have hddtemp installed, if you are root OR if you have added to
         /etc/sudoers (sudo v. 1.7 or newer):  ALL = NOPASSWD: /usr/sbin/hddtemp (sample)
    -G - Direct rendering status for Graphics (in X).
    -G - (for single gpu, nvidia driver) screen number gpu is running on.
    -i - IPv6 as well for LAN interface (IF) devices.
    -I - System GCC, default. With -xx, also show other installed GCC versions.
       - If running in console, not in IRC client, shows shell version number if detected.
    -N -A - Version/port(s)/driver version (if available) for Network/Audio;
    -N -A -G - Network, audio, graphics, shows PCI Bus ID/Usb ID number of card;
    -R - md-raid: Shows component raid id. Adds second RAID Info line: raid level; report on drives (like 5/5);
         blocks; chunk size; bitmap (if present). Resync line, shows blocks synced/total blocks.
       - zfs-raid: Shows raid array full size; available size; portion allocated to RAID
    -S - Desktop toolkit if avaliable (GNOME/XFCE/KDE only); Kernel gcc version
    -t - Memory use output to cpu (-xt c), and cpu use to memory (-xt m).
    -w/-W - Wind speed and time zone (-w only).
-xx Show extra, extra data (only works with verbose or line output, not short form): 
    -A - Chip vendor:product ID for each audio device.
    -D - Disk serial number.
    -G - Chip vendor:product ID for each video card.
    -I - Other detected installed gcc versions (if present).
         Adds parent program (or tty) for shell info if not in IRC (like Konsole or Gterm).
    -M - Chassis information, bios rom size (dmidecode only), if data for either is available.
    -N - Chip vendor:product ID for each nic.
    -R - md-raid: Superblock (if present); algorythm, U data. Adds system info line
         (kernel support,read ahead, raid events). If present, adds unused device line. 
         Resync line, shows progress bar.
    -S - Display manager (dm) in desktop output, if in X (like kdm, gdm3, lightdm).
    -w/-W - Humidity, barometric pressure.
    -xx -@  - Automatically uploads debugger data tar.gz file to ftp.techpatterns.com.
-xxx Show extra, extra, extra data (only works with verbose or line output, not short form): 
    -S - Panel/shell information in desktop output, if in X (like gnome-shell, cinnamon, mate-panel).
    -w/-W - Location (uses -z/irc filter), weather observation time, wind chill, heat index,
         dew point (shows extra lines for data where relevant).
-z  Security filters for IP/Mac addresses, location, user home directory name. Default on for irc clients.
-Z  Absolute override for output filters. Useful for debugging networking issues in irc for example.

Additional Options:
-h --help      This help menu.
-H             This help menu, plus developer options. Do not use dev options in normal operation!
--recommends   Checks inxi application dependencies + recommends, and directories, then shows
               what package(s) you need to install to add support for that feature.
-U             Auto-update script. Will also install/update man page. Note: if you installed as root, you
               must be root to update, otherwise user is fine. Man page installs require root user mode.
-V --version   inxi version information. Prints information then exits.

Debugging Options:
-%  Overrides defective or corrupted data.
-@  Triggers debugger output. Requires debugging level 1-14 (8-10 - logging of data).
    Less than 8 just triggers inxi debugger output on screen.
    1-7  - On screen debugger output
    8    - Basic logging
    9    - Full file/sys info logging
    10   - Color logging.
    The following create a tar.gz file of system data, plus collecting the inxi output to file:
    To automatically upload debugger data tar.gz file to ftp.techpatterns.com: inxi -xx@ 
    For alternate ftp upload locations: Example: inxi -! ftp.yourserver.com/incoming -xx@ 14
    11 - With data file of xiin read of /sys.
    12 - With xorg conf and log data, xrandr, xprop, xdpyinfo, glxinfo etc.
    13 - With data from dev, disks, partitions, etc., plus xiin data file.
    14 - Everything, full data collection.
Advanced Options:
-! 31  Turns off hostname in output. Useful if showing output from servers etc.
-! 32  Turns on hostname in output. Overrides global B_SHOW_HOST='false'

Setup of Inxi is simple, use of the

$ inxi --recommends

command print out optional dependencies that are needed for most complete data collection, also with install instruction for Debian/Ubuntu, Arch Linux and Redhat/Fedora/Suse. After that it’s all about options. The complete list can be found online or with:

$ inxi --help

or

$ man inxi

Another very useful ‘addon’ is very good connectivity to various IRC client, which comes very handy when seeking out help or reports bugs over IRC. Because of versatility Inxi should be a must Linux app, useful for admins and also ‘regular’ users.

Have you hugged a penguin today?

Advertisements

Comments are closed.