SMART (viết tắt của công nghệ tự giám sát, phân tích và báo cáo) được tìm thấy trong các ổ đĩa cứng hiện đại, và nó cho phép một ổ đĩa phát hiện và báo cáo về các điều kiện khác nhau có thể cho thấy thất bại sắp xảy ra. Smartmontools là một gói phần mềm miễn phí, có sẵn cho nhiều nền tảng, có thể sử dụng các thuộc tính SMART của một ổ đĩa cứng để hỏi về trạng thái của nó. Với smartmontools, một quản trị viên / người dùng có hiểu biết công nghệ sẽ được cảnh báo và chuẩn bị đầy đủ cho một lỗi ổ đĩa cứng và có thể sao lưu trước khi biến tần trở nên quan trọng.

Cài đặt

Trên các hệ thống Debian hoặc Ubuntu, smartmontools có sẵn thông qua các kho lưu trữ mặc định.

 sudo apt-get cài đặt smartmontools 

Trên Fedora:

 sudo yum cài đặt smartmontools 

Cài đặt gói smartmontools cung cấp hai chương trình cho hệ thống của bạn: smartctl, nên được sử dụng tương tác, và smartd, mà, như tên cho thấy, là một chương trình daemon được thiết kế để chạy ẩn.

Smartctl

Smartctl yêu cầu quyền root để chạy và do đó phải được chạy bởi người dùng root hoặc người dùng có quyền sudo. Smartctl giám sát toàn bộ ổ đĩa cứng (không phải phân vùng), do đó khi chạy, nó sẽ được cung cấp ổ cứng yêu cầu làm đối số cuối cùng. Đối với bài viết này, chúng tôi sử dụng "/ dev / sda" làm tệp thiết bị ổ đĩa cứng. Hãy chắc chắn thay thế bằng tệp của ổ đĩa cứng của bạn.

Để nhận thông tin về ổ đĩa, hãy sử dụng tùy chọn -i .

 sudo smartctl -i / dev / sda 

Hình trên cho thấy một số thông tin về ổ đĩa, và chúng ta có thể thấy, từ các dòng được đánh dấu, hỗ trợ SMART có sẵn và được kích hoạt cho biến tần. Xuất sắc. Tuy nhiên, nếu hỗ trợ SMART có sẵn nhưng không được bật, nó có thể được bật bằng lệnh sau:

 sudo smartctl -s trên / dev / sda 

Để kiểm tra tình trạng của thiết bị, hãy sử dụng tùy chọn -H :

 sudo smartctl -H / dev / sda 

Nếu đầu ra cho phần trên không phải là PASSED, ổ đĩa cứng có thể bị lỗi hoặc dự đoán là doom sắp xảy ra. Sao lưu dữ liệu của bạn ngay lập tức.

Để xem các khả năng SMART của biến tần, sử dụng công tắc -c :

 sudo smartctl -c / dev / sda 

Từ ảnh chụp màn hình ở trên, ổ đĩa hỗ trợ tự kiểm tra và thời gian thử nghiệm tự ngắn và mở rộng được ước tính tương ứng là 2 phút và 95 phút. Để chạy thử nghiệm ngắn, hãy sử dụng công tắc -t short và tương ứng, tùy chọn -t long cho phép thử mở rộng (và kỹ lưỡng hơn).

 sudo smartctl -t ngắn / dev / sda 

Thử nghiệm chạy ở chế độ nền, cho phép bạn thực hiện các tác vụ khác trong khi chạy. Để kiểm tra kết quả kiểm tra, hãy chạy lệnh sau:

 sudo smartctl -l selftest / dev / sda 

Điều này cho thấy kết quả của hai mươi lần tự kiểm tra cuối cùng và không đưa ra bất kỳ dấu hiệu nào của một thử nghiệm đang chạy. Chạy thử nghiệm mở rộng.

 sudo smartctl -t long / dev / sda 

Nếu một trong hai thử nghiệm không thành công, hãy sao lưu dữ liệu của bạn ngay lập tức.

Smartd

