Linuxのハードウェアに関する詳細情報を取得する『Inxi』コマンド

今回は、Linuxが搭載されているハードウェアのパーツごと、例えばサウンドボードやマザーボード、ハードディスク等のベンダーや型番といった詳細情報を取得出来るコマンド『Inxi』を紹介する。

1.インストール

まずはインストールから。 以下のコマンドを実行しインストールを行う。

Debian/Ubuntu

sudo apt-get install inxi

RHEL系

sudo yum install inxi --enablerepo=epel

2.コマンドの実行

さて、それでは実際にコマンドを実行してみよう。まずはオプションを付けず、デフォルトの内容を表示してみる。 以下の内容は、実際に自宅で用いてるマシンのデータを表示している。

$ inxi
CPU~Quad core Intel Core2 Quad Q9550 (-MCP-) clocked at 2833 Mhz Kernel~2.6.32-358.6.2.el6.x86_64 x86_64 Up~24 days Mem~4803.8/7870.6MB HDD~21284.2GB(48.7% used) Procs~197 Client~Shell inxi~2.1.28

デフォルトで実行すると、CPUやカーネルのバージョン、HDDやメモリの容量が確認出来る。 ここで、ヘルプの内容を見てみよう。

$ inxi -h
inxi supports the following options. You can combine them, or list them one by one. Examples:
inxi -v4 -c6 OR inxi -bDc 6. If you start inxi with no arguments, it will show the short form.

The following options if used without -F, -b, or -v will show just option line(s): A, C, D, G,
I, M, N, P, R, S, f, i, n, o, p, l, u, r, s, t - you can use these alone or together to show
just the line(s) you want to see. If you use them with -v [level], -b or -F, it will show the
full output for that line along with the output for the chosen verbosity level.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
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 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.
Disk total used percentage includes swap partition size(s).
-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, display server type/version, 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.
Dmidecode can be forced with -! 33
-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) Example: <username> ALL = NOPASSWD: /usr/bin/file
-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. Supported repo types: APT; PACMAN; PISI; YUM; URPMQ; 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 <location>. For extra
weather data options see -x, -xx, and -xxx.
-W <location> Supported options for <location>: 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
'+'. Example: inxi -W new+york,ny
-x Adds the following extra data (only works with verbose or line output, not short form):
-C CPU Flags, 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)
Example: <username> ALL = NOPASSWD: /usr/sbin/hddtemp
-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. Init/RC
Type and runlevel (if available).
-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). System default runlevel. Adds
parent program (or tty) for shell info if not in IRC (like Konsole or Gterm). Adds
Init/RC (if found) version number.
-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.
-@ 11-14 Automatically uploads debugger data tar.gz file to ftp.techpatterns.com. EG:
inxi -xx@14
-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).
-y Required extra option: integer, 80 or greater. Set the output line width max. Overrides
IRC/Terminal settings or actual widths. If used with -h, put -y option first.
Example: inxi -y 130
-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.
-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@ <11-14>
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'
-! 33 Forces use of dmidecode data instead of /sys where relevant (-M).

おー…結構色々なオプションがあるのね… 実際に、主要なオプションを使ってみる事にしよう。

基本出力を行う

「-b」オプションを付与することで、基本的な情報を取得することが出来る。

$ inxi -b
System:    Host: mediaserver Kernel: 2.6.32-358.6.2.el6.x86_64 x86_64 (64 bit) Console: tty 0
           Distro: CentOS release 6.4 (Final)
Machine:   No /sys/class/dmi, using dmidecode: you must be root to run dmidecode
CPU:       Quad core Intel Core2 Quad Q9550 (-MCP-) clocked at 2833 MHz
Graphics:  Card: NVIDIA G98 [GeForce 8400 GS]
           Display Server: N/A drivers: nouveau (unloaded: vesa,fbdev,nv)
           tty size: 98x29 Advanced Data: N/A out of X
Network:   Card: Realtek RTL8111/8168B PCI Express Gigabit Ethernet controller driver: r8169
Drives:    HDD Total Size: 21284.2GB (48.7% used)
RAID:      Device: 1: /dev/md0
Info:      Processes: 197 Uptime: 24 days Memory: 4804.1/7870.6MB Init: Upstart runlevel: 5
           Client: Shell (bash) inxi: 2.1.28

