DiskScan 是一個Unix/Linux 工具,用於掃描區塊裝置並檢查是否存在不可讀的磁區,此外,它還使用讀取延遲時間來評估接近失敗的情況,因為讀取有問題的磁區通常需要多次重試。這可用於評估磁碟的狀態,並可能在即將發生故障之前決定更換磁碟。磁碟自檢可能會也可能不會發現此類線索,這取決於磁碟供應商的決策邏輯。
badblocks 旨在完成一項簡單的任務,即尋找媒體中的壞區塊。 diskscan 試圖說明有關介質的更多信息,具體來說,它不僅試圖說明壞塊在哪裡,還試圖說明哪些塊已經損壞但仍然可讀,並且還提供有關讀取每個塊的延遲的信息,這應該有助於對磁碟媒體進行總體評估。
從本質上講,壞區塊會尋找已經發生的致命問題,而磁碟掃描則用於查找即將出現的可以修復的問題。
此外,壞塊在當今時代基本上已經過時了,因為磁碟本身會重新分配數據,並且不再需要在檔案系統層級映射壞塊。
該工具主要針對透過核心的 SCSI 介面工作的 SAS/SATA 磁碟機。
目前無法使用此工具掃描 SD 卡和 NVMe 裝置。
這個專案使用 CMake,在 Debian/Ubuntu 上非常簡單: apt-get install cmake make libtinfo-dev libncurses5-dev zlib1g-dev python-yaml
對於基於 RedHat/SuSe 的發行版,您需要先安裝 ninja-build,然後: yum install compat-libtermcap libtermcap-devel cmake python-yaml zlib-devel
提供 Makefile 以避免學習 ninja 命令並執行非建置操作(安裝等)
進行建構:
cmake . && make
進行安裝
如果 /usr 不正確,您可以在建置套件時控制 DESTDIR 和 PREFIX。
diskscan 根據 GPL 版本 3 或更高版本授權。