Trong khi smartctl là một công cụ tuyệt vời, nó cần phải được chạy thường xuyên và thường xuyên. Smartd là một daemon được thiết kế để chạy ẩn và định kỳ yêu cầu chẩn đoán SMART từ các ổ cứng được chọn. Bằng cách này, ngay lập tức khi nhận được lỗi hoặc thử nghiệm không thành công, quản trị viên có thể được thông báo cho hành động thích hợp.

Tập tin cấu hình thường nằm ở “/etc/smartd.conf.” Mở tệp này và kiểm tra dòng bắt đầu bằng “DEVICESCAN” và nhận xét nó bằng cách thêm “#” khi bắt đầu. Sau đó liệt kê rõ ràng các ổ đĩa sẽ được theo dõi bằng cách thêm các mục sau đây cho mọi ổ đĩa:

 / dev / sda -a -o trên -S trên -s (S /../.././ 02 | L /../../ 6/03) -m root -M exec / usr / share / smartmontools / smartd-runner 

Các tùy chọn ở trên cho biết các tình huống sau:

  • /dev/sda : Tệp thiết bị ổ đĩa cứng
  • -a : Điều này cho phép một số tùy chọn phổ biến. Bạn gần như chắc chắn muốn sử dụng nó.
  • -d sat : Trên hệ thống của tôi, smartctl đoán chính xác rằng tôi có một ổ đĩa ATA nối tiếp. smartd mặt khác thì không. Nếu bạn phải thêm tham số -d TYPE vào các lệnh smartctl, bạn gần như chắc chắn sẽ phải làm như vậy ở đây. Nếu bạn không làm, hãy thử để nó ra ban đầu. Bạn có thể thêm nó sau này nếu smartd không khởi động được.
  • -o on : Bật thử nghiệm ngoại tuyến tự động SMART
  • -S on : Bật tự động lưu SMART
  • -s (S/../.././02|L/../../6/03) : Chạy cả hai đoạn ngắn (S /../.././ 02) và dài (L /. ./../6/03) tự kiểm tra vào thời gian đã lên lịch. Mẫu này chỉ ra một bài kiểm tra ngắn lúc 2:00 sáng hàng ngày và một bài kiểm tra dài vào mỗi Thứ Bảy lúc 3:00 sáng
  • -m root : Gửi thư đến địa chỉ được chỉ định (root ở đây). Có thể được phân tách bằng dấu phẩy. Lưu ý rằng điều này yêu cầu một email hoạt động được thiết lập trên hệ thống
  • -M exec /usr/share/smartmontools/smartd-runner : Điều này thay đổi hành vi của cờ -m . Trên các hệ thống Debian và Ubuntu, smartd-runner thực thi các hành động khác ngoài tùy chọn mail (-m).

Để biết thêm thông tin, hãy kiểm tra các trang người dùng smartd.conf.

Sau khi cấu hình smartd, chúng ta phải đảm bảo rằng nó khởi động khi khởi động hệ thống. Để thực hiện việc này, hãy mở tệp cấu hình “/ etc / default / smartmontools” và bỏ ghi chú dòng #start_smartd=yes (xóa #). Sau đó bạn có thể bắt đầu smartd bằng cách chạy:

 sudo /etc/init.d/smartmontools bắt đầu 

Các chẩn đoán sẽ được ghi vào nhật ký hệ thống, nhưng các lỗi sẽ kích hoạt cảnh báo email. Để kiểm tra xem email có hoạt động hay không, hãy thêm kiểm tra -M vào dòng trong “/etc/smartd.conf” và khởi động lại.

 sudo /etc/init.d/smartmontools khởi động lại 

Điều này sẽ gửi thông báo thử nghiệm.

Phần kết luận

Nó là đáng ngạc nhiên khó để ước tính tuổi thọ của ổ đĩa cứng (một bài báo rất tốt có sẵn về điều này). Sử dụng khả năng SMART của ổ cứng của bạn, với smartmontools, có thể cung cấp giờ quan trọng cho việc di chuyển dữ liệu trước khi ổ đĩa gặp phải sự cố thất bại thảm khốc. Trong khi thực sự không có thay thế cho một kế hoạch sao lưu tốt, smartmontools có thể giúp cảnh báo một chủ sở hữu hệ thống / quản trị để có thể thất bại.