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

들어가며

우분투 서버를 운영하다 보면 어느 순간 디스크 용량이 부족해져 서비스가 중단되거나 로그 기록이 누락되는 상황을 마주하게 됩니다. 디스크 정리는 단순히 큰 파일을 지우는 작업이 아니라, 시스템이 정상적으로 구동되는 데 필수적인 공간을 확보하는 신중한 작업입니다. 이번 글에서는 우분투 초보자도 시스템을 망가뜨리지 않고 안전하게 디스크 사용량을 진단하고 불필요한 파일을 정리하는 방법을 살펴봅니다.

디스크 사용량을 확인하는 기본 명령어

디스크를 정리하기 전, 현재 어느 영역이 얼마나 사용되고 있는지 정확히 파악해야 합니다. 전체 디스크 용량과 마운트 상태를 확인하려면 df 명령어를 사용합니다.

df -h

옵션 -h는 사람이 읽기 쉬운 단위(GB, MB 등)로 출력해 줍니다. 만약 특정 디렉터리나 폴더가 얼마나 공간을 차지하고 있는지 확인하려면 du 명령어를 활용합니다.

du -sh /var/log/*

이 명령어를 통해 /var/log 디렉터리 내 각 로그 파일과 폴더의 용량을 한눈에 파악할 수 있어 용량 부족의 주범을 쉽게 찾을 수 있습니다.

안전하게 디스크 공간을 확보하는 실무 절차

원인을 파악했다면 아래의 순서에 따라 안전하게 공간을 확보할 수 있습니다.

  • 불필요한 패키지 캐시 정리: 우분투는 패키지를 설치하거나 업데이트할 때 데비안 패키지 파일을 로컬에 보관합니다. 이 캐시는 시간이 지나면서 상당한 용량을 차지하므로 아래 명령어로 청소할 수 있습니다.
  • 오래된 저널 로그 정리: 시스템디(systemd) 저널 로그가 과도하게 쌓였다면 보관 기간이나 용량을 제한하여 정리할 수 있습니다.
  • 고아 패키지 제거: 더 이상 의존성이 없어 필요 없는 패키지들을 정리합니다.

패키지 관리 도구 정리 명령어

아래 명령어들은 우분투 패키지 시스템에서 공식적으로 지원하는 안전한 정리 방식입니다.

sudo apt-get clean
sudo apt-get autoremove

apt-get clean은 다운로드받은 패키지 파일 아카이브를 모두 삭제하며, autoremove는 다른 패키지의 의존성 때문에 설치되었으나 현재는 필요 없어진 패키지를 안전하게 제거합니다.

디스크 정리 작업 시 주의사항

디스크를 정리할 때 루트 권한(sudo)으로 파일을 무작정 삭제하면 시스템 부팅에 필요한 파일이나 데이터베이스 파일이 손상될 수 있습니다. 특히 /var/lib나 /etc 디렉터리 내부 파일은 임의로 삭제해서는 안 됩니다. 또한, 대용량 로그 파일을 삭제할 때는 파일을 직접 지우기보다 내용을 비우는 방식을 사용하는 것이 안전합니다.

sudo truncate -s 0 /var/log/syslog

이 방식은 파일 자체는 유지한 채 내부 데이터만 0으로 만들어, 해당 파일을 참조 중인 프로세스가 오류를 일으키는 것을 방지합니다.

디스크 정리 실무 체크리스트

  • 현재 상태 진단: df -h 명령어로 전체 마운트 포인트의 여유 공간을 확인했는가?
  • 대용량 폴더 특정: du 명령어로 용량을 많이 차지하는 특정 디렉터리를 찾아냈는가?
  • 패키지 캐시 삭제: apt-get clean과 autoremove를 실행해 불필요한 패키지를 비웠는가?
  • 로그 파일 관리: 시스템 로그가 무한정 쌓이지 않도록 로테이션 설정이 되어 있는가?
  • 서비스 정상 작동 확인: 정리 작업 후 주요 웹서버나 데이터베이스 서비스가 정상적으로 응답하는가?

초보자가 자주 하는 실수

디스크를 정리할 때 초보자들이 가장 많이 하는 실수는 rm -rf 명령어를 홈 디렉터리가 아닌 최상위 루트 디렉터리(/) 근처에서 잘못 실행하는 것입니다. 또한, 현재 실행 중인 로그 파일을 rm으로 지워버리면, 로그를 기록 중인 프로세스가 여전히 과거의 파일 Descriptor를 잡고 있어 디스크 공간이 실제로 반환되지 않는 현상이 발생합니다. 따라서 항상 df -h로 공간 반환 여부를 확인하는 습관을 들여야 합니다.

마치며

우분투 서버의 디스크 관리는 정기적인 모니터링과 안전한 도구 사용이 핵심입니다. 무리하게 파일을 삭제하기보다 패키지 캐시 정리와 로그 관리 기능을 활용하면 시스템 안정성을 유지하면서도 충분한 디스크 공간을 확보할 수 있습니다. 오늘 배운 점검 명령어들을 실제 서버 환경에 적용해 안정적인 운영 환경을 구축해 보시기 바랍니다.

관련 글

답글 남기기

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