linux下查看硬體資訊

來源:互聯網
上載者:User

linux下查看硬體資訊

用dmidecode命令查看會比較多些


一、在Linux 系統中,對硬體判別的標識的依據;

 

在 LinuxSir.Org 討論區,我們經常看到有些弟兄這樣來描述自己的硬體“我的顯示卡是XXX牌子的,Linux 不支援怎麼辦?”。其實這樣描述是最差的,大家也根本沒有辦法提供協助;因為Linux對硬體的識別是以為晶片集的廠商為依據的,而非硬體的品牌;因為現在硬體廠商大多是OEM的,也就是說硬體的主晶片是他們生產不了的,但他們會從硬體主晶片廠商拿來,焊接在自己的電路板上,這就是OEM 的過程;

無論什麼硬體都是以晶片集的廠商為標識的,而不是什麼市場看到的這個品牌,那個品牌的;舉個例子,我們在市場上看到有各種各樣的顯卡,其實看一下他們的晶片,大多是ATI和 NVIDIA的,所有的ATI和NVIDIA的驅動都是ATI和NVIDIA開發出來的。所以我們提問的時候,要把硬體的晶片說出來,晶片是驅動的唯一標識,而不是品牌!!!

所以我們要找硬體的驅動時,我們一定要根據硬體主晶片的資訊來找相關的驅動;

二、在Linux中查看硬體資訊的工具;

在Linux 中,並不是沒有工具可以查看硬體的晶片資訊,應該說Linux的工具能把硬體資訊查看的更清楚;下面介紹幾個常用的工具;我們最常用的工具還是lspci ;其它的工具只是瞭解一下;

1、lspci 列出所有PCI 裝置;

lspci - list all PCI devices ,主要是有來列出機器中的PCI 裝置,比如音效卡、顯卡、貓、網卡等,主板整合裝置也能列出來;lspci 是讀取 hwdata 資料庫,hwdata 由軟體包 hwdata 提供;大約有如下檔案;

[beinan@localhost ~]# rpm -ql hwdata-0.158-1
/etc/hotplug/blacklist
/etc/pcmcia
/etc/pcmcia/config
/usr/X11R6/lib/X11/Cards
/usr/share/doc/hwdata-0.158
/usr/share/doc/hwdata-0.158/COPYING
/usr/share/doc/hwdata-0.158/LICENSE
/usr/share/hwdata
/usr/share/hwdata/CardMonitorCombos
/usr/share/hwdata/Cards
/usr/share/hwdata/MonitorsDB
/usr/share/hwdata/pci.ids
/usr/share/hwdata/pcitable
/usr/share/hwdata/upgradelist
/usr/share/hwdata/usb.ids

lspci 有兩個參數是我們常用的,-b 和-v ,lspci 也會把usb介面列出來;

舉例:

[root@localhost beinan]# lspci -b
00:00.0 Host bridge: Intel Corporation 82852/82855 GM/GME/PM/GMV Processor to I/O Controller (rev 02)
00:00.1 System peripheral: Intel Corporation 82852/82855 GM/GME/PM/GMV Processor to I/O Controller (rev 02)
00:00.3 System peripheral: Intel Corporation 82852/82855 GM/GME/PM/GMV Processor to I/O Controller (rev 02)
00:02.0 VGA compatible controller: Intel Corporation 82852/855GM Integrated Graphics Device (rev 02)
00:02.1 Display controller: Intel Corporation 82852/855GM Integrated Graphics Device (rev 02)
00:1d.0 USB Controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (rev 03)
00:1d.1 USB Controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (rev 03)
00:1d.2 USB Controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (rev 03)
00:1d.7 USB Controller: Intel Corporation 82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (rev 03)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev 83)
00:1f.0 ISA bridge: Intel Corporation 82801DBM (ICH4-M) LPC Interface Bridge (rev 03)
00:1f.1 IDE interface: Intel Corporation 82801DBM (ICH4-M) IDE Controller (rev 03)
00:1f.3 SMBus: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (rev 03)
00:1f.5 Multimedia audio controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (rev 03)
00:1f.6 Modem: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (rev 03)
02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)
02:09.0 CardBus bridge: Texas Instruments Texas Instruments PCIxx21/x515 Cardbus Controller
02:09.2 FireWire (IEEE 1394): Texas Instruments Texas Instruments OHCI Compliant IEEE 1394 Host Controller
02:09.3 Unknown mass storage controller: Texas Instruments Texas Instruments PCIxx21 Integrated FlashMedia Controller
02:09.4 Class 0805: Texas Instruments Texas Instruments PCI6411, PCI6421, PCI6611, PCI6621, PCI7411, PCI7421, PCI7611, PCI7621 Secure Digital (SD)

