Linux磁碟檢測工具smartctl的使用和分析

2021-01-08 電子產品世界

1 編寫目的

本文引用地址:http://www.eepw.com.cn/article/201610/305661.htm

在如今大數據的環境中,磁碟的性能和穩定性是非常重要的一個業務因素。在Linux系統中,smartctl是較為常用的磁碟檢測工具。

本文基於Linux系統中smartctl進行分析,目的在於說明相關工具的使用,並對SMART(Self-Monitoring, Analysis and Reporting Technology)做一些分析。

2 術語、定義和縮略語

2.1 術語、定義

本文使用的專用術語、定義,見表2.1。

表2.1

術語/定義含義

SMARTSelf-Monitoring, Analysis and Reporting Technology

2.2 縮略語

本文件應用了以下縮略語,見表2.2。

表2.2

縮略語原 文中文含義

SMARTSelf-Monitoring, Analysis and Reporting Technology自監察分析及報告技術

3 smartctl

smartctl是smartmontools-5.38-2.el5 rpm中的一個命令行工具,可以執行SMART任務:列印SMART self-test和error報告,開啟或關閉SMART自動測試,觸發磁碟self-test。

語法:

smartctl [options] device

device:

/dev/hd[a-t] IDE/ATA 磁碟

/dev/sd[a-z] SCSI devices磁碟。注意,對於SATA磁碟,由於是通過libata

庫來訪問,所以要增加參數-d ata。

3.1 [options]:

參數按照不同的類型來分類。

3.1.1 顯示信息 參數:

-h 幫助信息

-V 版本信息

-i 列印基本信息(磁碟設備號、序列號、固件版本…)

-a 列印磁碟所有的SMART信息

3.1.2 運行時行為 參數:

-q TYPE 指定輸出的安靜模式。

TYPE可以有3種選擇:

eorsonly 只列印錯誤日誌。

slent 有任何列印。

nserial 不列印序列號

-d TYPE 指定磁碟的類型。如果沒有指定,smartctl會根據磁碟的名字來

猜測磁碟類型。

-T TYPE 指定當發生錯誤時,smartctl的容忍程度,是否繼續運行。

TYPE可以有4種選擇:

conservative 一有錯就會退出

normal 如果必須支持的SMART命令失敗,則退出

permissive 忽略一次必須支持的SMART命令失敗

verypermissive 忽略所有必須支持的SMART命令失敗

-b TYPE 指定當發生校驗錯誤時,smartctl的動作。

TYPE有3種選擇:

warn 發出警告,繼續執行

exit 退出smartctl

ignore 不發出告警,繼續執行

-r TYPE smartmontools開發人員相關。

-n POWERMODE 指定當磁碟處於節能模式時,smartctl是否繼續檢查,

默認是不檢查。

POWERMODE有4種選擇:

never 檢查

sleep 除了sleep模式,檢查。

standby 除了sleep或standby模式,檢查。

idle 除了sleep或standby或idle模式,見車。

3.1.3 SMART功能開關 參數:

-s on/off 打開或關閉磁碟的SMART功能

-o on/off 打開或關閉SMART自動離線檢測,該功能每4小時就會自動掃描磁碟是

否有缺陷。

-S on/off 打開或關閉「自動保存廠商指定屬性」功能。

3.1.4 SMART 讀和顯示數據 參數

-H 報告磁碟的是否健康。如果報告不健康,則說明磁碟已經損壞或會在24小時

內損壞。

-c 顯示磁碟支持的普通SMART功能,以及這些功能當前的狀態。

-A 顯示磁碟支持的廠商指定SMART特性。這些特性的編號從1-253,並且有指

定的名字。

-l TYPE 指定顯示的log類型。

TYPE有4種選擇:

error 只顯示error log。

selftest 只顯示selftest log

selective 只顯示selective self-test log

directory 只顯示Log Directory

-v N,OPTION 顯示廠商指定SMART特性N時,使用廠商相關的顯示方式。

-F TYPE 設置smartctl的行為,當出現一些已知但還沒有解決的硬體或軟體bug時,

smartctl應該怎麼做。

-P TYPE 設置smartctl是否對磁碟使用資料庫中已有的參數。

3.1.5 SMART 離線測試、自測試 參數

-t TEST 立刻執行測試,可以和-C參數一起使用。

TEST可以有以下幾個選擇:

offline 離線測試。可以在掛載文件系統的磁碟上使用

short 短時間測試。可以在掛載文件系統的磁碟上使用。

long 長時間測試。可以在掛載文件系統的磁碟上使用。

conveyance [ATA only]傳輸zi測試。可以在掛載文件系統的磁碟上使用。

select, N-M

select, N+SIZE [ATA only]有選擇性測試,測試磁碟的部分LBA。N表示

LBA編號,M表示結束LBA編號,SIZE表示測試的LBA

範圍。

-C 在captive模式下運行測試。

注意:(1)-C必須配合-t一起使用,但如果是-t offline,則-C不生效。

