Ubuntu 16.04 Server / logrotate 설치하고 설정하기

우분투(Ubuntu)는 여러 작업의 내용을 로그(Log) 파일로 남깁니다. 예를 들어 웹서버 운영과 관련된 로그는 /var/log/apache2에 있습니다.

로그는 기본적으로 하나의 파일에 계속 추가하는 것이어서, 시간이 지날수록 파일의 크기가 커집니다. 로그 파일의 크기가 너무 커지면, 시스템이 느려지거나 다운되기도 합니다.

이러한 문제를 해결해주는 패키지가 logrotate입니다. 로그 파일이 일정 기준을 충족하면 기존 로그 파일을 다른 이름으로 변경하여 저장하고 새로운 로그 파일을 생성합니다. 따라서 로그 파일이 계속해서 커지는 것을 방지할 수 있고, 필요 없는 과거의 로그 파일을 삭제하여 디스크 용량도 절약할 수 있습니다.

설치

logrotate가 설치되어 있지 않다면 다음과 같이 명령하여 설치합니다.

apt install logrotate

설정

logrotate 기본 설정 파일은 /etc/logrotate.conf이고, 개별 로그 파일 관련 설정 파일들은 /etc/logrotate.d에 있습니다.

예를 들어 apache2 로그 설정 파일은 /etc/logrotate.d/apache2입니다.

