Ubuntu 디스크 사용량을 안전하게 확인하고 정리하는 방법

들어가며

우분투(Ubuntu) 리눅스 서버를 운영하다 보면 어느 순간 디스크 용량이 가득 차서 웹서버가 멈추거나 패키지 설치가 실패하는 상황을 마주하게 됩니다. 디스크 정리는 서버 관리의 기본이지만, 잘못해서 운영체제 핵심 파일이나 중요한 로그를 삭제하면 시스템 장애로 이어질 수 있습니다. 이번 글에서는 초보자도 안심하고 실행할 수 있는 디스크 사용량 확인 절차와 안전한 정리 방법을 단계별로 알아봅니다.

1. 현재 디스크 파티션별 전체 용량 확인

서버 전체의 디스크 장치와 파티션별 남은 용량을 가장 먼저 파악해야 합니다. df 명령어를 사용하면 파일시스템별로 전체 용량, 사용 중인 용량, 여유 공간, 마운트 지점을 한눈에 확인할 수 있습니다.

디스크 용량을 사람이 읽기 쉬운 단위(GB, MB)로 출력하려면 -h 옵션을 함께 사용합니다.

df -h

이 명령의 결과에서 사용률(Use%)이 90%를 넘은 파티션이 있다면 즉시 정리가 필요합니다. 특히 / (루트) 파티션이나 /var 파티션의 용량 부족은 시스템 정지 유발의 주원인입니다.

2. 디렉터리별 용량 파악으로 원인 찾기

어떤 폴더가 용량을 많이 차지하고 있는지 확인하려면 du 명령어를 사용합니다. 전체 시스템을 무작정 검사하면 시간이 오래 걸리므로, 주로 용량이 부족한 마운트 포인트로 이동한 뒤 하위 디렉터리 크기를 조회하는 것이 효율적입니다.

현재 디렉터리 기준 하위 폴더들의 크기를 합산하여 보여주는 명령어는 다음과 같습니다.

du -sh /* 2>/dev/null

이 명령은 최상위 디렉터리(/) 바로 아래에 있는 폴더들의 용량을 각각 계산해 줍니다. 2>/dev/null을 붙이면 권한이 없어 접근할 수 없는 디렉터리에서 발생하는 불필요한 에러 메시지를 숨길 수 있습니다.

3. 우분투 패키지 캐시 및 불필요한 패키지 정리

우분투는 패키지를 설치하거나 업데이트할 때 내려받은 패키지 파일(.deb)을 로컬 캐시에 보관합니다. 이 파일들은 시간이 지날수록 쌓여 수 GB 이상을 차지하기도 합니다. 패키지 관리자 도구를 사용하면 안전하게 이 캐시를 비울 수 있습니다.

더 이상 사용되지 않는 과거 버전의 패키지 아카이브를 정리하려면 다음 명령어를 실행합니다.

sudo apt-get clean

또한, 다른 패키지의 의존성 때문에 설치되었으나 현재는 필요 없어진 고아 패키지들을 일괄 제거하려면 다음 명령어를 활용합니다.

sudo apt-get autoremove --purge

4. 시스템 로그 파일 관리와 압축 파일 정리

/var/log 디렉터리는 시스템 로그와 애플리케이션 로그가 쌓이는 곳입니다. 로그 파일이 너무 커지면 디스크를 빠르게 잠식합니다. 우분투는 기본적으로 logrotate 기능을 통해 로그를 주기적으로 압축하고 삭제하지만, 설정에 따라오래된 로그가 남아있을 수 있습니다.

/var/log 폴더 내부의 용량을 확인한 뒤, .gz 확장자로 압축된 오래된 로그 파일 중 불필요한 항목을 선별하여 삭제할 수 있습니다. 단, 현재 활성화된 syslog나 auth.log 원본 파일을 직접 지우는 것은 피해야 합니다.

5. 안전한 디스크 정리를 위한 체크리스트

디스크를 정리할 때 실수를 방지하기 위해 다음 점검 항목을 확인하세요.

  • 중요 데이터 백업: 삭제 작업 전 설정 파일이나 데이터베이스는 반드시 백업합니다.
  • df -h 확인: 정리를 시작하기 전과 후에 각각 디스크 여유 공간을 비교합니다.
  • 와일드카드(*) 주의: rm -rf 명령을 사용할 때는 공백이나 경로 오타로 인해 의도치 않은 파일이 지워지지 않도록 주의합니다.
  • 서비스 영향도 검토: 로그나 캐시를 삭제한 후 관련 웹서버나 데이터베이스 서비스를 재시작하여 정상 동작을 확인합니다.

6. 초보자가 흔히 저지르는 실수

디스크 정리 과정에서 초보자들이 자주 겪는 실수를 미리 숙지하면 장애를 예방할 수 있습니다.

  • 전체 경로 지정 실수: rm -rf /*와 같이 절대 경로 최상위에 와일드카드를 잘못 입력하여 운영체제 파일 전체를 날리는 사고입니다. 항상 현재 위치(pwd)를 먼저 확인해야 합니다.
  • 활성 로그 파일 직접 삭제: 프로세스가 여전히 쓰기 작업을 하고 있는 로그 파일을 rm으로 강제 삭제하면, 파일은 지워졌으나 디스크 점유 반환이 안 되는 현상이 발생합니다. 이 경우 관련 데몬을 재시작해야 디스크 공간이 실제로 돌아옵니다.
  • 도메인 캐시나 임시 폴더 무단 삭제: 웹 애플리케이션의 tmp 폴더나 캐시 폴더를 완전히 비울 때 권한 설정이 깨져 웹사이트 접속 오류가 발생할 수 있으므로, 폴더 자체는 남겨두고 내부 파일만 정리해야 합니다.

맺음말

Ubuntu 서버의 디스크 사용량 확인과 정리는 주기적으로 수행해야 하는 필수 관리 작업입니다. df와 du 명령어로 원인을 정확히 파악하고, 패키지 캐시와 로그 관리 같은 안전한 방법부터 차근차근 적용하면 디스크 용량 부족으로 인한 서버 장애를 미연에 방지할 수 있습니다.

관련 글

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다