HDDに関する情報を取得する

「-D」オプションを付与することで、HDDの情報を取得出来る。

$ inxi -D
Drives: HDD Total Size: 21284.2GB (48.7% used)
ID-1: /dev/sda model: WDC_WD25EZRX size: 2500.5GB
ID-2: /dev/sdd model: WDC_WD6400AAKS size: 640.1GB
ID-3: /dev/sdc model: WDC_WD6400AAKS size: 640.1GB
ID-4: /dev/sdb model: WDC_WD25EZRX size: 2500.5GB
ID-5: /dev/sde model: WDC_WD25EZRX size: 2500.5GB
ID-6: /dev/sdf model: WDC_WD25EZRX size: 2500.5GB
ID-7: /dev/sdh model: WDC_WD25EZRX size: 2500.5GB
ID-8: /dev/sdg model: WDC_WD25EZRX size: 2500.5GB
ID-9: /dev/sdi model: WDC_WD25EZRX size: 2500.5GB
ID-10: /dev/sdj model: WDC_WD25EZRX size: 2500.5GB

パーティションに関する情報を取得する

「-p」オプションを付与することで、パーティションに関する情報を取得する。

$ inxi -p
Partition: ID-1: / size: 571G used: 56G (11%) fs: ext4 dev: /dev/sdd3
ID-2: /boot size: 517M used: 167M (34%) fs: ext4 dev: /dev/sdc1
ID-3: /home size: 12T used: 9.4T (89%) fs: ext4 dev: /dev/dm-0
ID-4: swap-1 size: 16.78GB used: 0.43GB (3%) fs: swap dev: /dev/sdd2

マザーボードの情報を取得する

「-M」オプションで、マザーボードに関する情報を取得出来る。

$ inxi -M
Machine: System: VMware product: VMware Virtual Platform

NICに関する情報を取得する

「-n」オプションを付与することで、NICに関する情報を取得することが出来る。

$ inxi -n
Network: Card: Realtek RTL8111/8168B PCI Express Gigabit Ethernet controller driver: r8169
IF: eth0 state: up speed: 1000 Mbps duplex: full mac: 00:1a:4d:5b:e4:94

「-i」オプションを追用いると、NICに関する情報に加えIPアドレスも取得出来る。

[media@mediaserver ~]$ inxi -i
Network: Card: Realtek RTL8111/8168B PCI Express Gigabit Ethernet controller driver: r8169
IF: eth0 state: up speed: 1000 Mbps duplex: full mac: 00:1a:4d:5b:e4:94
WAN IP: xxx.xxx.xxx.xxx IF: br0 ip: 192.168.xxx.xxx
IF: eth0 ip: N/A IF: vnet0 ip: N/A

グラフィックカードの情報を取得する

「-G」オプションで、グラフィックカードの情報を取得出来る。

$ inxi -G
Graphics: Card: NVIDIA G98 [GeForce 8400 GS]
Display Server: N/A drivers: nouveau (unloaded: vesa,fbdev,nv)
tty size: 98x29 Advanced Data: N/A out of X

オーディオカードの情報を取得する

「-A」オプションで、オーディオカードの情報を取得出来る。

$ inxi -A
Audio: Card Intel 82801I (ICH9 Family) HD Audio Controller driver: snd_hda_intel
Sound: Advanced Linux Sound Architecture v: 1.0.21

主要な情報を全て取得する

「-F」オプションで、主要な情報を取得出来る。