分析一下這台機器中有什麼裝置,看主要的就行,與我們應用相關的;

00:02.0 VGA compatible controller: Intel Corporation 82852/855GM Integrated Graphics Device (rev 02)
00:02.1 Display controller: Intel Corporation 82852/855GM Integrated Graphics Device (rev 02) 註:這是顯示卡;
USB Controller 表示的是USB 介面;我們看到有三個這樣的裝置;我的筆記本上正好有三個USB 介面;
Multimedia audio controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (rev 03) 註:這是音效卡;
Modem: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (rev 03) 註:這是貓;
Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10) 註:這是網卡,晶片是8139的;
FireWire (IEEE 1394): Texas Instruments Texas Instruments OHCI Compliant IEEE 1394 Host Controller 註:這是1394介面的資訊;事實上我的筆記本也有這樣的介面;

 

那得到這些資訊有什麼用處呢?如果機器中有些裝置支援的不好,我們就可以根據這些資訊在Google 上搜尋,比如我感覺我的音效卡有問題,就可以根據音效卡資訊相關的來搜尋找解決問題的辦法;根據這些資訊,我們也可以到硬體晶片集的官方去找答案或者驅動;

如果想知道硬體更為詳細的內容,我們可以用 lspci -v 來查看;

[root@localhost beinan]# lspci -v

比如我們可以通過 lspci -v 來查看硬體的irq中斷什麼的;比如網卡不好用,是不是irq 存在衝突了?如果您不知道怎麼解決硬體驅動不了的情況,就要把 lspci -v 相應硬體的資訊整段貼出來,這才是解決問題的唯一辦法;所以學會提問也是極為重要的;

有的系統發行版本,還有lsusb 的工具,自己嘗試一下吧;

2、存放裝置查看和操作工具;

我們查看存放裝置的工具主要有 fdisk ;parted ;cfdisk 等;最常用也是最方便的就是fdisk ;parted 就當一個補充吧,這個工具目前看來並不是太成熟;

請參考:

《Linux 查看磁碟分割、檔案系統、使用方式的命令和相關工具介紹》
《執行個體解說 fdisk 使用方法》

3、通過查看/proc 目錄的相應檔案擷取一些硬體資訊;

我們在查看 /etc/fstab 時,會注意到這樣一行;

/dev/proc /proc proc defaults 0 0

proc 看起來象是一個檔案系統,其實他並不是一個真正的檔案系統 , 它是“proc - process information pseudo-filesystem”,譯成中文大概的意思是“進程資訊偽裝檔案系統”呵呵,這是我翻譯的,有可能不對,請多多指正;
“The proc filesystem is a pseudo-filesystem which is used as an interface to kernel data
structures. It is commonly mounted at /proc. Most of it is read-only, but some files allow
kernel variables to be changed.”

我再來亂譯一下然後再根據/proc 的內容自己理解理解。proc 檔案系統做為核心kernel 資料結構的介面,把kernel 的一些資訊(比如硬體資訊,包括CPU 、網卡、顯示卡、記憶體、檔案系統、SCSI 裝置 ....)寫到 proc 檔案系統中,proc被mont 到 /proc 目錄;/proc 目錄中有大資料大多檔案是唯讀,但一些資料是根據核心的變化而變化的;/proc 目錄中的資料是經常變動的,對於系統中的每個進程都有一個PID;都可以在/proc 中找到;我們也可以通過 ps -aux |more 來查看進程;

我們可以通過 cat 命令來讀取/proc 目錄下的檔案,比如cpu的資訊;

[root@localhost beinan]# cat /proc/cpuinfo

詳細的內容還得需要您來慢慢查看;對於 /proc 的瞭解也是有必要的;

4、dmesg

dmesg 是一個顯示核心緩衝區系統控制資訊的工具;比如系統在啟動時的資訊會寫到/var/log/

註:dmesg 工具並不是專門用來查看硬體晶片集標識的工具,但通過這個工具能讓我們知道機器中的硬體的一些參數;因為系統在啟動的時候,會寫一些硬體相關的日誌到 /var/log/message* 或 /var/log/boot* 檔案中;

如果我們用這個工具來查看一些硬體的資訊;這個工具資訊量太大,的確需要耐心;

