Computer >> 컴퓨터 >  >> 문제 해결 >> 컴퓨터 유지 보수

리눅스에서 디스크 사용량을 확인하는 7가지 필수 도구

용량은 대체 어디로 사라지는 걸까요? 2TB 하드디스크가 이렇게 빨리 차버렸다니 의아하신가요? 답을 알 수 있는 방법은 단 하나, 바로 디스크 사용량 분석 도구를 활용하는 것입니다. 이런 도구들은 주로 HDD와 SSD를 위해 설계되었지만, USB 메모리나 SD 카드처럼 플래시 기반 저장장치에서도 문제없이 동작합니다.

리눅스에서 사용할 수 있는 디스크 사용량 도구는 생각보다 다양합니다. 지금부터 하나씩 살펴보겠습니다.

1. 기본 명령줄 도구

가장 먼저 확인해볼 곳은 터미널입니다. 별도의 설치 없이 리눅스에 기본으로 포함되어 있는 여러 도구를 바로 사용할 수 있습니다.

첫 번째로 시도해볼 명령은 df입니다. 현재 사용 중인 디스크 공간의 양을 보고해주는 명령어로, 옵션 없이 실행하면 마운트된 모든 파일 시스템의 전체 현황을 보여주고, 파일명과 함께 사용하면 해당 파일이 속한 파티션 정보를 출력합니다.

리눅스에서 디스크 사용량을 확인하는 7가지 필수 도구

파일명과 함께 실행하면 그 파일이 저장된 파티션의 남은 공간을 보여줍니다.

df etc

위 명령은 /etc/ 디렉터리에 얼마나 많은 여유 공간이 있는지 확인해줍니다. 한편,

df -h

-h 옵션은 "human readable(사람이 읽기 쉬운)"을 의미합니다. 파일과 폴더 크기를 KB, MB, GB처럼 사람이 이해하기 쉬운 단위로 표시해주기 때문에, 특정 파일이나 디렉터리가 차지하는 용량을 파악할 때 매우 유용합니다.

또한 du 명령도 사용할 수 있습니다. df와 약간 다르게 du는 파일들이 실제로 사용 중인 디스크 공간의 추정치를 보여줍니다. 예를 들면 다음과 같습니다.

du -shc *.txt

위 명령은 현재 디렉터리에 있는 각 TXT 파일의 크기를 읽기 쉬운 형식으로 표시합니다.

ls(list) 명령을 활용하면 디렉터리 내용 목록과 함께 파일 크기도 함께 출력할 수 있습니다.

리눅스에서 디스크 사용량을 확인하는 7가지 필수 도구

어떤 디렉터리에서든 아래 명령으로 실행할 수 있습니다.

ls -l -h

정말 간단하죠?

2. Ncurses Disk Usage (ncdu)

전용 유틸리티로 디스크 사용량 정보를 확인하고 싶다면 ncdu를 추천합니다. 이 목록 중 가장 간단한 방법일 수 있는데, ncdu는 실행 즉시 시스템 스캔을 시작합니다. 기본적으로 홈 디렉터리의 내용과 사용량이 표시되지만, 다른 디렉터리를 인자로 지정하면 그곳을 대상으로 분석할 수 있습니다.

데비안 계열 시스템이라면 명령줄에서 간단히 설치할 수 있습니다.

sudo apt install ncdu
리눅스에서 디스크 사용량을 확인하는 7가지 필수 도구

사용법도 간단합니다. 터미널에 다음만 입력하면 됩니다.

ncdu

대용량 HDD라면 결과가 나올 때까지 잠시 기다려야 할 수 있습니다. -x 옵션을 사용하면 루트 파일 시스템 전체를 스캔할 수도 있습니다.

ncdu -x /

SSH를 통한 원격 스캔도 지원해서 원격 장치 관리에 특히 유용합니다.

ssh -C user@system ncdu -o- / | ./ncdu -f-

전체 사용법은 ncdu 공식 웹사이트에서 확인할 수 있습니다.

그 외에도 ncdu는 파일명 또는 크기별 정렬, 개별 파일 및 디렉터리 삭제, 파일·폴더 상세 정보 표시, 숨김 항목 표시 전환 등 다양한 기능을 제공합니다.

