SMART ổ cứng: Giám sát sức khỏe HDD/SSD, dự báo hỏng hóc trước khi mất dữ liệu

Ổ cứng là linh kiện lưu trữ quan trọng nhất trên máy tính. Hầu hết người dùng chỉ chú ý dung lượng và tốc độ, bỏ qua công nghệ giám sát sức khỏe tự động tích hợp sẵn. Bài viết này giải thích SMART monitoring, các chỉ số cần theo dõi, và cách dự báo hỏng hóc trước khi mất dữ liệu.

SMART là gì? Công nghệ giám sát ổ cứng

SMART (Self-Monitoring, Analysis and Reporting Technology) là chuẩn giám sát tích hợp trong tất cả ổ cứng HDD và SSD hiện đại. Nó thu thập dữ liệu vận hành từ cảm biến nhiệt, độ rung, thời gian bật, số sector lỗi, v.v., giúp dự báo hỏng hóc trước khi xảy ra.

Công cụ phổ biến để đọc SMART data:

  • Linux/macOS: smartctl từ gói smartmontools
  • Windows: CrystalDiskInfo, Hard Disk Sentinel
  • Cross-platform: GSmartControl

Hard drive bottom view showing SATA and power connectors

Các chỉ số SMART quan trọng nhất

Chỉ số Mô tả Ngưỡng cảnh báo
05 – Reallocated Sectors Count Số sector đã được chuyển sang vùng dự phòng do lỗi > 0 (đã có lỗi vật lý)
09 – Power-On Hours Tổng thời gian ổ cứng đã hoạt động HDD: > 20.000h; SSD: > 40.000h
0C – Power Cycle Count Số lần bật/tắt ổ cứng > 50.000 lần (tuổi thọ cao)
C2 – Temperature Nhiệt độ hiện tại (Celsius) > 60°C (nguy hiểm); 40-55°C (tối ưu)
C5 – Current Pending Sector Sector đang bị lỗi, chờ đợi ghi lại > 0 (cần sao lưu ngay)
C6 – Uncorrectable Sector Errors Sector không thể sửa chữa > 0 (mất dữ liệu đã xảy ra)
E8 – Available Reserved Space (SSD) Vùng dự phòng còn lại cho SSD < 10% (cần chuẩn bị thay thế)
EB – Transfer Error Rate (SSD) Tỷ lệ lỗi truyền dữ liệu NAND > 100 (kiểm tra cáp/ổ cứng)

Phần 1: Kiểm tra SMART với smartctl

Cài đặt

# Debian/Ubuntu
sudo apt-get install smartmontools

# macOS
brew install smartmontools

# Windows: tải exe từ smartmontools.org

Quét nhanh tất cả ổ cứng

sudo smartctl --scan
/dev/sda -d scsi # /dev/sda, SCSI, disk
/dev/sdb -d scsi # /dev/sdb, SCSI, disk

Kiểm tra tổng quan sức khỏe

sudo smartctl -H /dev/sda

smartctl 7.4 2023-04-06 r5111
=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

Xem tất cả chỉ số chi tiết

sudo smartctl -A /dev/sda

ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  5 Reallocated_Sector_Ct   0x0033   100   100   010    Pre-fail  Always       -       2
  9 Power_On_Hours          0x0032   099   099   000    Old_age   Always       -       15342
 12 Power_Cycle_Count       0x0032   099   099   000    Old_age   Always       -       45
194 Temperature_Celsius     0x0022   042   040   000    Old_age   Always       -       42 (Lifetime Min/Max 15/58)
197 Current_Pending_Sector  0x0012   100   100   000    Old_age   Always       -       0
198 Offline_Uncorrectable   0x0010   100   100   000    Old_age   Offline      -       0

Chạy test SMART

# Test nhanh (2 phút)
sudo smartctl -t short /dev/sda

# Test chi tiết (tens of minutes)
sudo smartctl -t long /dev/sda

# Xem kết quả
sudo smartctl -l selftest /dev/sda

Phần 2: Tự động giám sát với cron

Tạo script kiểm tra hàng ngày, gửi cảnh báo qua email:

#!/bin/bash
# /usr/local/bin/check-smart.sh
DISKS="/dev/sda /dev/sdb"
THRESHOLD_TEMP=55
THRESHOLD_REALLOC=5

for disk in $DISKS; do
    # Kiểm tra nhiệt độ
    temp=$(sudo smartctl -A $disk | awk '/Temperature_Celsius/{print $10}')
    if [ "$temp" -gt "$THRESHOLD_TEMP" ]; then
        echo "WARNING: $disk temperature $temp°C" | mail -s "Disk Heat Alert" [email protected]
    fi

    # Kiểm tra sector lỗi
    realloc=$(sudo smartctl -A $disk | awk '/Reallocated_Sector_Ct/{print $10}')
    if [ "$realloc" -gt "$THRESHOLD_REALLOC" ]; then
        echo "WARNING: $disk reallocated sectors: $realloc" | mail -s "Disk Error Alert" [email protected]
    fi
done
# Thêm cron chạy mỗi ngày 8h sáng
0 8 * * * root /usr/local/bin/check-smart.sh

