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
같은 카테고리의 다른 글
자동차 / 타이어 / 사이즈(규격) 보는 방법

자동차 / 타이어 / 사이즈(규격) 보는 방법

타이어 규격은 타이어의 크기, 형태, 성능 특성을 나타내는 다양한 숫자와 문자로 구성된 코드입니다. 이 코드는 타이어의 측면에 표기되어 있으며, 이를 통해 적절한 타이어를 선택할 수 있습니다. 타이어 규격을 이해하는 것은 차량의 안전과 성능을 최적화하는 데 매우 중요합니다. 일반적인 타이어 규격 표기법을 예로 들어 설명하겠습니다.

OBS Studio / 윈도우 캡쳐 / 녹화 영역 윈도우에 맞추는 방법

OBS Studio / 윈도우 캡쳐 / 녹화 영역 윈도우에 맞추는 방법

OBS Studio의 윈도우 캡쳐를 이용하면, 특정 창만 선택하여 캡쳐를 할 수 있습니다. 그런데, 화면에 꽉 차지 않은 창을 선택하면 아래처럼 나머지 부분이 검정으로 나옵니다. 그 부분에 다른 화면이나 창을 넣을 수 있는데, 만약 선택한 창만 녹화를 한다면 검정 부분까지 녹화가 됩니다. 검정 부분을 없애고, 선택한 윈도우만 녹화하고 싶다면, 마우스 우클릭하여 [출력 ...

Ubuntu 18.04 Server / 시간대(time zone) 설정하는 방법

Ubuntu 18.04 Server / 시간대(time zone) 설정하는 방법

현재 서버의 시간대 확인 현재 서버에 설정된 시간대는 date 명령어로 확인할 수 있다. # date 시간대 설정 방법 1 - dpkg-reconfigure tzdata 시간대를 설정하고 싶다면 다음과 같이 명령한다. # dpkg-reconfigure tzdata 한국이라면 Asia를 선택하고 Seoul을 선택합니다. 시간대 설정 방법 2 - tzselect tzselect 명령으로 설정할 수 있다. 번호를 입력하여 시간대를 정한다. # tzselect Please identify a location so that time ...

Visual Studio Code (VS Code) / 소개, 장점, 단점

Visual Studio Code (VS Code) / 소개, 장점, 단점

Visual Studio Code (VS Code)는 Microsoft에서 개발한 오픈 소스 코드 편집기로, 다양한 프로그래밍 언어와 플랫폼을 지원하며 개발자들 사이에서 매우 인기가 높습니다. 이 편집기는 가벼우면서도 강력한 기능을 제공하며, 개발 생산성을 높이기 위해 설계되었습니다. 아래에서 VS Code의 상세한 소개와 장단점에 대해 자세히 살펴보겠습니다. Visual Studio Code 소개 출시 및 배경 출시일 : 2015년 4월 29일에 ...

MSI / 메인보드 / 장착 가능한 메모리와 크기 확인하는 방법

MSI / 메인보드 / 장착 가능한 메모리와 크기 확인하는 방법

컴퓨터 조립은 쉽다. 케이스, 파워 서플라이, 메인보드, CPU, 메모리, 디스크 등을 구입한 후 적절한 위치에 꽂기만 하면 된다. 잘못 꽂을까 걱정할 것도 없다. 맞지 않는 위치라면 아예 끼워지지도 않는다. 아, 케이스에 있는 Power, Reset 선 등을 메인보드에 꽂을 때는 주의를 해야한다. 메인보드 설명서를 보고 잘 꽂아야 전원이 들어오고 LED가 깜빡인다. 문제는 ...

마우스 / DPI와 CPI 비교

컴퓨터 마우스는 우리가 일상적으로 사용하는 중요한 입력 장치 중 하나입니다. 마우스를 사용할 때 그 움직임의 민감도와 정확성은 사용자의 경험에 큰 영향을 미칩니다. 이 민감도와 정확성을 측정하는 주요 지표가 바로 DPI와 CPI입니다. 이 두 용어는 종종 혼용되어 사용되지만, 각기 다른 의미를 가지고 있습니다. DPI (Dots Per Inch) DPI는 "Dots Per Inch"의 약자로, 마우스가 ...

Brackets / 언어 변경하는 방법

Brackets / 언어 변경하는 방법

Brackets는 다국어를 지원합니다. 원하는 언어로 사용할 수 있습니다. 언어 변경은 다음 순서로 합니다. 상단 메뉴에서 디버그(Debug)를 클릭하고 언어 변경(Switch Language)을 클릭합니다. 언어를 선택하고 Brackets 재시작(Reload Brackets)를 클릭합니다. 브라켓이 재시작 되면서 언어가 변경됩니다.

Ubuntu 22.04 Server / 원격 데스크톱으로 연결하는 방법

Ubuntu 22.04 Server / 원격 데스크톱으로 연결하는 방법

GUI 설치 우분투에 GUI를 설치한다. # apt install ubuntu-desktop-minimal xrdp 설치 xrdp를 설치한다. # apt install xrdp 방화벽 설정 원격 데스크톱은 3389 포트를 사용하므로, 방화벽을 사용하고 있다면 포트를 열어 준다. ufw allow 3389/tcp 원격 데스크톱 연결 원격 데스크톱으로 접속한다. 아래와 같은 창이 뜨는데, 를 클릭한다. 계정 정보를 입력하고 를 클릭하면... 원격지에서 GUI로 우분투를 즐길 수 있다.

DBeaver / 오픈 소스 데이터베이스 관리 도구

DBeaver / 오픈 소스 데이터베이스 관리 도구

DBeaver는 오픈 소스 데이터베이스 관리 도구로, 다양한 데이터베이스 시스템을 지원하는 강력한 소프트웨어이다. 이 도구는 데이터베이스 개발자와 관리자에게 데이터베이스의 구조를 탐색하고 관리하며 쿼리를 작성하고 실행할 수 있는 편리한 인터페이스를 제공한다. 주요 기능 광범위한 데이터베이스 지원 DBeaver는 MySQL, MariaDB, PostgreSQL, Oracle, DB2, SQL Server, SQLite, Sybase, Teradata, Firebird, Apache Hive, Phoenix, Presto, MongoDB, Cassandra, Redis ...

기계식 키보드 / 종류와 장단점

기계식 키보드 / 종류와 장단점

기계식 키보드는 타건감과 내구성에서 다른 키보드와 차별화됩니다. 기계식 키보드는 다양한 스위치 종류에 따라 특성이 달라지며, 사용자 경험에 큰 영향을 미칩니다. 청축(Blue Switch) 청축 스위치는 클릭 소리와 탁월한 타건감을 제공합니다. 타이핑 시 클릭 소리와 촉각 피드백이 명확하게 느껴져 기계식 키보드의 대표적인 스위치로 알려져 있습니다. 장점 명확한 클릭 소리와 촉각 피드백 타이핑 감각이 좋고 만족감이 높음 타자 속도 ...