Cài đặt và test trên Ubuntu
Việc cài đặt smartctl trên Ubuntu hầu hết giống như trên AlmaLinux. Các chi tiết bắt đầu hơi khác một chút.
Cập nhật gói hệ thống
Trước khi đưa bất kỳ phần mềm mới nào vào hệ thống của bạn, bạn nên cập nhật danh sách gói của hệ thống. Chạy lệnh cập nhật apt-get sau để làm như vậy:
Trước khi đưa bất kỳ phần mềm mới nào vào hệ thống của bạn, bạn nên cập nhật danh sách gói của hệ thống. Chạy lệnh cập nhật apt-get sau để làm như vậy:
sudo apt update
Và cài đặt smartmontools:
sudo apt install smartmontools
Phần còn lại của quy trình kích hoạt smartctl và các lệnh của người dùng cũng giống như trên AlmaLinux.
Xác minh smartctl đã được cài đặt
Sau khi cài đặt hoàn tất, bạn có thể xác minh xem smartctl đã được cài đặt thành công hay chưa bằng cách chạy lệnh sau:
smartctl --version
Bây giờ, smartctl sẽ được cài đặt. Tiếp theo, chúng ta hãy xem qua một số ví dụ sử dụng cơ bản trong đó Smartctl có ích.
Công cụ smartctl được thiết kế để thực hiện các tác vụ SMART. Bạn có thể sử dụng nó để in nhật ký lỗi và tự kiểm tra SMART, bật và tắt kiểm tra tự động SMART cũng như bắt đầu tự kiểm tra thiết bị. Để sử dụng smartctl, trước tiên bạn cần mở một thiết bị đầu cuối.
Cú pháp chung cho lệnh smartctl như sau:
sudo smartctl [options] device
Ở đây, các tùy chọn đề cập đến các lệnh và tham số khác nhau mà bạn có thể chuyển tới smartctl và thiết bị đề cập đến ổ cứng hoặc SSD mà bạn muốn kiểm tra. Dưới đây là một số tùy chọn chính bạn có thể sử dụng:
Short Option | Long Option | Description |
-i | –info | Tùy chọn này hiển thị thông tin ổ cứng. |
-t | –test | Tùy chọn này chạy tự kiểm tra trên ổ cứng. |
-x | –xall | Tùy chọn này hiển thị thông tin SMART toàn diện mở rộng. |
-a | –-all | Tùy chọn này hiển thị tất cả thông tin SMART cho ổ cứng. |
-H | –health | Tùy chọn này tóm tắt tình trạng của ổ cứng. |
Ví dụ: nếu bạn muốn hiển thị tất cả thông tin SMART cho ổ đĩa /dev/sda, bạn sẽ sử dụng lệnh sau:
sudo smartctl -a /dev/sda
Hãy nhớ thay thế dev/sda bằng đường dẫn của thiết bị của bạn. Nếu bạn không chắc chắn đường dẫn của thiết bị là gì, bạn có thể sử dụng lệnh df -h và lsblk
III. Nội dung chính
Dưới đây là một ví dụ output từ smartctl của một ổ cứng – có tên là sda
, sẽ gồm các cột như sau.
root@sv01:~# smartctl -A /dev/sda
SMART Attributes Data Structure revision number: 1
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
5 Reallocated_Sector_Ct 0x0033 100 100 010 Pre-fail Always - 0
9 Power_On_Hours 0x0032 093 093 000 Old_age Always - 31950
12 Power_Cycle_Count 0x0032 099 099 000 Old_age Always - 56
177 Wear_Leveling_Count 0x0013 082 082 000 Pre-fail Always - 263
179 Used_Rsvd_Blk_Cnt_Tot 0x0013 100 100 010 Pre-fail Always - 0
181 Program_Fail_Cnt_Total 0x0032 100 100 010 Old_age Always - 0
182 Erase_Fail_Count_Total 0x0032 100 100 010 Old_age Always - 0
183 Runtime_Bad_Block 0x0013 100 100 010 Pre-fail Always - 0
187 Uncorrectable_Error_Cnt 0x0032 100 100 000 Old_age Always - 0
190 Airflow_Temperature_Cel 0x0032 083 057 000 Old_age Always - 17
195 ECC_Error_Rate 0x001a 200 200 000 Old_age Always - 0
199 CRC_Error_Count 0x003e 099 099 000 Old_age Always - 7
235 POR_Recovery_Count 0x0012 099 099 000 Old_age Always - 43
241 Total_LBAs_Written 0x0032 099 099 000 Old_age Always - 144313306552
- Identifier:
- Mã định danh của tham số, bắt đầu từ 1 đến 250. Các phần mềm đọc SMART như crystaldiskInfo hay smartctl sẽ hiển thị
Attribute_Name
từ mã định danh này
- Mã định danh của tham số, bắt đầu từ 1 đến 250. Các phần mềm đọc SMART như crystaldiskInfo hay smartctl sẽ hiển thị
- Attribute_Name:
- Tên tham số/thuộc tính của bản ghi.
- Thresh:
- Giá trị tối thiểu của tham số mà nhà sản xuất cung cấp
- Nếu
Value
bằng hoặc thấp hơn tham số này, có nghĩa ổ cứng bị lỗi.
- Value:
- Giá trị hiện tại, được tính dựa vào kết quả của Raw Value.
- Giá trị bắt đầu từ 100, 200, hoặc 253 – tùy vào nhà sản xuất. Và sẽ giảm dần theo thời gian.
- Giá trị nên lớn hơn Thresh.
- Giá trị càng cao càng tốt.
- Worst:
- Giá trị thấp nhất hiện tại mà cảm biến/controller ghi lại.
- Giống với Value, giá trị càng cao và lớn hơn Thresh càng tốt.
- Raw Value:
- Giá trị thực tế mà cảm biến ghi lại được, vd:
Power_On_Hours: 31950
ứng với 31950 giờ…
- Giá trị thực tế mà cảm biến ghi lại được, vd:
- Type:
Pre-fail
: Ám chỉ thuộc tính quan trọng, phản ánh trực tiếp sức khỏe ổ cứng. Khi test SMART health, sẽ dựa theo điều kiện: nếu Worst < Threshold, kết quả trả về Fail.Old_age
: các thuộc tính ít quan trọng hơn Pre-fail, thường sẽ chỉ đến các tham số sử dụng theo thời gian, hao mòn cell nhớ, VD:Power_On_Hours
,Total_LBAs_Written
…- Tùy vào nhà sản xuất sẽ quy định kiểu Type cho từng Tham số.
- Updated:
Always
: Liên tục tự động cập nhật giá trịOffline
: Chỉ cập nhật lại tham số trong trường hợp chạy SMART test.
- When_Failed:
-
: Tham số bình thườngFAILING_NOW
: giá trị lỗi (WORST < THRESH)
- Flags: (không quan trọng) Được biểu diễn ở giá trị Hex, có thể xem thêm ý nghĩa của flag với lệnh
smartctl -A /dev/sdX -f brief
IV. Lệnh bổ trợ khác
- Kiểm tra tổng quan sức khỏe
smartctl -H /dev/sda
smartctl 7.2 2020-12-30 r5155 [aarch64-linux-5.15.0-1011-raspi] (local build)
Copyright (C) 2002-20, Bruce Allen, Christian Franke, www.smartmontools.org
=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED
- Liệt kê các lỗi trên mà controller ghi lại, nếu có
smartctl -l error /dev/sda
- Self-test Thông thường, sẽ sử dụng short/long test
smartctl --test=short /dev/sda
Hoặcsmartctl --test=long /dev/sda
- Xem lại danh sách selftest trước đó
smartctl -l selftest /dev/sda