[root@localhost beinan]# dmesg

[root@localhost beinan]# dmesg -c 註:清理掉緩衝區,下次開機的時候還會自動產生;

5、 hwbrowser

hwbrowser 是 您當前硬體設定的圖形化瀏覽器 ,這個工具是圖形的。可能系統在預設的情況下沒有安裝。需要您安裝才行。在Fedora 4.0 中,如果能用yum 或apt 應該是通過如下的命令來安裝;

[root@localhost beinan]# yum install hwbrowser

[root@localhost beinan]# apt install hwbrowser
[root@localhost beinan]# hwbrowser

當然您也可以通過rpmfind.net 或者freshrpms.net 上尋找rpm 包來安裝

[root@localhost beinan]# rpm -ivh hwbrowser*.rpm

我建議您最好是通過軟體封裝更新工具yum 和apt來安裝,這樣能自動解決依賴關係;

6、lshal 和 hal-device-manager

通過 lshal 和hal-device-manager 也能知道硬體相關資訊,不過這個工具對新手操作起來是有點麻煩,但我還是得介紹一下;

[root@localhost beinan]# lshal

hwbrowser 是 lshal 的圖形化界;可能系統在預設的情況下沒有安裝,這個工具包是Fedora 擴充包,需要您安裝才行。在Fedora 4.0 中,如果能用yum 或apt 應該是通過如下的命令來安裝;

[root@localhost beinan]# yum install hal-device-manager

[root@localhost beinan]# apt install hal-device-manager
[root@localhost beinan]# hal-device-manager

當然您也可以通過rpmfind.net 或者freshrpms.net 上尋找rpm 包來安裝

[root@localhost beinan]# rpm -ivh hal-device-manager*.rpm

我建議您最好是通過軟體封裝更新工具yum 和apt來安裝,這樣能自動解決依賴關係;

三、不同的硬體有不同的組態工具和與之相應的設定檔;

不同的硬體有不同的組態工具,也有與之相應的設定檔;比如關於顯示器和顯示卡的設定檔是/etc/X11/xorg.conf ,對於老的Linux版本應該是/etc/X11/X86Config 或 X86Config-4 ,xorg 或 X86的設定檔還包括滑鼠、鍵盤等在X案頭環境下的配置和控制等;

音效卡的設定檔是/etc/modprobe.conf 或 /etc/modules.conf ;

檔案系統的設定檔是 /etc/fstab ;

音效卡的組態工具,一般情況下是alsaconf

當然不同的發行版也有相應的硬體設定或管理 工具,比如Fedora Core 4.0 有如下的硬體設定或管理工具;

[root@localhost beinan]# system-config-mouse
[root@localhost beinan]# system-config-network-tui
[root@localhost beinan]# gnome-system-monitor
[root@localhost beinan]# system-config-network
[root@localhost beinan]# system-config-printer-gui
[root@localhost beinan]# system-config-soundcard
[root@localhost beinan]# setup

當然這些圖形化的工具並不是萬能的,他們的功能還是有極大的局限性;所以在硬體設定上,大多還是通過文字模式來操作的;

四、硬體驅動是由核心支援的,但驅動都存放在哪裡?

硬體驅動是必須由核心支援的,無論是我們自己安裝驅動,還是核心內建的驅動都是如此。硬體驅動如果是以核心模組支援的,驅動目錄位於: /lib/modules/核心版本/kernel/目錄 或 /lib/modules/核心版本/kernel/drivers 目錄中;

[root@localhost beinan]# uname -r
2.6.11-1.1369_FC4
[root@localhost beinan]# ls /lib/modules/2.6.11-1.1369_FC4/kernel
arch crypto drivers fs lib net sound

註:只有驅動在核心中以模組的方法支援的,或者我們自己安裝的驅動,驅動才位於 /lib/modules/相應的目錄;如果是直接置入核心的,不會出現在/lib/modules驅動相關的目錄;

五、硬體不被系統支援怎麼辦?

如果一個Linux 系統不支援您的硬體,解決的辦法無非是有兩種,一種是下載驅動自己安裝,Linux的驅動大多是開源社區開發的,廠商提供的比較少;有時也可能要重編核心,主要看驅動內部的說明檔案怎麼說了。因為驅動本來是要核心支援的,編譯核心也極為正常;

值得注意的是:如果我們要重新編譯核心,最好把硬體情況摸清楚了,比如滑鼠、光碟機、軟碟機、USB 裝置;硬碟、檔案系統... ... 都要仔細的查看;

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.