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 )顯示指定廠商和裝置號的裝置資訊
|
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29270124/viewspace-2216981/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- linux 命令 基礎Linux
- Linux基礎命令Linux
- Linux基礎命令—mkswapLinux
- Linux基礎命令---mknodLinux
- Linux基礎命令---mkfsLinux
- Linux基礎命令---mktempLinux
- Linux基礎命令---sudoLinux
- Linux基礎命令---yesLinux
- Linux基礎命令---shutdownLinux
- Linux基礎命令---serviceLinux
- Linux基礎命令—sudoLinux
- Linux基礎命令—calLinux
- Linux基礎命令—dateLinux
- Linux基礎命令—lastLinuxAST
- Linux基礎命令---dateLinux
- Linux基礎命令---lastLinuxAST
- Linux基礎命令---lsusbLinux
- Linux基礎命令---hwclockLinux
- Linux基礎命令---ejectLinux
- Linux基礎命令---archLinux
- Linux基礎命令---duLinux
- Linux基礎命令---dfLinux
- Linux基礎命令---bcLinux
- Linux基礎命令---calLinux
- Linux基礎命令---chkconfigLinux
- Linux基礎命令—lsusbLinux
- Linux基礎命令—dfLinux
- Linux基礎命令—hwclockLinux
- Linux基礎命令—mkdirLinux
- Linux基礎命令---lnLinux
- Linux基礎命令---chgrpLinux
- Linux基礎命令---findfsLinux
- Linux基礎命令—findfsLinux
- Linux基礎命令—swaponLinux
- Linux基礎命令---fsckLinux
- Linux基礎命令---swaponLinux
- Linux基礎命令---swapoffLinux
- Linux基礎命令---mkisofsLinux