| 導購 | 订阅 | 在线投稿
分享
 
 
 

Linux硬件管理的基礎知識

來源:互聯網  2008-05-21 04:46:41  評論

摘要:本文主要解說在Linux中,硬件設備的表示方法及查看工具等;最主要的目的是當我們遇到硬件問題時,懂得如何根據硬件信息來解決問題;

一、在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 設備;硬盤、文件系統... ... 都要仔細的查看;

請參考:

後記:

Linux 對硬件的支持目前的情況來看是要比前幾年好多了,比如聲卡、網卡、顯示卡(非3D加速,如果是3D加速的,要下載廠商驅動,如果廠商不提供,那大多是沒有辦法了,因爲廠商不公開硬件的相關參數,開源社區也沒有辦法開發,對不對?);對于有些硬件還是需要我們來自己安裝驅動或編譯內核來解決;

Linux對硬件的驅動的開發,開源社區是相當積極的,但廠商很少提供非Windows的驅動,大多數的Linux的驅動都是開源社區奉獻的;有人可能會說Windows的硬件驅動最容易,但我不是這麽認爲,我有一聲ISA接口的聲卡,在windows 98 和winme 中發出怪聲,在windows 2000更是沒有驅動。但在Linux中卻支持的非常好。 呵。。。

Linux 對硬件並不是大家原來所說的,越老越舊的硬件跑起來最好,Linux對新設備的支持,可能廠家剛放出來産品,開源社區就有人研究了。解決辦法也會在開源社區可以找到;但有些硬件廠商不會提供驅動的開發參數、信息之類的,所以開源社區有時對這樣的硬件也是無奈,但這樣的設備目前看來是比較少;大多硬件都支持Linux ;

如果您遇到硬件相關的問題,不妨通過我上面所說的來找線索解決,就目前來看也沒有太多的問題。只要仔細一點,細點心,學會用Google 搜索,大多問題還是能解決的。

     摘要:本文主要解說在Linux中,硬件設備的表示方法及查看工具等;最主要的目的是當我們遇到硬件問題時,懂得如何根據硬件信息來解決問題;   一、在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 設備;硬盤、文件系統... ... 都要仔細的查看;   請參考:   後記:   Linux 對硬件的支持目前的情況來看是要比前幾年好多了,比如聲卡、網卡、顯示卡(非3D加速,如果是3D加速的,要下載廠商驅動,如果廠商不提供,那大多是沒有辦法了,因爲廠商不公開硬件的相關參數,開源社區也沒有辦法開發,對不對?);對于有些硬件還是需要我們來自己安裝驅動或編譯內核來解決;   Linux對硬件的驅動的開發,開源社區是相當積極的,但廠商很少提供非Windows的驅動,大多數的Linux的驅動都是開源社區奉獻的;有人可能會說Windows的硬件驅動最容易,但我不是這麽認爲,我有一聲ISA接口的聲卡,在windows 98 和winme 中發出怪聲,在windows 2000更是沒有驅動。但在Linux中卻支持的非常好。 呵。。。   Linux 對硬件並不是大家原來所說的,越老越舊的硬件跑起來最好,Linux對新設備的支持,可能廠家剛放出來産品,開源社區就有人研究了。解決辦法也會在開源社區可以找到;但有些硬件廠商不會提供驅動的開發參數、信息之類的,所以開源社區有時對這樣的硬件也是無奈,但這樣的設備目前看來是比較少;大多硬件都支持Linux ;   如果您遇到硬件相關的問題,不妨通過我上面所說的來找線索解決,就目前來看也沒有太多的問題。只要仔細一點,細點心,學會用Google 搜索,大多問題還是能解決的。
󰈣󰈤
王朝萬家燈火計劃
期待原創作者加盟
 
 
 
>>返回首頁<<
 
 
 
 
 熱帖排行
 
 
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有