您好,登錄后才能下訂單哦!
這篇文章主要講解了“Linux基礎命令lspci的用法”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“Linux基礎命令lspci的用法”吧!
lspci
lspci是一種實用程序,用于在系統中顯示有關pci總線的信息以及連接到它們的設備。
默認情況下,它顯示了一個簡單的設備列表。使用下面描述的選項可以請求更詳細的輸出或其他程序用于解析的輸出。
如果要報告PCI設備驅動程序或lspci本身中的bug,請使用選項“lspci-vvx”或更好的“lspci-vvxxx”的輸出(不過,可能會有警告)。
輸出的某些部分,特別是在高度冗長的模式下,只有經驗豐富的PCI黑客才能理解Proba-Bly。有關字段的確切定義,請參閱PCI規范或head er.h和/usr/include/linux/pci.h文件。
在許多操作系統上,對PCI配置空間的某些部分的訪問僅限于root用戶,因此對于普通用戶來說,lspci的功能是有限的。然而,lspci盡力顯示盡可能多的可用信息,并將所有其他信息標記為<訪問拒絕>文本
該命令的適用范圍:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。
1、語法
lspci [選項]
lspci命令中,我們經常會看到一些“[]:[].[]”這樣格式的數字,例如“00:01.0”,這一個參數是總線編號,第二個是插槽編號,第三個是功能編號,它們都是十六進制的數字。
2、選項列表
選項 | 說明 |
基礎顯示模式 | |
-m | 以向后兼容并且機器可讀的方式轉儲設備信息 |
-mm | 以機器可讀的方式轉儲設備信息,以便腳本解析 |
-t | 以樹形結構顯示pci設備的層次關系,包含所有總線、橋梁、設備和它們之間的連接 |
顯示選項 | |
-n | 顯示pci設備的廠商和設備代碼 |
-v | 顯示所有設備的詳細信息 |
-vv | 以更加詳細的方式顯示設備信息 |
-k | 顯示處理每個設備的內核驅動程序以及能夠處理該設備的內核模塊。默認情況下,當-v以正常的輸出模式打開時。(目前只在內核2.6或更高版本的Linux上工作。) |
-x | 顯示配置空間標準部分的十六進制轉儲(CardBus橋的前64字節或128字節)。 |
-xxx | 顯示整個PCI配置空間的十六進制轉儲。當您試圖讀取配置空間的某些部分時,只有當幾個PCI設備崩潰時,它才可用,而且只適合root用戶。(這種行為可能沒有違反PCI標準,但至少非常愚蠢)。然而,這樣的設備很少見,所以您不必太擔心 |
-xxxx | 顯示擴展(4096字節)PCI配置空間在PCI-X2.0和PCIExpress總線上可用的十六進制轉儲 |
-b | 以總線為中心的視圖。顯示由pci總線上的卡看到的所有irq編號和地址。注意,不是有內核看到的 |
-D | 始終顯示PCI域號。默認情況下,lspci在只有域0的機器上略過它們。 |
解析ID為名稱的選項 | |
-n | 將PCI供應商和設備代碼顯示為編號,而不是在PCI ID列表中查找它們。 |
-nn | 顯示pci供應商和設備的代碼和名字 |
-q | 如果在本地pci.id文件中找不到設備,則使用DNS查詢中央PCI ID數據庫。如果DNS查詢成功,結果將緩存在~/.pciids-cache中,即使-q不再給出,也會在后續運行中識別。請在自動腳本中使用此開關時要小心,以避免數據庫服務器超載。 |
和“-q”一樣,但是本地緩存被重置 | |
-Q | 查詢中央數據庫,即使是本地也有緩存數據可查。如果您懷疑顯示的條目是錯誤的,請使用此方法。 |
選擇設備的選項 | |
-s [域]:[總線]:[插槽].[功能] | 只顯示指定域中的設備(如果您的計算機有幾個主機橋接器,它們可以共享公共總線編號空間,或者每個設備可以自己尋址PCI域;域編號為0到ffff)、總線編號(0到ff)、插槽編號(0至1f)、函數編號(0至7)。地址可以省略或設置為“*”,這兩者都意味著“任何值”。所有數字都是十六進制的。例如,“0:”表示總線0上的所有設備,“0”表示設備0在任何總線上的所有功能,“0.3”在所有總線上選擇設備0的第三功能,“4”僅顯示每個設備的第四個功能。 |
-d [廠商:設備] | 顯示指定廠商和設備的信息,廠商號和設備號都是十六進制。 |
其他選項 | |
-i <file> | 指定pci設備編號文件,默認文件是/usr/share/hwdata/pci.ids |
-p <file> | 使用指定文件作為PCI ID的映射文件,默認使用/lib/Module/kernel_version/Modes.pcimap |
-M | 調用總線映射模式,它對所有pci設備,包括配置錯誤的橋后面的設備進行徹底掃描。此選項只在直接硬件訪問模式下提供有意義的結果,通常需要根權限。請注意,總線映射程序只掃描pci域0。 |
PCI設備訪問選項 | |
-A <method> | 庫支持多種方法來訪問PCI硬件。默認情況下,它使用第一個可用的訪問方法,但您可以使用此選項覆蓋此決定。你可以使用“-A help”來先看可用的方法 |
-O <param>=<value> | 庫的行為由多個命名參數控制。此選項允許設置任何參數的值。使用“-Ohelp“獲取已知參數及其默認值的列表。 |
-H1 | 通過Intel配置機制1直接訪問硬件 |
-H2 | 通過Intel配置機制2直接訪問硬件 |
-F <file> | 與其訪問真正的硬件,不如從先前運行的lspci-x生成的給定文件中讀取設備及其配置寄存器的值列表,這對于分析用戶提供的錯誤報告非常有用,因為您可以任何方式顯示硬件配置,而不需要使用更多轉儲請求來干擾用戶。 |
-G | 提高庫的調試級別 |
3、說明
1)關于“–m”選項
如果您打算自動處理lspci的輸出,請使用本節中描述的機器可讀的輸出格式之一(-m、-vm、-vmm)。所有其他格式都可能在lspci的不同版本之間發生變化。所有的數字都是以十六進制打印的。如果要處理數字ID而不是名稱,請添加-n開關.
在簡單格式中,每個設備都在一行上進行描述,這些參數被格式化為適合傳遞給shell腳本的參數,即由空格分隔的值,必要時引用和轉義。其中一些參數是位置:槽、類、供應商名稱、設備名稱、子系統名稱和子系統名稱(如果設備沒有子系統,最后兩個參數是空的);其余的參數是選項
2)關于“-vmm”選項
詳細的輸出是由空行分隔的記錄序列,每條記錄用一行來描述一個設備,每一行包含一個‘tag:value’對。標記和值由單個制表符分隔。記錄或記錄中的行都不按任何特定順序排列。標記區分大小寫。下面是已經定義的tag:
Slot,設備所在的插槽名稱
Class,類名
Vendor,廠商名
Device,設備名
SVendor,子系統供應商名字
SDevice,子設備名字
PhySlot,設備所在的物理插槽
Rev,修序號
ProgIf,編程接口
Driver,當前正在處理設備的內核驅動程序
Module,內核模塊的報告
4、實例
1)以機器可讀的方式顯示
|
2)顯示設備代碼和名字
|
3)以樹形結構顯示
|
4)顯示指定位置的設備信息
|
5)顯示指定廠商和設備號的設備信息
|
感謝各位的閱讀,以上就是“Linux基礎命令lspci的用法”的內容了,經過本文的學習后,相信大家對Linux基礎命令lspci的用法這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。