Linuxを日常的に使う実験ブログ

Linuxのシステムやハードウェア情報を取得するコマンドを集めてみた

 2014-09-09

 Linux全般

こんにちは。今回はLinuxのシステム情報を入手するコマンド特集です。システムの設定やハードの情報を入手する際に役立ちそうなコマンド(というかCUI操作)を独断と偏見でピックアップします。ディストロやバージョンによって設定ファイルやコマンドは変化しますので注意してくださいね。(本記事のコマンドは2014年9月時点のものです) [adsense02]

CPUやメモリの情報を調べる

CUPの情報を得る

$ cat /proc/cpuinfo

出力例 [bash] processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 23 model name : Intel(R) Core(TM)2 Duo CPU P8400 @ 2.26GHz stepping : 6 microcode : 0x60c cpu MHz : 800.000 cache size : 3072 KB (以下省略) [/bash]

メモリー(RAM)の情報を得る

$ cat /proc/meminfo

出力例 [bash] MemTotal: 2028028 kB MemFree: 237240 kB Buffers: 155960 kB Cached: 1072260 kB SwapCached: 0 kB Active: 1044360 kB Inactive: 576148 kB Active(anon): 338836 kB (以下省略) [/bash]

PCIデバイスやモジュール関連の情報を調べる

PCIデバイスの情報を得る

$ lspci

出力例 [bash] 00:00.0 Host bridge: Intel Corporation Mobile 4 Series Chipset Memory Controller Hub (rev 07) 00:02.0 VGA compatible controller: Intel Corporation Mobile 4 Series Chipset Integrated Graphics Controller (rev 07) 00:02.1 Display controller: Intel Corporation Mobile 4 Series Chipset Integrated Graphics Controller (rev 07) (以下省略) [/bash]

読み込まれているモジュール一覧を出力

$ lsmod

出力例 [bash] Module Size Used by nls_utf8 12416 1 nls_cp437 12417 1 vfat 17116 1 fat 44497 1 vfat cryptd 14125 0 aes_i586 16647 3 aes_generic 32970 1 aes_i586 (以下省略) [/bash]

ドライブやUSB関連の情報を調べる

接続されているHDDやUSBドライブを調べる

$ lsblk

出力例 [bash] NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 298.1G 0 disk ├─sda1 8:1 0 93.1G 0 part ├─sda2 8:2 0 1K 0 part ├─sda3 8:3 0 97.7G 0 part / ├─sda4 8:4 0 45.8G 0 part ├─sda5 8:5 0 55.9G 0 part └─sda6 8:6 0 5.6G 0 part [SWAP] [/bash]

接続されているUSB機器の情報を得る

(2015/3/23追記)

$ lsusb

出力例 [bash] Bus 001 Device 004: ID 056e:0079 Elecom Co., Ltd Bus 001 Device 002: ID 0409:005a NEC Corp. HighSpeed Hub (以下省略) [/bash]

ドライブの容量を調べる

$ df -h

出力例 [bash] ファイルシス サイズ 使用 残り 使用% マウント位置 /dev/sda3 97G 22G 70G 25% / dev 986M 0 986M 0% /dev run 988M 864K 987M 1% /run tmpfs 988M 68K 988M 1% /dev/shm tmpfs 988M 0 988M 0% /sys/fs/cgroup tmpfs 988M 24K 988M 1% /tmp tmpfs 198M 8.0K 198M 1% /run/user/1000 /dev/sdb1 7.5G 3.1G 4.4G 42% /media/usb [/bash]

inodeを確認する

$ df -i

出力例 [bash] ファイルシス Iノード I使用 I残り I使用% マウント位置 /dev/sda3 6406144 364744 6041400 6% / dev 219133 412 218721 1% /dev run 220142 496 219646 1% /run tmpfs 220142 2 220140 1% /dev/shm tmpfs 220142 11 220131 1% /sys/fs/cgroup tmpfs 220142 32 220110 1% /tmp tmpfs 220142 10 220132 1% /run/user/1000 [/bash]

キーボードの設定を調べる

Xorgでのキーボードレイアウト設定を確認する

X関連の設定でキーボードレイアウトを設定しても有効にならない場合は他の設定ファイルを読み込んでいる可能性もあります。現在の状態を知るには以下コマンドを実行してみてください。尚、xpropはデフォルトでインストールされていないディストロもありますのでご注意を。

$ xprop -root | grep XKB

出力例 [bash] _XKB_RULES_NAMES(STRING) = “evdev”, “pc105”, “jp”, "", "" [/bash]

コンソール用のキーボードレイアウト設定を確認する

Debian系(Ubuntu,Linux Mint等) Debian系では6(squeeze)以降でコンソールとxorgサーバーでキーボードレイアウトの設定ファイルが/etc/default/keybordに統一されています。

$ cat /etc/default/keyboard

Arch Linux,RedHat系(CentOS等)のsystemd採用ディストロ

$ cat /etc/vconsole.conf

Gentoo Linux(Open RC)

$ cat /etc/conf.d/keymaps

環境変数

登録されている環境変数一覧を見る

$ export -p | less

使用可能なフォントを知りたい

$ fc-list | less

システムに常駐しているサービスの状態を一覧で見たい(init関連)

ゴタゴタしていて落ち着かないinitシステム関連についてです。設定や情報を見るコマンドは色々ありますが、今回はステータス一覧を取得するコマンドを取り上げることにします。

SysV/Upstart(Debian,Ubuntu等)

以下の管理ツールはデフォルトではインストールされていません。リポジトリからインストールしてください。 sysv-rc-conf

$ sysv-rc-conf —list

出力例 [bash] acpi-fakekey 2:on 3:on 4:on 5:on acpi-support 1:off 2:on 3:on 4:on 5:on acpid 2:on 3:on 4:on 5:on alsa-utils 0:off 1:off 6:off S:on anacron 2:on 3:on 4:on 5:on (以下省略) [/bash] chkconfig chkconfigはRedhat系のディストロを使ってる方には馴染みのあるコマンドだと思います。しかし、RedHat系のディストロはsystemdに移行していますので、systemdの項を参考にしてください。

$ chkconfig —list

出力結果はsysv-rc-confと同様です。

Systemd(Fedora,CentOS,Arch Linux,Gentoo等)

$ systemctl list-unit-files

出力例 [bash] bluetooth.service enabled canberra-system-shutdown.service disabled colord.service static console-getty.service disabled console-shell.service disabled container-getty@.service static cronie.service disabled cups-browsed.service enabled (以下省略) [/bash]

Open RC(Gentoo linux)

$ rc-status -s

出力例 [bash] hwclock [ started ] sysfs [ started ] udev-mount [ started ] devfs [ started ] dmesg [ started ] kmod-static-nodes [ started ] [/bash]

最後に

普段筆者が設定を確認したいと思うときによく使うコマンドを列挙してみました。記事を書きながら改めてディストロやバージョン毎に設定ファイルの置き場所やコマンドが異なっている現状に複雑な思いを抱きました。これらの複雑な現状はLinuxの自由さと多様性を象徴していますが、同時にユーザーにとっては使えるツールやコマンドがコロコロと変化してしまい「覚えたことが生かせないシステム」という印象を強く植え付ける結果を招いてしまいます。統一性か多様性か・・・その狭間で揺れながらこれからもオープンソースOSは進化していくのでしょう。 [adsense]