Contents

Hết dung lượng đĩa trên Linux? Kiểm tra nhật ký của bạn!

Đường dẫn nhanh

⭐Tại sao nhật ký lại chiếm nhiều dung lượng đĩa như vậy?

⭐Tìm nhật ký của bạn

⭐Cách Linux xoay tệp nhật ký

⭐Nhật ký nào có thể xóa an toàn?

⭐Cách khắc phục nội dung đang làm đầy nhật ký của bạn

Bài học chính

Hệ điều hành Linux được biết là tạo ra lượng dữ liệu nhật ký đáng kể, có thể tiêu tốn dung lượng lưu trữ đáng kể trên ổ cứng hoặc ổ cứng thể rắn.

Cơ chế hệ thống của bạn thường sử dụng phương pháp nén nhật ký đã lưu trữ để duy trì dung lượng lưu trữ trên thiết bị của bạn.

Việc sử dụng lệnh tạp chí hoặc tail-f cho phép người ta xem xét các mục nhật ký và xác định các quy trình có khả năng gây rối, cho phép khắc phục sự cố và giải quyết vấn đề hiệu quả.

Bất chấp nhận thức về hệ thống Linux là gọn gàng và hiệu quả, người dùng đôi khi có thể gặp phải trường hợp dung lượng lưu trữ sẵn có bị cạn kiệt với tốc độ không mong muốn. Điều cần thiết là xác định nguyên nhân gốc rễ của những sự cố như vậy bằng cách kiểm tra tệp nhật ký của hệ thống. Những hồ sơ này có thể cung cấp những hiểu biết có giá trị về các nguyên nhân tiềm ẩn và đưa ra hướng dẫn về cách giải quyết chúng một cách hiệu quả.

Tại sao nhật ký lại chiếm nhiều dung lượng đĩa như vậy?

Các tệp nhật ký đóng một vai trò quan trọng trong việc duy trì hệ thống Linux bằng cách cung cấp thông tin chuyên sâu về hoạt động của hệ thống và cho phép khắc phục sự cố cho mọi sự cố gặp phải. Tương tự như Trình xem sự kiện trên Windows, trình nền ghi nhật ký Linux cung cấp phương tiện để giám sát các hoạt động của hệ thống và chẩn đoán sự cố. Điều đáng lưu ý là các tệp nhật ký thường không tiêu tốn nhiều dung lượng lưu trữ vì hầu hết các bản phân phối đều có sẵn cơ chế để điều chỉnh việc sử dụng đĩa của chúng.

Trước đây, các tệp nhật ký Linux thường bao gồm dữ liệu văn bản thuần túy. Tuy nhiên, do ngày càng nhiều bản phân phối nổi bật chuyển sang sử dụng systemd để quản lý hệ điều hành của họ, các tệp nhật ký này hiện tồn tại ở dạng nhị phân và được giám sát bởi tạp chí, bản thân nó là một dịch vụ systemd. Tùy thuộc vào bản phân phối cụ thể đang được sử dụng, rsyslog hoặc syslog-ng có thể được sử dụng làm phương pháp thay thế để xử lý dữ liệu nhật ký đó.

Để bảo tồn dung lượng lưu trữ trên ổ cứng của máy tính, thông thường các hệ thống phải lưu trữ định kỳ và xóa các tệp nhật ký lỗi thời không còn thích hợp hoặc cần thiết. Quá trình này bao gồm việc nén và xóa dữ liệu cũ hơn để nhường chỗ cho những thông tin mới hơn có thể có tầm quan trọng lớn hơn.

Người ta thường cho rằng các tệp nhật ký không chiếm dung lượng lưu trữ đáng kể; tuy nhiên, một hoạt động bất thường có thể tạo ra các mục nhật ký với tốc độ vượt quá khả năng xoay vòng và quản lý chúng một cách hiệu quả của hệ thống.

