O INXI é uma ferramenta poderosa que funciona via CLI baseado em scripts. Ele traz informações sobre hardware de uma forma muito prática basta que você entenda as flags de comando disponíveis no script.
Instalação
A instalação é muito simples estou colocando no exemplo abaixo as opções de acordo com a distro que esteja utilizando:
$ sudo apt-get install inxi [On Debian/Ubuntu/Linux Mint] $ sudo yum install inxi [On CentOs/RHEL/Fedora] $ sudo dnf install inxi [On Fedora 22+]
Dependências
Como ele é um script há necessidade de instalação das bibliotecas e ferramentas auxíliares. Para descobrir quais são estas ferramentas você consegue descobrir com o comando:
$ inxi --recommends
A saída deste comando será algo como:
inxi will now begin checking for the programs it needs to operate. First a check of the main languages and tools inxi uses. Python is only for debugging data collection. --------------------------------------------------------------------------- Bash version: 4.3.42(1)-release Gawk version: 4.1.3, Sed version: Sudo version: 1.8.16 Python version: 2.7.12 --------------------------------------------------------------------------- Test One: Required System Directories (Linux Only). If one of these system directories is missing, inxi cannot operate: /proc....................................................................... Present /sys........................................................................ Present All the directories are present. --------------------------------------------------------------------------- Test Two: Required Core Applications. If one of these applications is missing, inxi cannot operate: df (info: partition data)................................................... /bin/df gawk (info: core tool)...................................................... /usr/bin/gawk grep (info: string search).................................................. /bin/grep lspci (info: hardware data)................................................. /usr/bin/lspci ps (info: process data)..................................................... /bin/ps readlink.................................................................... /bin/readlink sed (info: string replace).................................................. /bin/sed tr (info: character replace)................................................ /usr/bin/tr uname (info: kernel data)................................................... /bin/uname wc (info: word character count)............................................. /usr/bin/wc All the applications are present. --------------------------------------------------------------------------- Test Three: Script Recommends for Graphics Features. NOTE: If you do not use X these do not matter (like a headless server). Otherwise, if one of these applications is missing, inxi will have incomplete output: glxinfo (info: -G glx info)................................................. /usr/bin/glxinfo xdpyinfo (info: -G multi screen resolution)................................. /usr/bin/xdpyinfo xprop (info: -S desktop data)............................................... /usr/bin/xprop xrandr (info: -G single screen resolution).................................. /usr/bin/xrandr All the applications are present. --------------------------------------------------------------------------- Test Four: Script Recommends for Remaining Features. If one of these applications is missing, inxi will have incomplete output: dig (info: -i first wlan ip default test)................................... /usr/bin/dig dmidecode (info: -M if no sys machine data; -m memory)...................... /usr/sbin/dmidecode file (info: -o unmounted file system)....................................... /usr/bin/file hciconfig (info: -n -i bluetooth data)...................................... /bin/hciconfig hddtemp (info: -Dx show hdd temp)........................................... /usr/sbin/hddtemp ifconfig (info: -i ip lan-deprecated)....................................... /sbin/ifconfig ip (info: -i ip lan)........................................................ /sbin/ip sensors (info: -s sensors output)........................................... /usr/bin/sensors strings (info: -I sysvinit version)......................................... /usr/bin/strings lsusb (info: -A usb audio;-N usb networking)................................ /usr/bin/lsusb modinfo (info: -Ax,-Nx module version)...................................... /sbin/modinfo runlevel (info: -I runlevel)................................................ /sbin/runlevel sudo (info: -Dx hddtemp-user;-o file-user).................................. /usr/bin/sudo uptime (info: -I uptime (check which package owns Debian)).................. /usr/bin/uptime All the applications are present. --------------------------------------------------------------------------- Test Five: Script Recommends for Remaining Features. One of these downloaders needed for options -i/-w/-W (-U/-! [11-15], if supported): wget (info: -i wan ip;-w/-W;-U/-! [11-15] (if supported))................... /usr/bin/wget curl (info: -i wan ip;-w/-W;-U/-! [11-15] (if supported))................... /usr/bin/curl All the applications are present. --------------------------------------------------------------------------- Test Six: System Directories for Various Information. (Unless otherwise noted, these are for GNU/Linux systems) If one of these directories is missing, inxi may have incomplete output: /sys/class/dmi/id (info: -M system, motherboard, bios)...................... Present /dev (info: -l,-u,-o,-p,-P,-D disk partition data).......................... Present /dev/disk/by-label (info: -l,-o,-p,-P partition labels)..................... Present /dev/disk/by-uuid (info: -u,-o,-p,-P partition uuid)........................ Present All the directories are present. --------------------------------------------------------------------------- Test Seven: System Files for Various Information. (Unless otherwise noted, these are for GNU/Linux systems) If one of these files is missing, inxi may have incomplete output: /proc/asound/cards (info: -A sound card data)............................... Present /proc/asound/version (info: -A ALSA data)................................... Present /proc/cpuinfo (info: -C cpu data)........................................... Present /etc/lsb-release (info: -S distro version data [deprecated])................ Present /proc/mdstat (info: -R mdraid data)......................................... Present /proc/meminfo (info: -I memory data)........................................ Present /etc/os-release (info: -S distro version data).............................. Present /proc/partitions (info: -p,-P partitions data).............................. Present /proc/modules (info: -G module data)........................................ Present /proc/mounts (info: -P,-p partition advanced data).......................... Present /var/run/dmesg.boot (info: -D,-d disk data [BSD only])...................... Missing /proc/scsi/scsi (info: -D Advanced hard disk data [used rarely])............ Present /var/log/Xorg.0.log (info: -G graphics driver load status).................. Present The following files are missing from your system: File: /var/run/dmesg.boot --------------------------------------------------------------------------- All tests completed.
Flags de comando
Vamos meter a mão na massa. Chega de bla-bla-bla.
$ inxi CPU~Dual core Intel Core i5-4210U (-HT-MCP-) speed/max~2164/2700 MHz Kernel~4.4.0-21-generic x86_64 Up~3:15 Mem~3122.0/7879.9MB HDD~1000.2GB(20.0% used) Procs~234 Client~Shell inxi~2.2.35 * Se rodar apenas o comando inxi ele irá retornar uma saída como a de cima. Ele irá trazer uma lista com processador / memória / disco e shell atual
$ inxi -S System: Host: TecMint Kernel: 4.4.0-21-generic x86_64 (64 bit) Desktop: Cinnamon 3.0.7 Distro: Linux Mint 18 Sarah * A flag -S irá trazer as informações do kernel da máquina. Por que não colocaram o -K realmente não sei a dúvida eu repasso para o developer
$ inxi -M Machine: System: LENOVO (portable) product: 20354 v: Lenovo Z50-70 Mobo: LENOVO model: Lancer 5A5 v: 31900059WIN Bios: LENOVO v: 9BCN26WW date: 07/31/2014
* A flag -M traz o tipo de máquina que está utilizando. Informações do modelo e fabricante
$ inxi -C CPU: Dual core Intel Core i5-4210U (-HT-MCP-) cache: 3072 KB clock speeds: max: 2700 MHz 1: 1942 MHz 2: 1968 MHz 3: 1734 MHz 4: 1710 MHz * A flag -C traz informações da(s) CPUs da máquina
$ inxi -G Graphics: Card-1: Intel Haswell-ULT Integrated Graphics Controller Card-2: NVIDIA GM108M [GeForce 840M] Display Server: X.Org 1.18.4 drivers: intel (unloaded: fbdev,vesa) Resolution: [email protected] GLX Renderer: Mesa DRI Intel Haswell Mobile GLX Version: 3.0 Mesa 11.2.0 É hora de descobrir se a distro instalada reconheceu o device de vídeo corretamente. A flag -G traz as informações da GPU de seu computador
$ inxi -A Audio: Card-1 Intel 8 Series HD Audio Controller driver: snd_hda_intel Sound: ALSA v: k4.4.0-21-generic Card-2 Intel Haswell-ULT HD Audio Controller driver: snd_hda_intel * A flag -A (áudio) traz as informações sobre o áudio da máquina
$ inxi -N Network: Card-1: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller driver: r8169 Card-2: Realtek RTL8723BE PCIe Wireless Network Adapter driver: rtl8723be * A flag -N (network) traz as informações das NICs de sua máquina
$ inxi -D Drives: HDD Total Size: 1000.2GB (20.0% used) ID-1: /dev/sda model: ST1000LM024_HN size: 1000.2GB * A flag -D traz as informações dos storages conectados a máquina atual
$ inxi -b System: Host: TecMint Kernel: 4.4.0-21-generic x86_64 (64 bit) Desktop: Cinnamon 3.0.7 Distro: Linux Mint 18 Sarah Machine: System: LENOVO (portable) product: 20354 v: Lenovo Z50-70 Mobo: LENOVO model: Lancer 5A5 v: 31900059WIN Bios: LENOVO v: 9BCN26WW date: 07/31/2014 CPU: Dual core Intel Core i5-4210U (-HT-MCP-) speed/max: 2018/2700 MHz Graphics: Card-1: Intel Haswell-ULT Integrated Graphics Controller Card-2: NVIDIA GM108M [GeForce 840M] Display Server: X.Org 1.18.4 drivers: intel (unloaded: fbdev,vesa) Resolution: [email protected] GLX Renderer: Mesa DRI Intel Haswell Mobile GLX Version: 3.0 Mesa 11.2.0 Network: Card-1: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller driver: r8169 Card-2: Realtek RTL8723BE PCIe Wireless Network Adapter driver: rtl8723be Drives: HDD Total Size: 1000.2GB (20.0% used) Info: Processes: 233 Uptime: 3:23 Memory: 3137.5/7879.9MB Client: Shell (bash) inxi: 2.2.35 * A flag -b traz um resumo geral de todas as infos encontradas sobre a máquina.
Monitorando processos que utilizam a memória no seu sistema Linux Uma das funcionalidades interessantes do INXI é a forma no qual ele traz as informações de ferramentas que estamos acostumados a utilizar no Linux.
O interessante é que ele traz tudo de uma forma mais simples.
$ inxi -I Info: Processes: 232 Uptime: 3:35 Memory: 3256.3/7879.9MB Client: Shell (bash) inxi: 2.2.35 * A flag -I traz as informações de utilização da memória a máquina
----------------- Linux CPU Usage ----------------- $ inxi -t c Processes: CPU: % used - top 5 active 1: cpu: 53.7% command: plugin-container pid: 3066 2: cpu: 20.0% command: java pid: 1527 3: cpu: 19.7% command: firefox pid: 3018 4: cpu: 4.6% command: Xorg pid: 2114 5: cpu: 3.0% command: cinnamon pid: 2835 Com a flag -t c você consegue monitorar o uso de CPU do sistema Linux
----------------- Linux Memoery Usage ----------------- $ inxi -t m Processes: Memory: MB / % used - Used/Total: 3212.5/7879.9MB - top 5 active 1: mem: 980.51MB (12.4%) command: plugin-container pid: 3066 2: mem: 508.96MB (6.4%) command: java pid: 1527 3: mem: 507.89MB (6.4%) command: firefox pid: 3018 4: mem: 244.05MB (3.0%) command: chrome pid: 7405 5: mem: 211.46MB (2.6%) command: chrome pid: 6146 * A flag -t m traz as informações de utilização dos processos que estão consumindo mais memória em seu sistema Linux.
----------------- Linux CPU and Memory Usage ----------------- $ inxi -t cm Processes: CPU: % used - top 5 active 1: cpu: 53.7% command: plugin-container pid: 3066 2: cpu: 20.0% command: java pid: 1527 3: cpu: 19.7% command: firefox pid: 3018 4: cpu: 4.6% command: Xorg pid: 2114 5: cpu: 3.0% command: cinnamon pid: 2835 Memory: MB / % used - Used/Total: 3223.6/7879.9MB - top 5 active 1: mem: 991.93MB (12.5%) command: plugin-container pid: 3066 2: mem: 508.96MB (6.4%) command: java pid: 1527 3: mem: 507.86MB (6.4%) command: firefox pid: 3018 4: mem: 244.45MB (3.1%) command: chrome pid: 7405 5: mem: 211.68MB (2.6%) command: chrome pid: 6146
A flag -t cm faz um mix das informações do monitoramento de memória e Cpu
$ inxi -t cm10 Processes: CPU: % used - top 10 active 1: cpu: 53.4% command: plugin-container pid: 3066 2: cpu: 19.8% command: java pid: 1527 3: cpu: 19.5% command: firefox pid: 3018 4: cpu: 4.5% command: Xorg pid: 2114 5: cpu: 3.0% command: cinnamon pid: 2835 6: cpu: 2.8% command: chrome pid: 7405 7: cpu: 1.1% command: pulseaudio pid: 2733 8: cpu: 1.0% command: soffice.bin pid: 7799 9: cpu: 0.9% command: chrome pid: 5763 10: cpu: 0.5% command: chrome pid: 6179 Memory: MB / % used - Used/Total: 3163.1/7879.9MB - top 10 active 1: mem: 976.82MB (12.3%) command: plugin-container pid: 3066 2: mem: 511.70MB (6.4%) command: java pid: 1527 3: mem: 466.01MB (5.9%) command: firefox pid: 3018 4: mem: 244.40MB (3.1%) command: chrome pid: 7405 5: mem: 203.71MB (2.5%) command: chrome pid: 6146 6: mem: 199.74MB (2.5%) command: chrome pid: 5763 7: mem: 168.30MB (2.1%) command: cinnamon pid: 2835 8: mem: 165.51MB (2.1%) command: soffice.bin pid: 7799 9: mem: 158.91MB (2.0%) command: chrome pid: 6179 10: mem: 151.83MB (1.9%) command: mysqld pid: 1259 A flag -t cm10 possibilita você trazer os processos que estão atualmente consumindo mais memória e cpu. Eles podem ser parametrizados para trazer de 1 a 20 processos
$ inxi -Nni Network: Card-1: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller driver: r8169 IF: enp1s0 state: up speed: 100 Mbps duplex: full mac: 28:d2:44:eb:bd:98 Card-2: Realtek RTL8723BE PCIe Wireless Network Adapter driver: rtl8723be IF: wlp2s0 state: down mac: 38:b1:db:7c:78:c7 WAN IP: 111.91.115.195 IF: wlp2s0 ip-v4: N/A IF: enp1s0 ip-v4: 192.168.0.103 * A flag -Nni traz um panorâma geral do status das NIcs em seu sistema Linux. Olha como é prático, ai você me pergunta mas eu consigo fazer isto com ifconfig em conjunto com outras ferramentas, OK sim consegue e de uma forma mais completa. A ideia aqui é trazer aquelas informações de bate e pronto que precisamos sem ter que usar ferramentas greps e AWKs para filtrar as informações
$ inxi -s Sensors: System Temperatures: cpu: 53.0C mobo: N/A Fan Speeds (in rpm): cpu: N/A A flag -s monitora os sensores de temperatura da máquina
$ inxi -r Repos: Active apt sources in file: /etc/apt/sources.list.d/dawidd0811-neofetch-xenial.list deb http://ppa.launchpad.net/dawidd0811/neofetch/ubuntu xenial main deb-src http://ppa.launchpad.net/dawidd0811/neofetch/ubuntu xenial main Active apt sources in file: /etc/apt/sources.list.d/dhor-myway-xenial.list deb http://ppa.launchpad.net/dhor/myway/ubuntu xenial main deb-src http://ppa.launchpad.net/dhor/myway/ubuntu xenial main Active apt sources in file: /etc/apt/sources.list.d/official-package-repositories.list deb http://packages.linuxmint.com sarah main upstream import backport deb http://archive.ubuntu.com/ubuntu xenial main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu xenial-updates main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu xenial-backports main restricted universe multiverse deb http://security.ubuntu.com/ubuntu/ xenial-security main restricted universe multiverse deb http://archive.canonical.com/ubuntu/ xenial partner Active apt sources in file: /etc/apt/sources.list.d/qbittorrent-team-qbittorrent-stable-xenial.list deb http://ppa.launchpad.net/qbittorrent-team/qbittorrent-stable/ubuntu xenial main deb-src http://ppa.launchpad.net/qbittorrent-team/qbittorrent-stable/ubuntu xenial main Active apt sources in file: /etc/apt/sources.list.d/slgobinath-safeeyes-xenial.list deb http://ppa.launchpad.net/slgobinath/safeeyes/ubuntu xenial main deb-src http://ppa.launchpad.net/slgobinath/safeeyes/ubuntu xenial main Active apt sources in file: /etc/apt/sources.list.d/snwh-pulp-xenial.list deb http://ppa.launchpad.net/snwh/pulp/ubuntu xenial main deb-src http://ppa.launchpad.net/snwh/pulp/ubuntu xenial main Active apt sources in file: /etc/apt/sources.list.d/twodopeshaggy-jarun-xenial.list deb http://ppa.launchpad.net/twodopeshaggy/jarun/ubuntu xenial main deb-src http://ppa.launchpad.net/twodopeshaggy/jarun/ubuntu xenial main Active apt sources in file: /etc/apt/sources.list.d/ubuntu-mozilla-security-ppa-xenial.list deb http://ppa.launchpad.net/ubuntu-mozilla-security/ppa/ubuntu xenial main deb-src http://ppa.launchpad.net/ubuntu-mozilla-security/ppa/ubuntu xenial main
A flag -r traz o status dos repositórios atualmente ativos em seu APT.
Quer saber mais sobre o projeto ou quer contribuir ? Vá até o GIT e faça sua contribuição