Linux의 특정 로그 파일에 대한 크기 제한

Linux의 특정 로그 파일에 대한 크기 제한

많은 공간을 차지하는 일부 로그 파일이 있는데 Linux에서는 이를 10MB로 제한하고 싶습니다.

예를 들어 test.log 파일은 10MB를 초과할 수 없으며 로그는 파일 액세스를 중지해야 합니다.

이를 수행하기 위해 가능한 단계나 명령을 공유할 수 있습니까?

답변1

에서 영감을 받다비슷한 질문에 대한 Alex의 답변,만약에로그 파일이 별도의 디렉터리에 배치되도록 로그 파일의 위치를 ​​제어한 다음 지정된 크기의 파일을 기반으로 하는 반복 설치를 생성할 수 있습니다. 이 하위 디렉터리에 대한 쓰기는 백업 파일 크기에 따라 제한됩니다. 처리할 로그 파일이 여러 개인 경우 혼란스러워질 수 있습니다.

## adjust the size to taste for filesystem overhead
dd if=/dev/zero of=./10mb.img bs=1M count=12 
/sbin/mkfs.ext4 10mb.img
mkdir logdir
sudo mount -t ext4 -o loop 10mb.img logdir

sudo dd if=/dev/urandom of=logdir/test.log
dd: writing to ‘logdir/test.log’: No space left on device
21033+0 records in
21032+0 records out
10768384 bytes (11 MB) copied, 2.3511 s, 4.6 MB/s

답변2

emlog 모듈이 도움이 되나요? 언급된 걸 봤는데https://serverfault.com/questions/133320/turning-a-log-file-into-a-sort-of-circular-buffer, 하지만 그것이 적절한지는 잘 모르겠습니다.

관련 정보