2012-01-17 37 views
5

Tôi cần viết kịch bản để kiểm tra đĩa mỗi phút và báo cáo nếu nó không thành công do bất kỳ lý do gì. Lỗi có thể là lỗi đĩa tuyệt đối và một khu vực xấu và như vậy.Lỗi phát hiện lỗi perl script

Đầu tiên, tôi tự hỏi liệu có bất kỳ tập lệnh nào ở đó không giống như một quy trình chuẩn (vì tôi thực sự không muốn phát minh lại bánh xe).

Thứ hai, tôi tự hỏi nếu tôi muốn tìm lỗi trong/var/log/messages, có danh sách chuỗi lỗi chuẩn nào cho đĩa mà tôi có thể sử dụng không?

Tôi tìm kiếm điều đó trên mạng rất nhiều, có rất nhiều thông tin và đồng thời không có thông tin về điều đó.

Mọi trợ giúp sẽ được đánh giá cao.

Cảm ơn,

+3

Các ổ đĩa có hỗ trợ SMART không? Nếu vậy, bạn có quyền truy cập vào tiện ích 'smartctl' không? Nếu vậy, hãy nhớ rằng bạn có thể đã cài đặt smartmontools, trong đó * bao gồm một daemon để làm chính xác những gì bạn đang cố gắng làm *. – Charles

+0

KHÔNG may là không! – Amir

Trả lời

4

Bạn chỉ có thể phân tích đầu ra của dmesg mà thường báo cáo thông tin khá chi tiết về lỗi ổ đĩa, cũng đó là cách tôi đã thu thập số liệu thống kê trên ổ đĩa thất bại trước đó.

Bạn có thể nhận được thông tin tốt hơn về tài liệu bằng cách sử dụng trực tiếp báo cáo hạt nhân cấp thấp hơn Parse::Syslog hoặc cấp thấp hơn.

+0

dmesg cung cấp cho tôi thông tin khởi động. Máy chủ của tôi không khởi động thường xuyên. – Amir

+0

dmesg cũng báo cáo lỗi trình điều khiển hạt nhân, không chỉ trình tự khởi động hạt nhân. Tôi đã nhận ra rằng đầu ra dmesg gần như không được chuẩn hóa như đầu ra syslog, vì vậy có thể bạn muốn rằng nếu bạn không biết các lỗi trông như thế nào. Tôi đã sử dụng dmesg khi tôi nhận được lỗi ổ đĩa và muốn biết chi tiết mroe. –

+0

Bạn có biết bất kỳ chữ ký (hoặc danh sách chữ ký nào) trong syslog hay không, bằng cách nào bạn có thể nói rằng một số lỗi/lỗi đĩa đang xảy ra? – Amir

2

Logwatch thực hiện phần/var/log/messages của thử thách (cũng như bất kỳ tệp nhật ký nào khác mà bạn chọn thêm). Bạn có thể chọn sử dụng nó, hoặc sử dụng mã của nó để cuộn sollution của riêng bạn (tất cả được viết bằng perl).

Nếu ổ cứng của bạn hỗ trợ SMART, tôi khuyên bạn nên sử dụng đầu ra smartctl cho chẩn đoán vì nó bao gồm nhiều thông tin tốt đẹp có thể được theo dõi theo thời gian để phát hiện lỗi.

+0

+1 Tìm tốt với 'smartctl'! BSD tệ quá thiếu. –

Các vấn đề liên quan