歡迎您光臨本站 註冊首頁

檢測Linux硬體狀態

←手機掃碼閱讀     火星人 @ 2014-03-24 , reply:0

計算機系統是由軟體系統和硬體系統共同組成的。檢測硬體狀態對於保障整個系統的穩定是非常重要的。不論操作系統是使用Linux、還是Windows,一旦硬體出現故障,那麼整個系統的安全就嚴重了。這裡我們主要針對運行Linux的計算機系統的CPU、硬碟、內存進行檢測。 中央處理器狀態的檢測 中央處理器是Linux主機的核心硬體。我們看一下Linux根目錄下:/proc目錄的內容。這個目錄中的文件其實不是存放在磁碟上的。該目錄的文件系統叫做proc文件系統,是系統內核的映像。也就是說該目錄裡面的文件是存放在系統內存裡面。它以文件系統的方式為訪問系統內核數據的操作提供介面。用戶和應用程序可以通過/proc得到系統的信息,並可以改變內核的某些參數。由於系統的信息(如進程)是動態改變的,所以用戶或應用程序讀取proc文件時,proc文件系統是動態從系統內核讀出所需信息並提交的。 CPU的信息存放在「cpuinfo」文件中。我們也可以使用以下命令來查看: #cat /proc/ cpuinfo 以下以筆者的AMD Athlon 1100為例: processor : 0 vendor_id : Authentic AMD cpu family : 6 model : 7 model name : AMD Athlon(tm) Processor stepping : 0 cpu MHz : 1100.046 cache size : 64 KB #緩存容量# fdiv_bug : no # 沒有BUG# hlt_bug : no # 沒有BUG# f00f_bug : no # 沒有BUG# coma_bug : no # 沒有BUG# fpu : yes fpu_exception : yes cpuid level : 1 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 mmx fxsr sse syscall mmxext 3dnowext 3dnow bogomips : 2195.45 一定要確保CPU硬體沒有BUG,並且被系統認別出具體型號。以上只是顯示CPU的基本情況,對於實時情況我們使用mbmon軟體檢測CPU, 1.軟體下載:http://www.nt.phys.kyushu- u.ac.jp/shimizu/download/xmbmon203.tar.gz,http://www.nt.phys.kyushu- u.ac.jp/shimizu/download/README-xmbmon203.html。 軟體下載后先看一下: README-xmbmon203pl1.html 查看一下軟體是否支持你的主板晶元。 2.安裝軟體: gunzip xmbmon203.tar.gz tar xmbmon203.tar cd xmbmon203 ./configure;make;make install 3.運行軟體:
mbmon可以工作在命令行和X窗口下,首先查看一下筆者的主板:
 ./mbmon-d  Using VIA686 HWM directly!!  * VIA Chip VT82C686A/B found.           上面內容表示顯示主板晶元是威盛的VT82C686A/B。下面在命令行下運行。    ./mbmon   Temp.= 42.1, 33.0, 24.2; Rot.= 5357, 0, 0  Vcore = 1.78, 3.11; Volt. = 3.41, 4.93, 12.19, 0.00, 0.00        上面顯示了中央處理器溫度為42.1,電源溫度為33.0,主板溫度為24.2;CPU風扇轉速為5357轉/分鐘;CPU核心電壓為1.78伏特,輸入電壓為12.19伏特、3.41伏特, 4.93伏特。預設情況下,以上內容五秒鐘更新一次記錄。    Mbmon在X窗口下運行,運行結果如圖1所示。  ./xmbmon        圖1 mbmon在X窗口下運行    4.遠程監控    Mbmon最新版本還提供遠程監控的功能:  ./mbmon-p 22    其中「-P 22」表示打開埠22,這樣你就可以使用Telnet、SSH等遠程工具連接Linux主機來檢測CPU狀態了。    硬碟磁軌檢測    硬碟物理壞道是硬碟的所有Linux硬體故障中最讓人頭痛的。它輕則使你的Linux計算機頻頻死機,重則讓你的所有數據化為烏有。現在出廠的硬碟(1993年以後)基本上都支持SMART(Self Monitoring Analysis and Reporting Technology)自動檢測分析及報告技術。SMART技術可以對硬碟的磁頭單元、碟片電機驅動系統、硬碟內部電路以及碟片表面介質材料等進行監測。當SMART監測並分析出硬碟可能出現問題時,會及時向用戶報警以避免計算機數據受損失。SMART技術必須在主板支持的前提下才能發生作用,而且 SMART技術也不能保證能預報所有可能發生的硬碟故障。SMART(SFF-8035i)是硬碟生產商們建立的一個工業標準。這個標準就是在硬碟上保存一個跟執行情況、可靠程度、讀找錯誤率等屬性的表格。所有屬性都有一個1byte(大小範圍1-253)的標準化值,還包含另一個1byte的關鍵階段值。如果屬性表格內某個數據接近小於或達到關鍵階段值,表明硬碟工作不正常了。    Smartmontools是一個Linux下硬碟檢測工具,主頁為http: //smartmontools.sourceforge.net,下載鏈接:ftp: //fr2.rpmfind.net/linux/sourceforge/smartmontools/smartmontools-5.1-18.i386.rpm。    1.軟體安裝:  rpm-ivh/smartmontools-5.1-18.i386.rpm    軟體安裝後會在/usr/local/ 目錄下產生程序:smartctl,先檢測硬碟和主板是否支持SMART技術(見圖2)。  smartctl -i /dev/hda7        圖2 檢測硬碟是否支持SMART    圖2顯示筆者的硬碟支持SMART,型號是:ST320414A(希捷的酷魚III,72000RPM,2兆緩存)。    2.全面檢測硬碟  運行以下硬碟檢測命令:  smartctl -A /dev/hda7        圖3 硬碟物理邏輯狀態    圖3是檢測到的硬碟信息,其顯示的信息根據你的硬碟廠商不同而不同,其中1-202行代表硬碟的不同物理性能,縱列代表硬碟的邏輯狀態。    FLAG是標記,標準數值(VALUE)應當小於或等於關鍵值(THRESH)。WHEN_FAILED 代表錯誤信息,圖3中的WHEN_FAILED縱行是空行,說明硬碟沒有故障。如果WHEN_FAILED顯示數字,表明硬碟磁軌可能有比較大的壞道。    Smartctl有十幾個參數,詳細情況可以下面的命令查看:  smartctl --help      3.高級應用    我們可以用crontab命令實現每天定時的掃描:    (1)首先建立一個文件,文件名稱Linuxect(名稱自己設定):  #crontab -e    (2) 文件內容:  05 16 * * 5 smartctl -A /dev/hda7    用vi編輯后存檔退出。使用crontab命令添加到任務列表中:  #crontab Linuxect    這樣系統內所有用戶在每個星期五的16點05分會自動進行掃描。    內存檢測    通常我們會覺得內存出錯損壞的幾率不大,並且認為如果內存壞了,那麼它是不可能通過主板BIOS的開機自檢程序的。事實上這個自檢程序的功能很少,而且只是檢測容量速度而已,許多內存出錯的問題並不能檢測出來。如果你在運行程序時不時有某個程序莫名其妙地失去響應;打開文件時偶爾提示文件損壞,但稍後打開又沒問題……那你應該考慮檢測一下你的內存了。    1.使用Linux命令檢測  (1)在命令行使用「Free」命令可以監控內存使用情況    #free  total used free shared buffers cached  Mem: 256024 192284 63740 0 10676 101004  -/+ buffers/cache: 80604 175420  Swap: 522072 0 522072        上面給出了一個256MB的RAM和512MB交換空間的系統情況。    (2)使甩vmstat命令監視虛擬內存使用情況:    # vmstat  procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu----  r b swpd free buff cache si so bi bo in cs us sy id wa  1 0 0 63692 10704 101008 0 0 239 42 126 105 48 45 7 0        Vmstat()命令是一個通用監控程序,是Virtual Meomory Statistics(虛擬內存統計)的縮寫。如果使用Vmstat命令的時候沒有使用它的任何命令行參數,你將得到一個一次性的報告。Vmstat命令報咨的主要的活動類型有進程(procs)、內存(以千位元組為單位)、交換分區 (以千位元組為單位)、來自塊設備(硬碟驅動器)的輸入輸出量、系統中斷(每秒鐘發生的次數)、中央處理單元(CPU)分配給用戶系統和空閑時所分別佔用比例。    2.使用工具軟體檢測    Memtest86是一款免費的內存測試軟體,測試準確度比較高,內存的隱性問題也能檢查出來。可以到http://www.memtest86.com/頁面下載它的最新3.0版本。    下載鏈接:http://www.memtest86.com/memtest86-3.0.tar.gz    軟體安裝:    # tar xzvf memtest86-2.5.tar.gz  # cd memtest86-2.5  # make        然後,將一張 3.5 英寸空白磁碟插入到軟盤驅動器,並輸入:  # make install    另外也可以下載http://www.memtest86.com/memtest86-3.0.iso.gz 文件,解壓后是一個IOS文件,刻錄到光碟,再來啟動計算機。    重新啟動計算機,在BIOS中設定用軟碟機啟動即可,軟體運行界面見圖4。        圖4 Memtest86軟體運行界面    圖4中可以看到當前系統所採用的處理器型號:AMD-Duron和頻率:1056,以及CPU的一級緩存(128k)和二級緩存 (64k),系統物理內存的容量(64)和速度(315MB/s)。最後顯示的是主板所採用的晶元組類型。在系統信息的右側顯示的是測試的進度。 「Pass」顯示的是主測試進程完成進度。「Test」顯示的是當前測試項目的完成進度。「Test #1」顯示的是目前的測試項目。「WallTime」顯示測試已經耗費的時間,在這一排數據中「ECC」一欄中,顯示的是當前內存是否支持打開ECC校驗功能。「TEST」顯示的是測試的模式,有「標準」和「完全」模式可供選擇。「    設定檢測選項:我們可以單擊「C」鍵打開Memtest86的設置菜單,接著單擊數字鍵「2」選擇「Test Selection」選項,再單擊數字鍵「3」選擇「All Test」選項打開完全測試模式(如圖5所示)。        圖5 設定檢測選項    主要的內存突發問題(比如「死亡」位)將在幾秒鐘內檢測出來。如果是由特定位模式觸發的故障,則需要長時間測試才能檢測出來。如果你的內存容量比較大,就需要有耐心等待檢測結果。筆者使用的測試內存容量是64MB,PC133。使用完全檢測模式使用的時間是24分鐘。    小結    中央處理器、硬碟、內存是Linux系統的核心。Linux 負有盛名的特點之一是其非凡的穩定性。如果您的硬體有缺陷或配置不正確,那麼系統內的數據的安全就危險了,所以實時檢測它們的狀態是重要的。

[火星人 ] 檢測Linux硬體狀態已經有859次圍觀

http://coctec.com/docs/linux/show-post-137743.html