/var/log/apache2/*.log {
  daily
  missingok
  rotate 14
  compress
  delaycompress
  notifempty
  create 640 root adm
  sharedscripts
  postrotate
    if /etc/init.d/apache2 status > /dev/null ; then \
      /etc/init.d/apache2 reload > /dev/null; \
    fi;
  endscript
  prerotate
    if [ -d /etc/logrotate.d/httpd-prerotate ]; then \
      run-parts /etc/logrotate.d/httpd-prerotate; \
    fi; \
  endscript
}

몇가지 내용을 살펴보면..

daily

로그 파일 교체 주기입니다. 값으로는 daily, weekly, monthly 등이 가능합니다.

rotate 14

로그파일 개수입니다. 이를 초과하면 순차적으로 삭제합니다.

compress

압축 여부를 정합니다. 값으로는 compress, nocompress가 가능합니다.

테스트

로그 파일이 다음처럼 만들어지면 잘 작동하는 것입니다.

error.log
error.log.1
error.log.10.gz
error.log.11.gz
error.log.12.gz
error.log.13.gz
error.log.14.gz
error.log.2.gz
error.log.3.gz
error.log.4.gz
error.log.5.gz
error.log.6.gz
error.log.7.gz
error.log.8.gz
error.log.9.gz
같은 카테고리의 다른 글
엣지 / 사이드바 표시 여부 설정하는 방법

엣지 / 사이드바 표시 여부 설정하는 방법

얼마 전 엣지가 업데이트되면서 사이드바가 생겼다. 네이버 웨일이 있는 거와 비슷한 것인데, 원래 있던 것인지 새로 추가된 것인지는 잘 모르겠다. 사이드바에는 여러 가지 기능이 있다. 예를 들어 를 클릭하면... 계산기, 사전, 번역기, 단위 변환기, 인터넷 속도 테스트가 있고, 설정으로 들어가서... 표시 여부와 순서를 정할 수 있다. 만약 이 사이드바가 필요하지 않다면 숨길 수 있다. ...

크롬 / 즐겨찾기 내보내기, 즐겨찾기 가져오기

크롬 / 즐겨찾기 내보내기, 즐겨찾기 가져오기

크롬에는 동기화 기능이 있습니다. 구글 계정으로 로그인하고 동기화 허용 설정을 하면, 클라우드에 즐겨찾기 등이 저장되고, 다른 기기에서 크롬에 로그인하면 그 정보들을 가져옵니다. 유용한 기능이기는 하나, 비밀번호 등 중요한 정보도 같이 동기화되므로 주의해서 사용해야 합니다. 만약 동기화 기능을 사용하지 않고 즐겨찾기를 백업하고 복원해야 한다면, 다음과 같은 방법으로 하면 됩니다. 크롬에서 내보낸 북마크는, 마이크로소프트 ...

Ubuntu 22.04 Server / ufw로 방화벽 설정하는 방법

우분투에서 방화벽을 설정하는 명령어는 ufw이다. ufw로 방화벽을 활성화시키고 관리하는 방법은 다음과 같다. 방화벽 활성화 ufw enable 방화벽 비활성화 ufw disable 방화벽 상태 확인 ufw status 53 포트 허용 ufw allow 53 53 포트 tcp 패킷 허용 ufw allow 53/tcp 53 포트 udp 패킷 허용 ufw allow 53/udp 53 포트 거부 ufw deny 53 53 포트 tcp 패킷 거부 ufw deny 53/tcp 53 포트 udp 패킷 거부 ufw deny ...

Ubuntu 22.04 Server / 백신 프로그램 ClamAV 설치 및 사용법

ClamAV ClamAV는 리눅스에서 사용할 수 있는 백신 프로그램이다. 우분투 패키지에 포함되어 있으므로 apt 명령으로 쉽게 설치하고 사용할 수 있다. 설치 # apt install clamav 사용법 데이터베이스 업데이트 clamav-freshclam 서비스를 중지한다. # systemctl stop clamav-freshclam freshclam 명령으로 업데이트한다. # freshclam clamav-freshclam 서비스를 시작한다. # systemctl start clamav-freshclam 검사 home 디렉토리와 그 하위 디렉토리를 검사한다. # clamscan -r /home 검사 결과는 다음처럼 나온다. ----------- SCAN SUMMARY ----------- Known viruses: ...

오픈 소스 / 리브레오피스(LibreOffice)

오픈 소스 / 리브레오피스(LibreOffice)

리브레오피스(LibreOffice)는 The Document Foundation에서 개발 및 관리하는 오픈 소스 오피스 스위트입니다. 2010년에 오픈오피스(OpenOffice.org) 프로젝트에서 포크(Fork)되어 독립적으로 발전해왔으며, 다양한 운영 체제에서 사용할 수 있습니다. 리브레오피스는 다양한 문서 작성, 편집 및 관리를 위한 도구들을 포함하고 있습니다. 주요 구성 요소 리브레오피스는 다음과 같은 주요 구성 요소로 이루어져 있습니다: Writer 기능 : 워드 프로세서로, 마이크로소프트 워드와 유사한 기능을 ...

Ubuntu 18.04 / 해상도 변경하는 방법

Ubuntu 18.04 / 해상도 변경하는 방법

Ubuntu 18.04 Desktop에서 해상도 변경하는 방법입니다. 바탕화면에서 마우스 우클릭을 합니다. 를 클릭합니다. 왼쪽 메뉴에서 를 클릭합니다. 왼쪽 메뉴에서 를 클릭하고, 오른쪽에서 해상도를 선택합니다. 오른쪽 위의 버튼을 클릭합니다. 를 클릭합니다.

안드로이드 / 앱 / 알파카 / 공유 전동 킥보드 / 가입하는 방법과 요금, 탈 수 있는 곳

안드로이드 / 앱 / 알파카 / 공유 전동 킥보드 / 가입하는 방법과 요금, 탈 수 있는 곳

집 앞에서 버스를 타고 전철역으로 이동 후 전철을 타는데, 이 버스의 배차 간격이 좀 길다. 그리고 주말에는 더 길다. 버스 정류장에서 버스를 기다리다가 근처에 공유 전동 킥보드가 있는 것을 보고, 언제 올지 모르는 버스를 기다리는 것보다 편할 거 같아 가입을 해보았다. 알파카라는 회사에서 운영하는 건데, 앱에서 회원 가입이 가능하다. 플레이스토어에서 알파카로 ...

phpMyAdmin / 이제 설정 파일은 암호화 문자열(blowfish_secret)을 필요로 합니다.

phpMyAdmin / 이제 설정 파일은 암호화 문자열(blowfish_secret)을 필요로 합니다.

phpMyAdmin을 업로드 하고 로그인 했을 때 다음과 같은 문구가 나오는 경우가 있습니다. 이제 설정 파일은 암호화 문자열(blowfish_secret)을 필요로 합니다. 해결하는 방법은 다음과 같습니다. phpMyAdmin 디렉토리에 있는 config.sample.inc.php를 config.inc.php로 이름을 바꾸어 저장합니다. 그리고 파일에 있는 다음 코드에 값을 채웁니다. $cfg = ''; 32개 보다 적은 문자를 넣으면 길이가 짧다는 메시지가 나오므로, 32개 이상의 문자를 입력합니다.

Ubuntu Server / do-release-upgrade / 버전 업그레이드 명령어

Ubuntu 새 버전이 나오면 어떻게 업그레이드를 할까? 새로 설치하고 다시 설정하는 게 제일 좋지만, 설정할 게 많다면 바로 업그레이드를 할 수도 있다. 업그레이드는 do-release-upgrade 명령어로 한다. do-release-upgrade -h Usage: do-release-upgrade Options: -h, --help show this help message and exit -V, ...

리눅스 / 명령어 / rmdir / 빈 디렉토리 삭제하는 명령어

rmdir rmdir은 빈 디렉토리를 삭제하는 명령어이다. Remove the DIRECTORY(ies), if they are empty. 사용법 rmdir directory a 디렉토리를 삭제한다. # rmdir a  비어있다면 삭제를 하고, 그렇지 않다면 다음을 출력한다. rmdir: failed to remove ‘a’: Directory not empty rmdir --ignore-fail-on-non-empty directory 디렉토리가 비어있지 않아도 메시지를 출력하지 않는다. rmdir -v directory 현재 디렉토리 안에 있는 모든 비어있는 디렉토리를 삭제한다. v 옵션을 넣으면 작업 결과를 ...