실용적인 예제를 포함한 Linux df 명령어

LinuxBeginner
지금 연습하기

소개

이 랩에서는 Linux 에서 df 명령어를 사용하는 방법을 배우게 됩니다. df (disk free) 명령어는 시스템 파일 시스템의 전체 공간, 사용된 공간 및 사용 가능한 공간에 대한 정보를 표시하는 필수 유틸리티입니다. 기본적인 명령어부터 시작하여 출력을 더 읽기 쉽게 만드는 방법, 특정 경로에 대한 사용량 확인, 그리고 마지막으로 필요한 정보만 표시하도록 출력을 사용자 정의하는 방법을 배우게 됩니다. 이 랩이 끝나면 Linux 시스템에서 디스크 공간을 모니터링하기 위해 df를 편안하게 사용할 수 있게 될 것입니다.

Linux Commands Cheat Sheet

기본 디스크 사용량 보고

먼저 df 명령어의 기본 사용법과 출력을 더 읽기 쉽게 포맷하는 방법을 배우게 됩니다. 이 랩의 모든 명령어는 터미널에서 실행됩니다.

터미널을 열고 옵션 없이 df 명령어를 실행합니다:

df

마운트된 모든 파일 시스템에 대한 보고서가 표시됩니다. 출력은 다음과 유사하게 나타납니다:

Filesystem     1K-blocks     Used Available Use% Mounted on
overlay         20971520   128764  20842756   1% /
tmpfs              65536        0     65536   0% /dev
tmpfs            8052892        0   8052892   0% /sys/fs/cgroup
shm                65536        0     65536   0% /dev/shm
/dev/nvme1n1   104806400 20643324  84163076  20% /etc/hosts
tmpfs            8052892        0   8052892   0% /proc/acpi
tmpfs            8052892        0   8052892   0% /proc/scsi
tmpfs            8052892        0   8052892   0% /sys/firmware

기본적으로 디스크 공간은 1 킬로바이트 블록으로 표시되는데, 이는 해석하기 어려울 수 있습니다. 출력을 더 사용자 친화적으로 만들려면 -h (human-readable) 옵션을 사용합니다. 이 옵션은 크기를 1024 의 거듭제곱 (예: 메가바이트는 M, 기가바이트는 G) 으로 표시합니다.

-h 옵션으로 df 명령어를 실행합니다:

df -h

이제 출력을 훨씬 더 쉽게 이해할 수 있습니다:

Filesystem      Size  Used Avail Use% Mounted on
overlay          20G  126M   20G   1% /
tmpfs            64M     0   64M   0% /dev
tmpfs           7.7G     0  7.7G   0% /sys/fs/cgroup
shm              64M     0   64M   0% /dev/shm
/dev/nvme1n1    100G   20G   81G  20% /etc/hosts
tmpfs           7.7G     0  7.7G   0% /proc/acpi
tmpfs           7.7G     0  7.7G   0% /proc/scsi
tmpfs           7.7G     0  7.7G   0% /sys/firmware

각 열에 대한 설명은 다음과 같습니다:

  • Filesystem: 스토리지 장치의 이름입니다.
  • Size: 파일 시스템의 총 크기입니다.
  • Used: 현재 사용 중인 공간의 양입니다.
  • Avail: 사용 가능한 공간의 양입니다.
  • Use%: 사용된 디스크 공간의 백분율입니다.
  • Mounted on: 파일 시스템이 마운트된 디렉토리입니다.

특정 경로 확인

df 명령어는 특정 파일이나 디렉토리가 포함된 파일 시스템에 대한 보고도 할 수 있습니다. 이는 특정 디렉토리가 있는 파티션에 남은 공간을 알고 싶을 때 유용합니다. df는 디렉토리 자체의 크기가 아닌 전체 파일 시스템에 대한 정보를 보고한다는 점을 기억하는 것이 중요합니다.

먼저 루트 디렉토리 (/) 로 표현되는 디스크 사용량을 확인합니다:

df -h /

출력은 시스템 루트에 마운트된 파일 시스템에 대한 세부 정보를 보여줍니다:

Filesystem      Size  Used Avail Use% Mounted on
overlay          20G  126M   20G   1% /

다음으로 현재 작업 디렉토리의 디스크 사용량을 확인합니다. 터미널의 기본 경로는 홈 디렉토리 안에 있는 ~/project입니다. 현재 디렉토리를 나타내기 위해 점 (.) 을 사용할 수 있습니다.

df -h .

출력은 ~/project 디렉토리가 위치한 파일 시스템의 디스크 사용량을 보여줍니다. 이 환경에서는 루트 파일 시스템과 동일합니다:

Filesystem      Size  Used Avail Use% Mounted on
overlay          20G  126M   20G   1% /

이는 프로젝트 디렉토리가 메인 파일 시스템에 있으며 해당 파티션의 총 사용 가능한 공간을 보여준다는 것을 확인시켜 줍니다.

