這裡將介紹在 Linux 系統下查詢硬體資訊的一些小工具,有了這些工具,可以省下不少時間,而且得到的電腦硬體資訊也更為詳細。
lshw
第一個介紹的工具是 lshw,他是 list hardware 的縮寫,這個工具必須以 root 權限來執行(若是以一般使用者來執行,就會出現一些警告訊息):sudo lshw這個工具會列出電腦中所有的硬體資訊,第一個部份是一般性的資訊,看起來就像這樣:
seal-laptop
description: Computer
product: iBook G4
vendor: Copyright 1983-2004 Apple Computer, Inc. All Rights Reserved
serial: QJP
width: 32 bits
這是在筆者的 iBook G4 上執行的結果,其顯示電腦的型號是 iBook G4,製造廠商是 Apple Computer,另外也顯示這是一台 32 位元的機器,接著會列出其他細部的資訊,lshw 所提供的資訊非常詳細,大致尚可分為下面幾項:
- firmware - motherboard and BIOS information
- cpu - CPU information
- cache - cache information
- memory - memory information
- bank - specific bank memory information
- pci - PCI bus information
- display - PCI display adapter
- multimedia - PCI audio adapter
- pci - other PCI devices
- network - PCI network adapter
- usb - USB devices
- ide - IDE information
- disk - individual disks
- volume - volumes on this disk
以下是節錄的輸出訊息:
*-core
description: Motherboard
physical id: 0
clock: 133MHz
capabilities: powerbook6_5 macrisc3 power_macintosh
*-firmware
product: OpenFirmware 3
physical id: 0
logical name: /proc/device-tree
capabilities: bootinfo
*-memory
description: System memory
physical id: 1
size: 768MiB
*-bank:0
description: Memory bank
physical id: 0
version: 0000,00 00,00
slot: DIMM0/BUILT-IN
size: 256MiB
*-bank:1
description: Memory bank
physical id: 1
version: 0000,2D 04,54
serial: TS64MSD64V6J
slot: DIMM1/J31
size: 512MiB
*-cpu
description: CPU
product: 7447A, altivec supported
physical id: 2
bus info: cpu@0
version: 1.1 (pvr 8003 0101)
size: 1066MHz
capacity: 1066MHz
clock: 133MHz
capabilities: altivec performance-monitor cpufreq
*-cache:0
description: L1 Cache
physical id: 0
size: 32KiB
*-cache:1
description: L2 Cache (unified)
physical id: 1
size: 512KiB
clock: 1066MHz (0.9ns)
[略]
由細部的資訊可以看出這台電腦的記憶體有兩條,一條是 256M,另一條是 512M。
雖然 lshw 所提供的資訊相當完整,但有時候我們只需要查詢某一部份的資訊,其實不需要將所有的資訊全部列出來,這時候可以改用其他的工具來處理。
lscpu
lscpu 是專門用來查詢 CPU 資訊的工具:lscpu
其輸出類似像這樣:
Architecture: ppc
CPU(s): 1
Model: PowerBook6,5
L1d cache: 32K
L1i cache: 32K
L2 cache: 512K
由 lscpu 的輸出資訊可以看出這台機器只有一顆 ppc 的 CPU。下面是筆者在另一台機器上的 lscpu 輸出:
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
CPU(s): 4
Thread(s) per core: 1
Core(s) per socket: 4
CPU socket(s): 1
NUMA node(s): 1
Vendor ID: GenuineIntel
CPU family: 6
Model: 15
Stepping: 11
CPU MHz: 2405.096
Virtualization: VT-x
L1d cache: 32K
L1i cache: 32K
L2 cache: 4096K
這裡的輸出就比較詳細了:CPU 的製造廠商是 Intel,四核心、64 bits,時脈是 2.4 GHz。
lspci
若是要查看顯示卡的型號,可以使用 lspci 這個工具,它會列出所有 PCI bus 上的硬體裝置資訊:lscpi
以下是 lspci 的輸出:
0000:00:0b.0 Host bridge: Apple Computer Inc. UniNorth 2 AGP
0000:00:10.0 VGA compatible controller: ATI Technologies Inc M9+ 5C63 [Radeon Mobility 9200 (AGP)] (rev 01)
0001:10:0b.0 Host bridge: Apple Computer Inc. UniNorth 2 PCI
0001:10:12.0 Network controller: Broadcom Corporation BCM4306 802.11b/g Wireless LAN Controller (rev 03)
0001:10:17.0 Unassigned class [ff00]: Apple Computer Inc. KeyLargo/Intrepid Mac I/O
0001:10:18.0 USB Controller: Apple Computer Inc. KeyLargo/Intrepid USB
0001:10:19.0 USB Controller: Apple Computer Inc. KeyLargo/Intrepid USB
0001:10:1a.0 USB Controller: Apple Computer Inc. KeyLargo/Intrepid USB
0001:10:1b.0 USB Controller: NEC Corporation USB (rev 43)
0001:10:1b.1 USB Controller: NEC Corporation USB (rev 43)
0001:10:1b.2 USB Controller: NEC Corporation USB 2.0 (rev 04)
0002:20:0b.0 Host bridge: Apple Computer Inc. UniNorth 2 Internal PCI
0002:20:0d.0 Unassigned class [ff00]: Apple Computer Inc. UniNorth/Intrepid ATA/100
0002:20:0e.0 FireWire (IEEE 1394): Apple Computer Inc. UniNorth 2 FireWire (rev 81)
0002:20:0f.0 Ethernet controller: Apple Computer Inc. UniNorth 2 GMAC (Sun GEM) (rev 80)
由 lspci 的輸出可以看出這台機器的顯示卡是 ATI 的 Radeon Mobility 9200。
在安裝硬體驅動程式時,有了這個資訊就可以上 Google 查一下如何對這張顯示卡做最佳化的設定。
lsusb
lsusb 可以列出所有的 USB 裝置:lsusb
以下是其輸出:
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 002: ID 045e:00cb Microsoft Corp. Basic Optical Mouse v2.0
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
由這個輸出可以看出來目前的 USB 裝置只有一個 Microsoft 的滑鼠。
lsmod
最後一個檢查硬體的方式是從 Linux 系統所載入的模組來看,lsmod 這個指令會列出所有被系統載入的模組:lsmod
其輸出為:
Module Size Used by
sg 30929 0
binfmt_misc 8080 1
parport_pc 38386 0
ppdev 7570 0
lp 8921 0
parport 36140 3 parport_pc,ppdev,lp
arc4 1357 2
b43 318676 0
mac80211 282008 1 b43
radeon 1040735 2
ttm 66008 1 radeon
drm_kms_helper 33273 1 radeon
drm 200444 5 radeon,ttm,drm_kms_helper
cfg80211 167453 2 b43,mac80211
snd_aoa_i2sbus 19627 0
rtc_generic 1407 0
snd_aoa_soundbus 4824 1 snd_aoa_i2sbus
therm_adt746x 9532 0
apm_emu 1480 0
apm_emulation 6952 2 apm_emu
uninorth_agp 7604 1
snd_powermac 66253 2
snd_pcm 84435 2 snd_aoa_i2sbus,snd_powermac
snd_seq_midi 5492 0
snd_rawmidi 21923 1 snd_seq_midi
snd_seq_midi_event 7179 1 snd_seq_midi
snd_seq 57836 2 snd_seq_midi,snd_seq_midi_event
snd_timer 23210 2 snd_pcm,snd_seq
snd_seq_device 6870 3 snd_seq_midi,snd_rawmidi,snd_seq
snd 59885 11 snd_aoa_i2sbus,snd_powermac,snd_pcm,snd_rawmidi,snd_seq,snd_timer,snd_seq_device
soundcore 1148 1 snd
snd_page_alloc 7313 1 snd_pcm
usbhid 41179 0
hid 77979 1 usbhid
ssb 49052 1 b43
firewire_ohci 32381 0
mmc_core 82058 1 ssb
firewire_core 58790 1 firewire_ohci
sungem 31873 0
sungem_phy 11933 1 sungem
crc_itu_t 1475 1 firewire_core
由系統載入的模組也可以多少看出有哪些硬體存在。
/proc/cpuinfo
要查詢 CPU 的資訊除了上述的方式外,也可以直接查看 /proc/cpuinfo 這個檔案:cat /proc/cpuinfo
其輸出的資訊更為詳細:
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 15
model name : Intel(R) Core(TM)2 Quad CPU Q6600 @ 2.40GHz
stepping : 11
cpu MHz : 2405.096
cache size : 4096 KB
physical id : 0
siblings : 4
core id : 0
cpu cores : 4
apicid : 0
initial apicid : 0
fpu : yes
fpu_exception : yes
cpuid level : 10
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good nopl aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm lahf_lm dts tpr_shadow vnmi flexpriority
bogomips : 4810.19
clflush size : 64
cache_alignment : 64
address sizes : 36 bits physical, 48 bits virtual
power management:
processor : 1
vendor_id : GenuineIntel
cpu family : 6
model : 15
model name : Intel(R) Core(TM)2 Quad CPU Q6600 @ 2.40GHz
stepping : 11
cpu MHz : 2405.096
cache size : 4096 KB
physical id : 0
siblings : 4
core id : 3
cpu cores : 4
apicid : 3
initial apicid : 3
fpu : yes
fpu_exception : yes
cpuid level : 10
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good nopl aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm lahf_lm dts tpr_shadow vnmi flexpriority
bogomips : 4811.10
clflush size : 64
cache_alignment : 64
address sizes : 36 bits physical, 48 bits virtual
power management:
[略]
參考網站:Linux Journal
沒有留言:
張貼留言