1. 程式人生 > >Inxi:一個功能強大的獲取Linux系統信息的命令行工具

Inxi:一個功能強大的獲取Linux系統信息的命令行工具

linux查看系統配置

技術分享

Inxi 最初是為控制臺和 IRC(網絡中繼聊天)開發的一個強大且優秀的命令行系統信息腳本。可以使用它獲取用戶的硬件和系統信息,它也用於調試或者社區技術支持工具。

使用 Inxi 可以很容易的獲取所有的硬件信息:硬盤、聲卡、顯卡、網卡、CPU 和 RAM 等。同時也能夠獲取大量的操作系統信息,比如硬件驅動、Xorg 、桌面環境、內核、GCC 版本,進程,開機時間和內存等信息。

運行在命令行和 IRC 上的 Inxi 輸出略有不同,IRC 上會有一些可供用戶使用的默認過濾器和顏色選項。支持的 IRC 客戶端有:BitchX、Gaim/Pidgin、ircII、Irssi、 Konversation、 Kopete、 KSirc、 KVIrc、 Weechat 和 Xchat 以及其它的一些客戶端,它們具有展示內置或外部 Inxi 輸出的能力。

在 Linux 系統上安裝 Inxi

大多數主流 Linux 發行版的倉庫中都有 Inxi ,包括大多數 BSD 系統。

$ 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+]

在使用 Inxi 之前,用下面的命令查看 Inxi 所有依賴和推薦的應用,以及各種目錄,並顯示需要安裝哪些包來支持給定的功能。

$ inxi --recommends

Inxi 的輸出:

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.

Inxi 工具的基本用法

用下面的基本用法獲取系統和硬件的詳細信息。

獲取 Linux 系統信息

Inix 不加任何選項就能輸出下面的信息:CPU 、內核、開機時長、內存大小、硬盤大小、進程數、登錄終端以及 Inxi 版本。

$ 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

獲取內核和發行版本信息

使用 Inxi 的 -S 選項查看本機系統信息(主機名、內核信息、桌面環境和發行版):

$ 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

獲取電腦機型

使用 -M 選項查看機型(筆記本/臺式機)、產品 ID 、機器版本、主板、制造商和 BIOS 等信息:

$ 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

獲取 CPU 及主頻信息

使用 -C 選項查看完整的 CPU 信息,包括每核 CPU 的頻率及可用的最大主頻。

$ 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

獲取顯卡信息

使用 -G 選項查看顯卡信息,包括顯卡類型、顯示服務器、系統分辨率、GLX 渲染器和 GLX 版本等等(LCTT 譯註: GLX 是一個 X 窗口系統的 OpenGL 擴展)。

$ 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

獲取聲卡信息

使用 -A 選項查看聲卡信息:

$ 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

獲取網卡信息

使用 -N 選項查看網卡信息:

$ 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

獲取硬盤信息

使用 -D 選項查看硬盤信息(大小、ID、型號):

$ inxi -D Drives:    HDD Total Size: 1000.2GB (20.0% used) ID-1: /dev/sda model: ST1000LM024_HN size: 1000.2GB

獲取簡要的系統信息

使用 -b 選項顯示上述信息的簡要系統信息:

$ 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

獲取硬盤分區信息

使用 -p 選項輸出完整的硬盤分區信息,包括每個分區的分區大小、已用空間、可用空間、文件系統以及文件系統類型。

$ inxi -p Partition: ID-1: / size: 324G used: 183G (60%) fs: ext4 dev: /dev/sda10 ID-2: swap-1 size: 4.00GB used: 0.00GB (0%) fs: swap dev: /dev/sda9

獲取完整的 Linux 系統信息

使用 -F 選項查看可以完整的 Inxi 輸出(安全起見比如網絡 IP 地址信息沒有顯示,下面的示例只顯示部分輸出信息):

$ inxi -F  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-) cache: 3072 KB  clock speeds: max: 2700 MHz 1: 1716 MHz 2: 1764 MHz 3: 1776 MHz 4: 1800 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 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 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 Drives:    HDD Total Size: 1000.2GB (20.0% used) ID-1: /dev/sda model: ST1000LM024_HN size: 1000.2GB Partition: ID-1: / size: 324G used: 183G (60%) fs: ext4 dev: /dev/sda10 ID-2: swap-1 size: 4.00GB used: 0.00GB (0%) fs: swap dev: /dev/sda9 RAID:      No RAID devices: /proc/mdstat, md_mod kernel module present Sensors:   System Temperatures: cpu: 56.0C mobo: N/A Fan Speeds (in rpm): cpu: N/A Info:      Processes: 234 Uptime: 3:26 Memory: 3188.9/7879.9MB Client: Shell (bash) inxi: 2.2.35

使用 Inxi 工具監控 Linux 系統

下面是監控 Linux 系統進程、開機時間和內存的幾個選項的使用方法。

監控 Linux 進程的內存使用

使用下面的命令查看進程數、開機時間和內存使用情況:

$ inxi -I Info:      Processes: 232 Uptime: 3:35 Memory: 3256.3/7879.9MB Client: Shell (bash) inxi: 2.2.35

監控進程占用的 CPU 和內存資源

Inxi 默認顯示 前 5 個最消耗 CPU 和內存的進程。 -t 選項和 c 選項一起使用查看前 5 個最消耗 CPU 資源的進程,查看最消耗內存的進程使用 -t 選項和 m 選項; -t選項 和 cm 選項一起使用顯示前 5 個最消耗 CPU 和內存資源的進程。

----------------- 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
----------------- 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
----------------- 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

可以在選項 cm 後跟一個整數(在 1-20 之間)設置顯示多少個進程,下面的命令顯示了前 10 個最消耗 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

監控網絡設備

下面的命令會列出網卡信息,包括接口信息、網絡頻率、mac 地址、網卡狀態和網絡 IP 等信息。

$ 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

監控 CPU 溫度和電腦風扇轉速

可以使用 -s 選項監控 配置了傳感器的機器 獲取溫度和風扇轉速:

$ inxi -s Sensors:   System Temperatures: cpu: 53.0C mobo: N/A Fan Speeds (in rpm): cpu: N/A

用 Linux 查看天氣預報

使用 -w 選項查看本地區的天氣情況(雖然使用的 API 可能不是很可靠),使用 -W <different_location> 設置另外的地區。

$ inxi -w Weather:   Conditions: 93 F (34 C) - smoke Time: February 20, 1:38 PM IST $ inxi -W Mumbai,India Weather:   Conditions: 93 F (34 C) - smoke Time: February 20, 1:38 PM IST $ inxi -W Nairobi,Kenya Weather:   Conditions: 70 F (21 C) - Mostly Cloudy Time: February 20, 11:08 AM EAT

查看所有的 Linux 倉庫信息

另外,可以使用 -r 選項查看一個 Linux 發行版的倉庫信息:

$ 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

下面是查看 Inxi 的安裝版本、快速幫助和打開 man 主頁的方法,以及更多的 Inxi 使用細節。

$ inxi -v   #顯示版本信息 $ inxi -h   #快速幫助 $ man inxi  #打開 man 主頁


本文出自 “高家大少的技術庫” 博客,請務必保留此出處http://gaopengju.blog.51cto.com/12830710/1947422

Inxi:一個功能強大的獲取Linux系統信息的命令行工具