이 정도면 명령줄 도구만으로 충분하다고 느낄 수 있지만, 시각화 도구를 사용하면 디스크 사용량을 훨씬 더 직관적으로 파악할 수 있습니다.

3. QDirStat

첫 번째로 소개할 시각화 도구는 QDirStat입니다. 다양한 리눅스 데스크톱 환경은 물론 BSD에서도 사용할 수 있습니다.

시각화 도구는 단순한 숫자 목록으로는 알 수 없는 하드디스크의 실제 상황을 생생하게 보여줍니다. 윈도우에서 가장 인기 있는 도구인 WinDirStat은 KDirStat의 클론인데, QDirStat은 바로 그 KDirStat을 기반으로 만들어졌습니다.

QDirStat에서는 HDD 사용량이 크기가 서로 다른 사각형으로 표현됩니다. 사각형이 클수록 해당 디렉터리가 더 많은 디스크 공간을 차지하고 있다는 뜻입니다. 해당 사각형을 마우스 오른쪽 버튼으로 클릭하면 폴더 위치로 바로 이동하는 옵션이 나타납니다.

리눅스에서 디스크 사용량을 확인하는 7가지 필수 도구

이런 도구는 컴퓨터에 몰래 쌓여있는 "숨겨진" 데이터를 찾는 데 탁월합니다. 다운로드 위치를 놓친 파일이나 인터넷 캐시 같은 것들도 모두 추적할 수 있죠. 만약 투박한 블록 형태의 뷰가 마음에 들지 않는다면, 히스토그램 형태로 사용량 데이터를 확인할 수도 있습니다.

QDirStat은 GitHub에서 받을 수 있으며, openSUSE, SLE, 우분투용 패키지도 제공됩니다.

우분투의 경우 먼저 PPA를 추가해야 합니다(설치 후에는 삭제하는 것을 잊지 마세요).

sudo add-apt-repository ppa:nathan-renniewaldock/qdirstat
sudo apt-get update

준비가 끝났으면 다음 명령으로 설치합니다.

sudo apt install qdirstat

데스크톱에서 프로그램을 실행하거나, 터미널에서 qdirstat 명령으로 실행할 수 있습니다. 안내에 따라 스캔할 디렉터리를 선택한 뒤, 데이터가 정리되어 화면에 표시될 때까지 기다리면 됩니다.

KDE 버전인 K4DirStat도 별도로 제공됩니다.

4. 디스크 사용량 분석기 (Disk Usage Analyzer, 예전 이름 Baobab)

예전 이름이 Baobab이었던 디스크 사용량 분석기(Disk Usage Analyzer) 역시 시각화 도구입니다. QDirStat의 블록 기반 방식과 달리, 이 유틸리티는 방사형 트리맵 원형 차트를 통해 디스크 사용량을 실시간으로 보여줍니다. 오른쪽 패널에 차트가 표시되고, 왼쪽에는 현재 선택된 디렉터리의 내용 목록이 나타납니다.

리눅스에서 디스크 사용량을 확인하는 7가지 필수 도구

모든 항목이 색상으로 구분되어 있어 분석이 쉽지만, 그 이상의 기능은 많지 않습니다. 예를 들어 보고 있는 디렉터리로 바로 이동하는 단축 기능이 없어서, 기본 파일 관리자에서 직접 열어야 하는 불편함이 있습니다.

그럼에도 불구하고 디스크 사용량 분석기는 사용법이 간단해서, 복잡한 과정 없이 빠르게 사용량을 점검하고 싶을 때 이상적인 도구입니다.

5. xdiskusage

블록 기반 그래픽 분석기인 xdiskusage는 상당히 기본적인 UI를 갖추고 있으며, du 명령으로부터 정보를 수집합니다. 다만 이 과정이 자동으로 실행되기 때문에 사용량 데이터가 빠르게 정리되어 표시됩니다.

데비안 계열 시스템에서는 다음 명령으로 설치합니다.

sudo apt install xdiskusage

터미널에서 xdiskusage 명령을 실행한 뒤, 분석할 디렉터리나 디스크를 선택하면 됩니다.

