이번 글에서는 아마존 라이트세일 Bitnami (비트나미) 스택에서 생성되는 Apache (아파치) 로그 파일들의 수동 삭제 방법에 대해 간단하게 정리해보겠습니다.
본격적으로 서버를 구성해서 아파치 로그 파일을 관리하게 될 경우 로테이트로그 (rototagelogs)나 로그로테이트 (logrotate) 등을 이용해 자동적으로 로그 파일을 관리하면 좋겠지만, 초보자가 아마존 라이트세일의 미리 설정된 워드프레스 인스턴스 등을 사용하게 되면 로그 관리 같은 부분에서 어려움을 겪기 마련입니다.
이럴 때 수동으로 로그를 간단하게 정리할 수 있는 방법은 다음과 같습니다.
목차
AWS 콘솔에 로그인, 터미널 접속
아마존 라이트세일을 이용하는 경우 아마존 웹 서비스 관리 콘솔 (AWS Management Console)에 로그인 후 해당 인스턴스의 터미널을 이용해 서버에 접속합니다.
터미널을 열고 서버에 접속한 화면입니다.
모든 로그 파일 삭제
터미널을 켜고 서버에 연결된 상태라면 먼저 아파치 로그가 저장되는 폴더 (디렉토리)를 확인해야 합니다.
일반적으로 Bitnami는 Apache 로그를 /opt/bitnami/apache2/logs/ 폴더에 저장합니다. 다음과 같이 커맨드 프롬프트에 cd /opt/bitnami/apache2/logs/ 를 입력해 로그 폴더로 이동합니다.
로그 폴더로 이동했다면 현재 로그 파일은 어떻게 구성되어 있는지 확인하는 것이 좋습니다. 다음과 같이 커맨드 프롬프트에 ls -l 를 입력하여 로그 파일을 살펴봅니다.
로그 파일을 확인했다면 전체 로그 파일 또는 특정 로그 파일을 삭제하면 됩니다.
예를 들어 만약 해당 폴더의 모든 파일의 삭제를 원한다면 커맨드 프롬프트에 sudo rm *.*를 입력합니다. 특정 형식 파일의 삭제를 원한다면 커맨드 프롬프트에 sudo rm *.log, sudo rm *.gz와 같이 입력해 해당 확장자를 가진 파일을 삭제할 수 있습니다.
로그 파일을 삭제한 후에는 다시 커맨드 프롬프트에 ls -l 를 입력하여 로그 파일이 제대로 삭제되었는지 확인합니다.
로그를 삭제한 후에는 커맨드 프롬프트에 위와 같은 명령어를 입력해 아파치를 재시작, 변경 사항이 적용되게 합니다.
access_log, error_log 파일 비우기
로그 파일 중 access_log와 error_log는 내용이 계속 기록되는 중이기 때문에 위에서 설명한 로그 파일 삭제 방법으론 제거되지 않습니다. 따라서 별도로 이 파일의 내용을 비워주는 방법이 필요합니다.
아마존 라이트세일 Bitnami 스택의 Apache에서 사용하는 access_log와 error_log 파일은 다른 로그 파일과 마찬가지로 /opt/bitnami/apache2/logs/에 위치합니다. 따라서 이 파일들을 비우기 위해서는 커맨드 프롬프트에 다음과 같이 입력하면 됩니다.
sudo truncate -s 0 /opt/bitnami/apache2/logs/error_log
이 명령은 access_log, error_log 파일의 내용을 비워 0 바이트로 만들지만 파일 자체는 삭제되지 않습니다.
마찬가지로 로그를 비우는 작업을 실행한 후에는 커맨드 프롬프트에 위와 같은 명령어를 입력해 아파치를 재시작, 변경 사항이 적용되게 합니다.