$ inxi -F
System: Host: mediaserver Kernel: 2.6.32-358.6.2.el6.x86_64 x86_64 (64 bit) Console: tty 0
Distro: CentOS release 6.4 (Final)
Machine: No /sys/class/dmi, using dmidecode: you must be root to run dmidecode
CPU: Quad core Intel Core2 Quad Q9550 (-MCP-) cache: 6144 KB
Clock Speeds: 1: 2833 MHz 2: 2833 MHz 3: 2833 MHz 4: 2833 MHz
Graphics: Card: NVIDIA G98 [GeForce 8400 GS]
Display Server: N/A drivers: nouveau (unloaded: vesa,fbdev,nv)
tty size: 98x29 Advanced Data: N/A out of X
Audio: Card Intel 82801I (ICH9 Family) HD Audio Controller driver: snd_hda_intel
Sound: Advanced Linux Sound Architecture v: 1.0.21
Network: Card: Realtek RTL8111/8168B PCI Express Gigabit Ethernet controller driver: r8169
IF: eth0 state: up speed: 1000 Mbps duplex: full mac: 00:1a:4d:5b:e4:94
Drives: HDD Total Size: 21284.2GB (48.7% used)
ID-1: /dev/sda model: WDC_WD25EZRX size: 2500.5GB
ID-2: /dev/sdd model: WDC_WD6400AAKS size: 640.1GB
ID-3: /dev/sdc model: WDC_WD6400AAKS size: 640.1GB
ID-4: /dev/sdb model: WDC_WD25EZRX size: 2500.5GB
ID-5: /dev/sde model: WDC_WD25EZRX size: 2500.5GB
ID-6: /dev/sdf model: WDC_WD25EZRX size: 2500.5GB
ID-7: /dev/sdh model: WDC_WD25EZRX size: 2500.5GB
ID-8: /dev/sdg model: WDC_WD25EZRX size: 2500.5GB
ID-9: /dev/sdi model: WDC_WD25EZRX size: 2500.5GB
ID-10: /dev/sdj model: WDC_WD25EZRX size: 2500.5GB
Partition: ID-1: / size: 571G used: 56G (11%) fs: ext4 dev: /dev/sdd3
ID-2: /boot size: 517M used: 167M (34%) fs: ext4 dev: /dev/sdc1
ID-3: /home size: 12T used: 9.4T (89%) fs: ext4 dev: /dev/dm-0
ID-4: swap-1 size: 16.78GB used: 0.43GB (3%) fs: swap dev: /dev/sdd2
RAID: Device-1: /dev/md0 - active raid: 6 components: online: 7/7 - sde sdf1 sdh1 sdg sdi1 sda1 sdj1 spare: sdb1
Sensors: System Temperatures: cpu: No active sensors found. Have you configured your sensors yet? mobo: N/A gpu: 72.0
Info: Processes: 197 Uptime: 24 days Memory: 4806.0/7870.6MB Init: Upstart runlevel: 5
Client: Shell (bash) inxi: 2.1.28

プロセス情報を取得する

「-xt」オプションを用いることで、プロセスに関する情報を取得出来る。 オプション指定の際は、CPU、メモリの使用率どちらを表示させるのか指定する必要がある。

まずはCPUから。

$ inxi -xt c
Processes: CPU - % used - top 5 active
1: cpu: 5.3% command: qemu-kvm pid: 11257 mem: 3727.83MB (47.3%)
2: cpu: 2.9% daemon: ~md0_raid6~ pid: 1741 mem: 0.00MB (0.0%)
3: cpu: 0.0% command: smbd pid: 28472 mem: 3.86MB (0.0%)
4: cpu: 0.0% command: pickup pid: 28372 mem: 3.21MB (0.0%)
5: cpu: 0.0% command: -bash pid: 26596 mem: 1.88MB (0.0%)

次はメモリ。

$ inxi -xt m
Processes: Memory - MB / % used - top 5 active
1: mem: 3727.83MB (47.3%) command: qemu-kvm pid: 11257 cpu: 5.3%
2: mem: 104.86MB (1.3%) command: squeezeboxserver (started by: perl) pid: 11034 cpu: 0.0%
3: mem: 30.85MB (0.3%) command: gnome-settings-daemon pid: 11426 cpu: 0.0%
4: mem: 19.52MB (0.2%) command: virt-who.py (started by: python) pid: 11167 cpu: 0.0%
5: mem: 18.50MB (0.2%) command: Xorg pid: 11315 cpu: 0.0%

こんなところだろうか。 ハードウェアに関する情報をこのコマンド一つで取得できるので、まぁ便利かなぁ。