파일 시스템 유형 및 아이노드 정보 표시

디스크 공간 외에도 df는 파일 시스템 유형 및 아이노드 사용량과 같은 유용한 세부 정보를 제공할 수 있습니다.

파일 시스템 유형을 표시하려면 -T (print-type) 옵션을 사용합니다. 이 옵션은 출력에 Type 열을 추가하여 overlay, tmpfs 또는 xfs와 같은 형식을 보여줍니다.

다음 명령어를 실행하여 사람이 읽기 쉬운 형식으로 파일 시스템 유형을 확인합니다:

df -hT

이제 출력에 Type 열이 포함됩니다:

Filesystem     Type     Size  Used Avail Use% Mounted on
overlay        overlay   20G  126M   20G   1% /
tmpfs          tmpfs     64M     0   64M   0% /dev
tmpfs          tmpfs    7.7G     0  7.7G   0% /sys/fs/cgroup
shm            tmpfs     64M     0   64M   0% /dev/shm
/dev/nvme1n1   xfs      100G   20G   81G  20% /etc/hosts
tmpfs          tmpfs    7.7G     0  7.7G   0% /proc/acpi
tmpfs          tmpfs    7.7G     0  7.7G   0% /proc/scsi
tmpfs          tmpfs    7.7G     0  7.7G   0% /sys/firmware

아이노드 사용량도 확인할 수 있습니다. 아이노드 (inode) 는 파일 시스템에서 파일이나 디렉토리에 대한 이름과 실제 데이터를 제외한 모든 정보를 저장하는 데이터 구조입니다. 파일 시스템은 디스크 공간이 여전히 남아 있더라도 아이노드가 부족해질 수 있습니다. 아이노드 사용량을 확인하려면 -i 옵션을 사용합니다.

df -i

이 명령어는 총 아이노드 수와 사용 중인 아이노드 및 사용 가능한 아이노드 수를 표시합니다:

Filesystem       Inodes  IUsed    IFree IUse% Mounted on
overlay        52428800 657612 51771188    2% /
tmpfs           2013223     16  2013207    1% /dev
tmpfs           2013223     17  2013206    1% /sys/fs/cgroup
shm             2013223      1  2013222    1% /dev/shm
/dev/nvme1n1   52428800 657612 51771188    2% /etc/hosts
tmpfs           2013223      1  2013222    1% /proc/acpi
tmpfs           2013223      1  2013222    1% /proc/scsi
tmpfs           2013223      1  2013222    1% /sys/firmware

출력 사용자 정의

스크립팅 또는 특정 보고 요구 사항을 위해 특정 열만 표시하고 싶을 수 있습니다. df 명령어는 보고서에 표시되는 필드를 사용자 정의하기 위한 --output 옵션을 제공합니다.

보고 싶은 필드 목록을 지정할 수 있습니다. 일반적인 필드에는 source (파일 시스템), fstype (파일 시스템 유형), size, used, avail, pcent (사용률), target (마운트 지점) 등이 있습니다.

파일 시스템 소스, 크기, 사용된 공간, 사용 가능한 공간 및 마운트 지점을 모두 사람이 읽기 쉬운 형식으로 표시하는 사용자 정의 보고서를 만들어 보겠습니다.

df -h --output=source,size,used,avail,target

이 명령어는 요청한 열만 포함된 깔끔하고 사용자 정의된 테이블을 생성합니다:

Filesystem      Size  Used Avail Mounted on
overlay          20G  126M   20G /
tmpfs            64M     0   64M /dev
tmpfs           7.7G     0  7.7G /sys/fs/cgroup
shm              64M     0   64M /dev/shm
/dev/nvme1n1    100G   20G   81G /etc/hosts
tmpfs           7.7G     0  7.7G /proc/acpi
tmpfs           7.7G     0  7.7G /proc/scsi
tmpfs           7.7G     0  7.7G /sys/firmware

이 기능은 간결한 보고서를 생성하거나 다른 스크립트에 데이터를 전달하는 데 강력하며, 출력 형식을 정확하게 제어할 수 있습니다.

요약

이 실습에서는 Linux 에서 파일 시스템 디스크 공간을 모니터링하기 위해 df 명령어를 사용하는 방법을 배웠습니다. 기본 명령어로 시작한 다음 -h 옵션을 사용하여 사람이 읽기 쉬운 출력을 얻었습니다. 또한 특정 경로에 대한 디스크 공간을 확인하는 연습을 했으며, df가 전체 파일 시스템을 보고한다는 중요한 차이점을 배웠습니다. 마지막으로 파일 시스템 유형을 보기 위한 -T, 아이노드 사용량을 확인하기 위한 -i, 사용자 정의 보고서를 만들기 위한 --output과 같은 고급 옵션을 살펴보았습니다. 이러한 기술은 모든 Linux 사용자 또는 시스템 관리자에게 필수적입니다.

Linux Commands Cheat Sheet