Linux
如何在本地分析來自伺服器的 SMART 日誌?
我在家裡的桌面上執行 Ubuntu 10.04 伺服器。我重新啟動,機器在 10 分鐘左右後無法訪問。此時我應該已經連接了一個控制台(使用 VGA 電纜的顯示器)。相反,我關閉了機器(按住電源按鈕三秒鐘)。這次我確實連接了一個控制台,並且 fsck 正在執行。我猜這個盒子第一次是無法到達的,因為 fsck 也在執行。無論如何,在下一次重新啟動時,我無法在我的兩個 1.5TB 驅動器之一 (/dev/sdb1) 上安裝分區。
fsck /dev/sdb1
發現了一些錯誤(短讀?類似的東西)但fsck -Cy /dev/sdb1
修復了它們,我能夠安裝和使用分區。我已經安裝了 smartmontools 並將其配置為按照本指南作為守護程序執行。如果我執行
sudo service smartmontools restart
,root
使用者會收到四封電子郵件,其中包含以下錯誤:Device: /dev/sda, 366 Currently unreadable (pending) sectors Device: /dev/sdb, 13 Currently unreadable (pending) sectors Device: /dev/sdb, 28 Offline uncorrectable sectors Device: /dev/sda, 90 Offline uncorrectable sectors
兩個驅動器(所有分區)看起來都很好:我在 /var/log/{syslog,messages} 中沒有看到任何應用程序錯誤、奇怪的行為或錯誤/警告。
所以,最後,有幾個問題:
- 有沒有辦法從盒子中獲取 SMART 日誌並使用GSmartControl在本地分析它們?
- 殺死 fsck 中游真的會破壞硬體嗎?
- 如果驅動器真的沒問題,我可以以某種方式靜噪/重置 SMART 錯誤嗎?
謝謝,-亞當
更新:驅動器顯然很健康:
# smartctl -H /dev/sda smartctl version 5.38 [i686-pc-linux-gnu] Copyright (C) 2002-8 Bruce Allen Home page is http://smartmontools.sourceforge.net/ === START OF READ SMART DATA SECTION === SMART overall-health self-assessment test result: PASSED # smartctl -H /dev/sdb smartctl version 5.38 [i686-pc-linux-gnu] Copyright (C) 2002-8 Bruce Allen Home page is http://smartmontools.sourceforge.net/ === START OF READ SMART DATA SECTION === SMART overall-health self-assessment test result: PASSED
對於您的第一個問題:這是我在 3Ware 控制器上使用磁碟的一種方法:
server $ smartctl -d 3ware,0 -a /dev/twa0 > smart.0 server $ smartctl -d 3ware,1 -a /dev/twa1 > smart.1 server $ smartctl -d 3ware,2 -a /dev/twa2 > smart.2 wks $ scp server:smart.* . wks $ gsmartcontrol -q --no-scan --add-virtual smart.0 --add-virtual smart.1 --add-virtual smart.2