(2)-C會使得磁碟很忙,所以最好是在沒有掛載文件系統的磁碟上使用。

-X 中斷no-captive模式下運行的測試。

3.2 常用example

3.2.1 查看當前整體健康狀態

查看/dev/sda當前整體監控狀態。PASSED表示健康,否則意味著磁碟已經故障,或很快就會發生故障。

smartctl -H /dev/sda

3.2.2 查看所有信息

列印/dev/sda所有的SMART信息。

martctl -a /dev/sda

相當於依次執行:

smartctl –i /dev/sda

smartctl -c /dev/sda

smartctl -A /dev/sda

smartctl -l error /dev/sda

smartctl -l selftest /dev/sda

smartctl -l selective /dev/sda

3.2.3 開/關SMART功能

打開或關閉/dev/sda 的SMART功能。

smartctl -s on/off /dev/sda

查看當前SMART功能是否開啟,可以使用 –i 參數。

smartctl -i /dev/sda

3.2.4 離線測試

對/dev/sda進行離線測試,它的結果主要用來更新SMART 屬性。

smartctl -t offline /dev/sda

3.2.5 短時間測試

相關焦點

  • Linux下常用的研發工具和環境
    四、原始碼分析/查看/瀏覽工具:在當前的Linux環境中,最常用的兩種源碼分析工具為KScope和Source Navigator。其中Source Navigator功能最強,在代碼導航方面甚至超過了Windows最著名的Source Insight,但由於長久沒人維護的原因,常常無法再教訓的Linux發行版上安裝。
  • Linux下內存洩漏工具
    常發性和偶發性是相對的。對於特定的環境,偶發性的也許就變成了常發性的。所以測試環境和測試方法對檢測內存洩漏至關重要。  3. 一次性內存洩漏。發生內存洩漏的代碼只會被執行一次,或者由於算法上的缺陷,導致總會有一塊且僅一塊內存發生洩漏。比如,在一個Singleton類的構造函數中分配內存,在析構函數中卻沒有釋放該內存。而Singleton類只存在一個實例,所以內存洩漏只會發生一次。
  • 國產linux發行版本——deepin作業系統安裝方法
    大家好,歡迎回到萬魔寺,前兩期,和大家一起學習了ubuntu系統的安裝,今天我們一起來學習一下國產linux作業系統deepin的安裝方法。deepin系統是由武漢深之度科技有限公司開發,在網絡上口碑比較好的一款linux國產發行版。
  • Linux系統監控工具atop
    系統監控是運維工作中重要的一環,本文以 atop 工具為例來介紹系統的重要監控項。atop可以使用yum或apt包管理器進行安裝。atop man page 中詳細說明了 atop 中各監控項含義及atop命令用法。
  • 「Eleght科技」Kail Linux中ARP偵查工具Netdiscover使用詳細解說
    Netdiscover是一個主動/被動的 ARP偵查工具。該工具在不使用 DHCP的無線網絡上非常有用。使用 Netdiscover工具可以在網絡上掃描 IP位址,檢查在線主機或搜索為它們發送的 ARP請求。ARP是將IP位址轉化物理地址的網絡協議。
  • 從串口驅動到Linux驅動模型,想轉Linux的必會!
    本文通過對Linux下串口驅動的分析。由最上層的C庫。到作業系統系統調用層的封裝。再到tty子系統的核心。再到一系列線路規程。再到最底層的硬體操作。對Linux中的tty子系統進行簡要的說明。從理論到實踐。以便讀者能對OS原理有更深入的了解和更具體的掌握。在具體分析之前。我們必須對串口。驅動。和Linux作業系統有一定的了解。
  • linux下SCP指令的使用
    通常在Linux下執行遠程拷貝文件使用,他和cp指令類似,只不過cp是本機使用,而SCP則是跨機器使用。SCP傳輸是基於SSH的加密傳輸,也就是說知道ssh的帳密就可以上下載文件了,因此比較安全。SCP常用實例(在linux的centos環境下為例,從192.168.200.10現在一個文件到本地)1、從遠程伺服器下載文件到本地伺服器。scp 用戶名@IP位址:/home/1.txt .
  • linux下安裝虛擬機,完美在linux系統下運行通達信軟體
    現在越來越多的人使用linux系統,現在很多的國產作業系統都是基於linux內核上的。雖說不少的軟體都可以運行在linux的系統上。但是對於股票軟體來說在linux上的使用是一個硬傷。能夠運行在linux下的國內股票軟體少之又少。
  • 世界排名前十的Linux系統:Elementary安裝圖解
    上一篇介紹了 世界排名前十的Linux系統:有最美Linux稱號的Elementary,我們已經大致了解了Elementary,而Elementary是基於Ubuntu的發行版,熟悉Ubuntu的朋友使用起Elementary自然也是得心應手,Elementary的安裝過程也跟Ubuntu差不多
  • 動態磁碟與基本磁碟有什麼區別,如何轉換?
    動態磁碟與基本磁碟有什麼區別,如何轉換呢?很多小夥伴都不知道電腦磁碟還分動態和基本的區別,那麼今天小白系統帶你了解下磁碟的分類以及轉換方法吧。什麼是基本磁碟?我們的電腦硬碟的磁碟類型基本上都是【基本磁碟】,你打開你的Windows電腦,然後右擊此電腦(計算機)管理,選擇磁碟管理,就可以看到磁碟的類型是顯示【基本】。什麼是動態磁碟?【動態磁碟】是從基本磁碟升級得來的硬碟配置類型。
  • 系統U盤製作以及系統修復備份工具集合
    上一篇文章增加說明過系統裝機的一些知識,如UEFI和BIOS的區別,以及GPT和MBR磁碟分區表類型。如果需要了解的請查看這篇文章:細說裝機的武功秘笈,深入剖析(Legacy BIOS和UEFI)今天就希望講一下一些各種系統工具的使用,大概都有這些功能(磁碟鏡像製作,分區,分區表格式化,啟動項,分區管理,備份,啟動項恢復等等)BOOTICEBOOTICE 是一個啟動相關的維護小工具,主要用於安裝、修復、備份和恢復磁碟(鏡像)的 MBR或分區 PBR;編輯 Windows
  • Linux系統的Linux應該怎麼讀?正確讀法在這裡,很多人都讀錯了!
    3、有人綜合網上和linux自己的讀音,概括出幾個自認為最合適也最通用的讀法:/li'n^ks/(「裡那克斯」)或/'li:nэks/(「裡訥克斯」)或/li'nju:ks/(「裡紐克斯」)。4、這幾個應該是誰都聽得懂的。至於哪個比較正宗,當然是linux的原因。但事實上使用linux哪種讀法的人似乎都不在少數。
  • 磁碟陣列是什麼 磁碟陣列詳細介紹【圖文詳解】
    1、外接式磁碟陣列櫃最常被使用大型伺服器上,具可熱交換(Hot Swap)的特性,不過這類產品的價格都很貴。  2、內接式磁碟陣列卡,因為價格便宜,但需要較高的安裝技術,適合技術人員使用操作。硬體陣列能夠提供在線擴容、動態修改陣列級別、自動數據恢復、驅動器漫遊、超高速緩衝等功能。它能提供性能、數據保護、可靠性、可用性和可管理性的解決方案。
  • 嵌入式Linux開發環境的搭建之:嵌入式開發環境的搭建
    其中,binutils主要用於生成一些輔助工具,如objdump、as、ld等;gcc是用來生成交叉編譯器的,主要生成arm-linux-gcc交叉編譯工具(應該說,生成此工具後已經搭建起了交叉編譯環境,可以編譯Linux內核了,但由於沒有提供標準用戶函數庫,用戶程序還無法編譯);glibc主要是提供用戶程序所使用的一些基本的函數庫。這樣,交叉編譯環境就完全搭建起來了。
  • incaseformat蠕蟲病毒爆發 深信服免費提供查殺工具
    該病毒於 1 月 13 日集中爆發是由於病毒代碼中內置了部分特殊日期,在匹配到對應日期後會觸發蠕蟲的刪除文件功能,爆發該蠕蟲事件的用戶感染時間應該早於 1 月 13 號,根據分析推測,下次觸發刪除文件行為的時間約為 2021 年 1 月 23 日和 2 月 4 日。為此深信服免費提供了查殺工具incaseformat病毒幫助廣大用戶檢測查殺incaseformat。
  • incaseformat蠕蟲病毒爆發,深信服免費提供查殺工具
    該病毒於1月13日集中爆發是由於病毒代碼中內置了部分特殊日期,在匹配到對應日期後會觸發蠕蟲的刪除文件功能,爆發該蠕蟲事件的用戶感染時間應該早於1月13號,根據分析推測,下次觸發刪除文件行為的時間約為2021年1月23日和2月4日。為此深信服免費提供了查殺工具incaseformat病毒幫助廣大用戶檢測查殺incaseformat。
  • Solaris與Windows/Linux的簡單區別
    其他的硬體改進,包括開發OpenBoot監視器和集成的電源管理,其能力遠遠超過PC機的 BIOS。另外,Solaris的早期版本引入了對於對稱多處理機的支持,並且實現了網絡文件系統,以及基於X11圖形系統的OpenWindows圖形用戶環境。後來,Solaris通過遵循相關的標準,以及改善NFS性能,開發高可用性和集群解決方案,並提供增強的卷管理,從而站在UNIX業界趨勢的前列。
  • 盤點嵌入式開發工具,或許能用上!
    嵌入式開發就是指在嵌入式作業系統下進行開發,一般常用的系統有μcos,vxworks,linux,android等。當然,對於嵌入式或單片機工程師的利器就是C語言、C++或彙編語言。那麼有哪些好工具可以讓工作事半功倍呢?