Nếu bạn phát hiện ra rằng dung lượng ổ đĩa sẵn có của mình đã giảm đột ngột và bạn không thể xác định bất kỳ tệp tải xuống đáng kể nào gần đây là nguồn gốc của sự cố này, thì có thể nguyên nhân là do việc tích lũy dữ liệu trong nhật ký hệ thống Linux của bạn. Để giải quyết tình trạng khó khăn này, bạn sẽ cần xác định nội dung cụ thể của nhật ký hệ thống đang tiêu tốn dung lượng lưu trữ có giá trị và thực hiện các biện pháp khắc phục cần thiết.

Lệnh du, khi được gọi bằng tùy chọn -h , là một phương tiện hiệu quả để xác định dung lượng ổ đĩa hiện đang được sử dụng bởi các tệp và thư mục trong một thư mục được chỉ định hoặc trên nhiều thư mục trên hệ thống của bạn.

 du -h /var/log 

Bạn sẽ được cung cấp bảng liệt kê tất cả các thư mục con, kèm theo dung lượng lưu trữ tích lũy của chúng:

/vi/images/du-h-var-log.png

Tìm nhật ký của bạn

Việc sử dụng bản phân phối Linux hiện đại sử dụng systemd cần có tiện ích JournalTL (tạp chí) để kiểm tra dữ liệu nhật ký. Vị trí lưu trữ của các nhật ký này tùy thuộc vào biến thể hệ điều hành cụ thể và có thể được tìm thấy trong thư mục’/var/log/journal’hoặc thư mục’/run/log/journal’, cả hai đều thường nằm trong thư mục khối lượng hệ thống tập tin gốc.

/vi/images/journalctl-logs.png

Để truy cập các tệp nhật ký bằng thiết bị đầu cuối, hãy nhập “journald” vào dấu nhắc lệnh. Ngoài ra, có một số lựa chọn thay thế dòng lệnh thuận tiện có sẵn cho các mục đích cụ thể. Ví dụ: để xem lại các thông báo khởi động, hãy sử dụng tùy chọn “-b”:

 journalctl -b 

Việc sử dụng cờ -f cho phép người dùng xem qua các tin nhắn đã ghi trong hệ thống của họ một cách trực tiếp, cập nhật.

Nếu hệ điều hành của bạn sử dụng cơ chế khởi tạo khác với systemd, các tệp nhật ký sẽ nằm trong thư mục/var/log. Ngược lại, ngay cả khi systemd được sử dụng, một số ứng dụng nhất định có thể tiếp tục giữ lại dữ liệu nhật ký của chúng trong thư mục này. Các tệp nhật ký là các tài liệu văn bản không được trang trí và có thể được đọc bằng công cụ phân trang thông thường, chẳng hạn như “less”.

Ví dụ: để đọc nhật ký hệ thống:

 less /var/log/syslog

Thông tin đầy đủ trong tệp nhật ký, bao gồm nhiều dòng có khả năng lên tới hàng nghìn, sẽ được hiển thị để bạn xem xét.

/vi/images/journactl-f.png

Người ta cũng có thể quan sát trực tiếp tiến trình của nó thông qua việc sử dụng công cụ sửa đổi “-f” của lệnh tail, bằng cách thực thi lệnh thích hợp trên terminal hoặc dấu nhắc lệnh.

 tail -f /var/log/syslog

Cách Linux xoay tệp nhật ký

/vi/images/logrotate-service.png

Sự hiện diện của các tệp trong thư mục/var/log mang nhãn kết thúc bằng “log.N.gz”, trong đó N đại diện cho một giá trị số học, biểu thị hoạt động của cơ chế lưu trữ các bản ghi lỗi thời của hệ thống. Thông thường, hầu hết các hệ điều hành đều tích hợp một ứng dụng phần mềm được gọi là “logrotate” để thực hiện chức năng này một cách tự động. Logrotate có thể được cấu hình để thực thi dưới dạng tác vụ theo lịch trình được khởi tạo bởi cron daemon hoặc được kích hoạt bằng bộ đếm thời gian systemd.