리눅스에서 디스크 사용량을 확인하는 7가지 필수 도구

결과는 트리 구조로 표시되며, 부모 디렉터리 블록이 가장 왼쪽에 위치하고 자식 디렉터리와 폴더들이 오른쪽으로 가지를 뻗듯 배치됩니다. 각 블록에는 디렉터리 이름과 디스크 사용량이 함께 표시됩니다.

마우스나 방향키로 이 그래픽 표현 속 디렉터리 구조를 탐색할 수 있습니다. 디렉터리 블록에 대해 더 알고 싶다면? 마우스 오른쪽 버튼을 클릭하세요. 경로를 클립보드로 복사하거나 화면을 인쇄하는 옵션이 제공됩니다.

화려한 그래픽은 아니지만, xdiskusage는 극도로 가볍게 설계된 것이 강점입니다. 디스크가 이유 없이 가득 차서 공간이 급하게 필요한 상황이라면 xdiskusage가 해답이 될 수 있습니다.

다운로드 가능한 실행 파일은 64비트 전용이지만, 소스 코드도 함께 배포되므로 자신의 시스템에서 직접 컴파일하여 설치할 수 있습니다.

6. Duc

방사형 트리맵 방식을 채택한 또 다른 도구가 Duc입니다. 여러 도구를 모은 패키지 형태로 제공되며, 데비안 계열 배포판에서는 다음 명령으로 설치할 수 있습니다.

sudo apt install duc

다른 리눅스 계열이라면 웹사이트에서 소스 코드를 내려받아 직접 컴파일하면 됩니다.

리눅스에서 디스크 사용량을 확인하는 7가지 필수 도구

Duc를 시작하려면 먼저 /usr 디렉터리를 색인(indexing)합니다. 이 과정에서 데이터베이스가 생성되는데(자세한 내용은 아래에서), 첫 실행 시에는 시간이 다소 걸릴 수 있습니다.

duc index /usr

이후 ls 명령으로 디렉터리 내용과 HDD에 미치는 영향을 확인할 수 있습니다.

duc ls -Fg /usr/local

Duc의 시각화 분석기로 보고 싶다면 다음 명령을 사용하세요.

duc gui /usr
리눅스에서 디스크 사용량을 확인하는 7가지 필수 도구

콘솔 인터페이스도 제공되며, 다음 명령으로 열 수 있습니다.

duc ui /usr

Duc는 디스크 내용의 데이터베이스를 유지 관리함으로써 훨씬 빠른 디스크 사용량 분석을 가능하게 합니다. 덕분에 대규모 시스템에 적합하며, Duc 공식 웹사이트는 "5억 개의 파일과 수 페타바이트의 스토리지"로 테스트를 거쳤다고 자랑합니다.

7. JDiskReport

가벼운 설치를 원한다면 JDiskReport도 좋은 선택입니다. Java 기반의 디스크 분석 도구로, Java의 특성 덕분에 크로스 플랫폼을 지원합니다. 따라서 오래되었거나 특수한 리눅스 배포판에서도 실행에 문제가 없습니다.

리눅스에서 디스크 사용량을 확인하는 7가지 필수 도구

HDD 분석이 끝나면 JDiskReport는 통계 데이터를 차트와 표 형태로 보여줍니다. 여기서 이 도구의 진가가 드러납니다. 기본적인 원형 차트는 물론, 가장 큰 파일 50개를 정리한 Top 50 목록도 제공됩니다. 파일 유형별로 가장 큰 파일들을 보여주는 화면도 있습니다.

Java는 요즘 가장 인기 있는 플랫폼은 아니고 업데이트도 번거롭지만, xdiskusage보다 향상된 리포팅 기능을 원한다면 JDiskReport가 그 답입니다.

리눅스용 디스크 사용량 도구 7선: 당신의 선택은?

기본 명령줄 도구든, 멋진 GUI 시각화 도구든, 콘솔 기반 분석이든 상관없습니다. 누구에게나 맞는 도구가 반드시 존재합니다!

리눅스 기초를 더 배우고 싶다면, 리눅스에서 파일 이름을 변경하는 방법에 대한 개요도 확인해보세요.