Phần 3: So sánh HDD vs SSD theo chỉ số SMART

HDD (magnetic disk)

  • Tuổi thọ trung bình: 3-5 năm
  • Hư hỏng chủ yếu do: va đập, từ trường, mài mòn cơ học
  • Chỉ số quan trọng: Reallocated_Sector_Ct, Power_On_Hours, Seek_Error_Rate
  • Dấu hiệu báo trước: tiếng lạ (click of death), tốc độ giảm, file lỗi ngẫu nhiên

SSD (NAND flash)

  • Tuổi thọ trung bình: 5-10 năm (TBW: 150-600 TB tùy loại)
  • Hư hỏng chủ yếu do: hết số lần ghi (P/E cycle), lỗi controller, mất dữ liệu khi không dùng lâu
  • Chỉ số quan trọng: Available_Reserved_Space, Transfer_Error_Rate, Percentage_Used
  • Dấu hiệu báo trước: chậm đột ngột, read-only mode, khởi động lại liên tục

Internal components of hard disk drive showing platters and actuator arm

Phần 4: Khi nào cần thay thế ổ cứng

Dấu hiệu chắc chắn thay thế

  • Reallocated_Sector_Ct tăng liên tục (> 100)
  • Current_Pending_Sector > 50 hoặc tăng sau mỗi lần kiểm tra
  • Uncorrectable_Error_Count > 0
  • Self-test báo FAILED hoặc nhiều lỗi read failure
  • SSD Percentage_Used > 90%

Quy trình sao lưu khẩn cấp

# Sao lưu toàn bộ ổ cứng bằng ddrescue (tốt hơn dd cho ổ lỗi)
sudo apt-get install gddrescue
sudo ddrescue -f -n /dev/sda /path/to/backup.img /path/to/rescue.log

# Hoặc clone với Clonezilla
# Hoặc dùng fsarchiver để lưu từng partition

Phần 5: Chọn ổ cứng mới

Tiêu chí chọn SSD

  • Interface: NVMe PCIe 4.0/5.0 (7.000-14.000 MB/s) hoặc SATA III (550 MB/s ceiling)
  • NAND type: TLC (3-bit) cân bằng tốt nhất; QLC rẻ hơn nhưng P/E cycle ít hơn
  • TBW: Xem thông số tổng TBW trên datasheet, ví dụ: 1TB Samsung 970 EVO Plus có TBW 600 TB
  • DRAM cache: SSD cao cấp có RAM riêng giảm latency (ví dụ: Samsung 990 Pro có 1-8GB LPDDR4)
  • Controller: Phineas, E21, MPeller đều là controller phổ biến, đều ổn

Tiêu chí chọn HDD

  • RPM: 5.400 RPM (tiết kiệm) hoặc 7.200 RPM (hiệu năng) – 10.000/15.000 RPM dành cho server
  • CMR vs SMR: CMR (conventional) ghi đồng bộ, tốt hơn SMR (shingled) cho NAS và backup
  • Cache: 64MB-256MB đủ dùng, không cần quá lớn
  • MTBF: 1-1.5 triệu giờ (trung bình)

Kết luận

SMART monitoring là công cụ phòng ngừa rủi ro mất dữ liệu hiệu quả, miễn phí, dễ sử dụng. Cài đặt smartmontools, định kỳ chạy smartctl -t long, theo dõi các chỉ số 05, 09, C5, C6, E8. Khi bất kỳ chỉ số vượt ngưỡng → sao lưu ngay và lên kế hoạch thay thế.

Tham khảo thêm:

Tôi là một lập trình viên IOS. Code chính là IOS nhưng thỉnnh thoảng vẫn đá sang Android hoặc web. Mặc dù không quá thông thạo nhưng tôi sẽ chia sẻ những kiến thức mà mình đã tìm hiểu, áp dụng qua.

Bài viết liên quan

Pin thể rắn: Công nghệ pin tăng dung lượng, an toàn cho xe điện

Pin thể rắn là công nghệ pin thế hệ mới, thay thế chất điện phân lỏng bằng chất rắn. Đột phá này hứa hẹn tăng mật độ năng lượng, cải…

Xem thêm

Tailwind CSS v4: CSS-First Config, Engine Oxide Và Tốc Độ Build Nhanh Hơn 3 Lần

Tailwind CSS v4: CSS-First Config, Engine Oxide Và Tốc Độ Build Nhanh Hơn 3 Lần Tailwind CSS v4 ra mắt stable tháng 1/2025, đánh dấu bước chuyển lớn nhất trong…

Xem thêm

Màn Hình Kính Gập Siêu Mỏng: Tương Lai Thiết Bị Di Động

Màn Hình Kính Gập Siêu Mỏng: Cuộc Cách Mạng Thiết Bị Di Động Màn hình kính gập siêu mỏng (UTG – Ultra Thin Glass) là công nghệ màn hình đang…

Xem thêm
0 0 đánh giá
Article Rating
Theo dõi
Thông báo của
guest
0 Comments
Cũ nhất
Mới nhất Được bỏ phiếu nhiều nhất