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

auto_blog_image

eSIM iPhone: Hướng dẫn chuyển đổi không cần SIM vật lý

Tại sao nên chuyển sang eSIM? eSIM (embedded SIM) đang thay thế nhanh chóng SIM vật lý trên iPhone từ iPhone XS trở đi. Không còn cần cắm thẻ nhỏ,…

Xem thêm
Threadripper PRO 7995WX workstation product photo

AMD Threadripper PRO 9000: CPU 96 nhân Zen 4 cho workstation cực hạn

AMD Threadripper PRO 9000 là gì? AMD Threadripper PRO 9000 là dòng CPU workstation cao cấp dành cho nhà sáng tạo nội dung, kỹ sư CAE/EDA, và nhà khoa học…

Xem thêm

MicroLED vs OLED vs MiniLED: Công nghệ màn hình thế hệ sau cho laptop, TV và AR

Cuộc đua màn hình hiện đại đã bước sang thế hệ mới: MicroLED là công nghệ “dream come true” cho display – kết hợp độ sáng OLED (tự phát sáng),…

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