本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、PCIデバイスの情報を表示する「lspci」コマンドです。
本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、PCIデバイスの情報を表示する「lspci」コマンドです。
「lspci」はPCIデバイスの情報を表示するコマンドです。接続されているPCIデバイスを一覧表示できる他、詳細情報を表示可能です。
lspci [オプション]
※[ ]は省略可能な引数を示しています。
短いオプション | 意味 |
---|---|
-s ドメイン:バス:デバイス.ファンクション | 表示したいデバイスの識別番号を全て16進数で指定する(各要素は省略可能、任意の値という意味で「*」も使用可能)(本文を参照) 指定例 -s ドメイン:バス:デバイス.ファンクション -s ドメイン:バス:デバイス -s バス:デバイス -s バス:* -s デバイス -s デバイス.ファンクション -s .ファンクション |
-d ベンダーID:デバイスID | 表示したいデバイスのベンダーIDとデバイスIDを16進数で指定する(それぞれ省略可能、ベンダーIDのみを指定したい場合は「-d 8086:」のように末尾に「:」を付ける) |
-D | ドメイン番号も表示する |
-k | PCIデバイスに使用されているドライバも表示する |
-mm,-m | 文字列を "〜"(ダブルクオート)で囲むなど、機械で処理しやすい書式で表示する |
-t | デバイスをツリーで表示する |
-n | ベンダーとデバイスコードを名称ではなく16進のIDで表示する |
-nn | ベンダーとデバイスコードを名称とIDの両方で表示する |
-i ファイル | ベンダーIDの一覧が書かれたファイルを指定する(デフォルトは「/usr/share/hwdata/pci.ids」)(※2) |
-p ディレクトリ | PCIバスの情報取得元のディレクトリを指定する(デフォルトは/proc/bus/pci)(※3) |
-b | カーネル側からのIRQ(割り込み番号)とアドレスの代わりに、PCIバス側からのIRQとアドレスを表示する(IRQの競合を調べることができる) |
-v | 詳細を表示する |
-vv | -vよりさらに詳しい情報を表示する |
※1 この他、デバッグ用のオプションがある。一部のオプションはシステムのクラッシュを招く可能性があり、rootユーザーだけが指定できる(lspci --helpを参照)。
※2 Ubuntu 18.04.1 LTSに含まれるlspciコマンドでは、/usr/share/misc/pci.idsをデフォルトで参照する。
※3 Ubuntu 18.04.1 LTSに含まれるlspciコマンドでは、/lib/modules/カーネルのバージョン/modules.pcimapをデフォルトで参照する。
「lspci」で、PCIデバイスを一覧表示します(画面1)。識別番号(バス:デバイス:ファンクション)に続いて、デバイスの種類と「:」記号、ベンダー名とデバイス名を表示します。デバイスによってはリビジョン番号も表示します。
ベンダー名とデバイス名は、「/usr/share/hwdata/pci.ids」などに書かれている情報に基づいています。「-n」オプションを指定すると、名称ではなく16進数によるIDを表示します。両方同時に表示したい場合は「-nn」オプションを使います。
画面1では、「lspci」の実行結果に続き、比較用に「lspci -n」と「lspci -nn」の実行結果を表示しました。headコマンドで冒頭3行分のみを選んでいます。
lspci
(PCIデバイスを一覧表示する)(画面1)
lspci -n
(ベンダーIDとデバイスIDで表示する)(画面1)
lspci -nn
(ベンダーとデバイスの名称とIDを表示する)(画面1)
「-k」オプションを指定すると、デバイスを制御しているドライバ(カーネルドライバ)を併せて表示します(画面2)。
lspci -k
(PCIデバイス一覧を、デバイスを制御しているドライバとともに表示する)
PCIデバイスについて詳しい情報を表示したい場合は「-v」オプション(画面3)を使い、さらに詳しい情報を表示したい場合は「-vv」オプションを指定します(画面4)。
表示対象のデバイスを指定したい場合は「-s」オプションで識別番号(バス:デバイス:ファンクション)を指定します。または、「-d」オプションでベンダーIDやデバイスIDを指定できます。ベンダーIDやデバイスIDは、画面1のように「-n」または「-nn」オプションで確認できます。
画面3と画面4では、ネットワークカード(Ethernet controller、スロット3のファンクション0)の詳細情報を表示しています。
lspci -v
(詳細情報を表示)
lspci -vv
(さらに詳細な情報を表示)
lspci -v -d ベンダーID:デバイスID
(指定したデバイスの詳細情報を表示)
西村 めぐみ(にしむら めぐみ)
PC-9801NからのDOSユーザー。PC-486DX時代にDOS版UNIX-like toolsを経てLinuxへ。1992年より生産管理のパッケージソフトウェアの開発およびサポート業務を担当。著書に『図解でわかるLinux』『らぶらぶLinuxシリーズ』『Accessではじめるデータベース超入門[改訂2版]』『macOSコマンド入門』など。2011年より、地方自治体の在宅就業支援事業にてPC基礎およびMicrosoft Office関連の教材作成およびeラーニング指導を担当。
Copyright © ITmedia, Inc. All Rights Reserved.