Logrotate thường được kích hoạt hàng ngày trong hầu hết các bản phân phối, với chức năng chính là nén các tệp nhật ký được lưu trữ thông qua việc sử dụng công nghệ gzip, có thể được xác định bằng sự hiện diện của phần mở rộng tệp “.gz” được thêm vào các tệp nén. Logrotate sử dụng các ngưỡng cụ thể như độ tuổi hoặc kích thước tệp để xác định thời điểm xảy ra quá trình nén, đồng thời triển khai một ngưỡng bổ sung để xóa các tệp nhật ký lỗi thời khỏi hệ thống.

Cài đặt tiêu chuẩn của logrotate sẽ đủ cho phần lớn người dùng máy tính để bàn. Tuy nhiên, những người muốn điều chỉnh chức năng của nó có thể làm như vậy thông qua việc thay đổi tệp cấu hình có tại /etc/logrotate.conf trong khả năng giám sát. Ngoài ra, người ta phải xem xét sửa đổi cấu hình lập lịch cron hoặc cấu hình bộ hẹn giờ systemd của hệ thống, thường nằm trong tầm ngắm của quản trị viên máy chủ.

Tốt hơn hết bạn nên sửa những gì đang lấp đầy nhật ký của mình hơn là chỉnh sửa các tệp cấu hình để tiết kiệm dung lượng ổ đĩa. Nếu nhất thiết phải thay đổi cấu hình, bạn có thể đọc trang hướng dẫn logrotate.

Nhật ký nào có thể xóa an toàn?

/vi/images/var-log.png

Trong trường hợp bắt buộc phải truy xuất bộ nhớ bổ sung và các quy trình tiêu chuẩn đã hết, người ta có thể xem xét xóa các tệp nhật ký được nén bằng gzip, được biểu thị bằng phần mở rộng tệp “.gz”. Tuy nhiên, do những tài liệu này liên quan đến hoạt động của hệ thống nên chúng phải được loại bỏ dưới sự cho phép của người dùng đặc quyền. Lệnh “rm” có thể được sử dụng cho mục đích này, yêu cầu quyền quản trị để thực thi hiệu quả.

 sudo rm /var/syslog/syslog.*gz 

Hướng dẫn này sẽ loại bỏ tất cả các tệp có “syslog” trong tên và kết thúc bằng “.gz”.

Khi sử dụng lệnh sudo để thực hiện các hoạt động có thể gây hại hoặc phá hoại chẳng hạn như xóa các tệp bằng rm , điều quan trọng nhất là phải hết sức thận trọng và siêng năng để tránh mọi hậu quả ngoài ý muốn có thể xảy ra do sử dụng không đúng cách.

Nói chung, không nên xóa tệp khỏi thư mục hệ thống khi chưa hiểu rõ các hậu quả tiềm ẩn, nhưng việc xóa tệp nhật ký đã lưu trữ sẽ không gây ra bất kỳ vấn đề nào miễn là chúng không có. Tuy nhiên, nếu có vấn đề phát sinh, việc truy xuất thông tin từ các bản ghi nhật ký trước đó có thể cần thiết cho mục đích khắc phục sự cố.

Cách khắc phục nội dung đang làm đầy nhật ký của bạn

Một phương pháp hiệu quả để xác định nội dung của tệp nhật ký là sử dụng lệnh tạp chí hoặc tail-f, đặc biệt tập trung vào bất kỳ thông báo lỗi định kỳ nào có thể xuất hiện trong chúng.

Để giảm bớt vấn đề không đủ dung lượng ổ đĩa, cần xác định và chấm dứt quá trình sai sót gây ra việc tiêu tốn dung lượng lưu trữ. Trong trường hợp nguồn gốc của sự cố vẫn chưa rõ ràng, việc tham khảo các tài nguyên trực tuyến hoặc tìm kiếm trợ giúp từ các kênh hỗ trợ của hệ điều hành của bạn có thể hữu ích. Khi nguyên nhân cốt lõi đã được giải quyết, việc loại bỏ các tệp nhật ký lỗi thời sẽ giải phóng thêm dung lượng lưu trữ mà không gặp rủi ro. Với cách khắc phục này, người dùng sẽ thấy dung lượng đĩa trống tăng lên đáng kể.