Một ngày đẹp trời rà soát máy chủ, hệ điều hành ubuntu 20 và thấy thư mục /var/log/journal/ to tổ chảng
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
root@mefin-ntl-rke-03:/var/log/journal/c27b494019ba448580a9cc1dce75e9c6# ll -h total 4.1G drwxr-sr-x+ 2 root systemd-journal 4.0K Apr 19 09:04 ./ drwxr-sr-x+ 3 root systemd-journal 4.0K Dec 25 03:57 ../ -rw-r-----+ 1 root systemd-journal 32M Apr 19 20:13 system.journal root@mefin-ntl-rke-03:/var/log/journal/c27b494019ba448580a9cc1dce75e9c6# |
Những log này do systemd sinh ra, có thể được đọc bởi journalctl, Mỗi khi có sự kiện gì xảy ra, systemd sẽ ghi lại nhật ký vào đây, phòng khi thằng quản trị rảnh háng muốn tìm hiểu. Tuy nhiên, mọi tiện ích đều phải trả giá, cái giá phải trả cho việc này là tốn ổ cứng vcl. Không phải máy chủ nào cũng rảnh rang vài trăm GB hay vài TB để thoải mái lưu trữ bất cứ thứ gì mình thích, lúc này, mấy thằng SA nghèo khổ lại phải vắt óc ra mà cấu hình tối ưu lại cho tiết kiệm, tiền ít thì đừng hít cái gì thơm quá.
Cách xử lý folder này như sau:
– Với những ông không có nhu cầu đọc cái này, xử lý nhanh thì có thể xoá sạch file trong folder này đi, tuy nhiên đừng xoá thư mục.
– Với những ông thích cấu hình tối ưu, đỡ phải thi thoảng đi xử lý ba cái sự vụ này:
Cấu hình lại file /etc/systemd/journald.conf, nội dung mặc định như này:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
# This file is part of systemd. # # systemd is free software; you can redistribute it and/or modify it # under the terms of the GNU Lesser General Public License as published by # the Free Software Foundation; either version 2.1 of the License, or # (at your option) any later version. # # Entries in this file show the compile time defaults. # You can change settings by editing this file. # Defaults can be restored by simply deleting this file. # # See journald.conf(5) for details. [Journal] #Storage=auto #Compress=yes #Seal=yes #SplitMode=uid #SyncIntervalSec=5m #RateLimitIntervalSec=30s #RateLimitBurst=10000 #SystemMaxUse= #SystemKeepFree= #SystemMaxFileSize= #SystemMaxFiles=100 #RuntimeMaxUse= #RuntimeKeepFree= #RuntimeMaxFileSize= #RuntimeMaxFiles=100 #MaxRetentionSec= #MaxFileSec=1month #ForwardToSyslog=yes #ForwardToKMsg=no #ForwardToConsole=no #ForwardToWall=yes #TTYPath=/dev/console #MaxLevelStore=debug #MaxLevelSyslog=debug #MaxLevelKMsg=notice #MaxLevelConsole=info #MaxLevelWall=emerg #LineMax=48K #ReadKMsg=yes |
Một số ý nghĩa cấu hình
1 2 3 4 5 6 |
Storage=volatile|persistent|auto|none #none = tắt lưu trữ journaling log #volatile = chỉ lưu trữ trong ram, đọc bằng lệnh journalctl #persistent = lưu trữ vào ổ cứng, thư mục /var/log/journal, nếu thư mục này k có thì systemd sẽ tạo ra để lưu, #nếu có rồi nhưng ko ghi đc file thì sẽ ghi vào /run/log/journal #auto = lưu trữ vào ổ cứng, tuy nhiên nếu /var/log/journal ko tồn tại thì lưu vào /run/log/journal |
1 2 |
SplitMode=uid|none #điều khiển việc systemd tự tách log theo user, user nào xem log của user đó ( mặc định là uuid) |
1 2 3 4 5 6 |
SystemMaxUse=, SystemKeepFree=, SystemMaxFileSize=, SystemMaxFiles=, RuntimeMaxUse=, RuntimeKeepFree=, RuntimeMaxFileSize=, RuntimeMaxFiles= # con số quan trọng nhất để bảo toàn số dung lượng ổ cứng ít ỏi của bạn # SystemMaxUse và RuntimeMaxUse điều khiển số dung lượng ổ cứng ví dụ 1G, 2G tối đa dành việc ghi log này # SystemKeepFree và RuntimeKeepFree quy định số dung lượng ổ chừa lại cho thằng khác #SystemMaxFileSize dung lượng file lớn nhất của mỗi file log #SystemMaxFiles số lượng file log được lưu trữ |