본문 바로가기
리눅스

df (Unix)

by 다움위키 2023. 12. 19.

df (disk free에 대한 약어)는 호출하는 사용자가 적절한 읽기 접근 권한을 가지는 파일 시스템에 사용 가능한 디스크 공간의 양을 표시하기 위해 사용되는 표준 유닉스 명령입니다. df는 전형적으로 statfs 또는 statvfs 시스템 호출을 사용하여 구현됩니다.

History

유닉스-계열 시스템에 대해 df는 1987년 2호부터 X/Open 이식성 가이드의 일부입니다. 그것은 POSIX의 첫 번째 버전과 단일 유닉스 사양으로 상속되었습니다. 그것은 버전 1 AT&T 유닉스에서 처음 등장했습니다.

GNU coreutils에서 df의 버전은 Torbjorn Granlund, David MacKenzie, 및 Paul Eggert에 의해 작성되었습니다.

Usage

df에 대해 단일 유닉스 사양은 다음과 같습니다:

df [-k] [-P|-t] [-del] [file...]
  • -k : 공백 숫자를 작성할 때, 기본 512-바이트 단위 대신에 1024-바이트 단위를 사용합니다.
  • -P : 표준, 이식-가능, 출력 형식을 사용합니다.
  • -h : KB, MB, GB 또는 TB와 같이 사람이 읽기 쉬운 단위로 표시합니다. 
  • file : 지정된 파일을 포함하는 파일 시스템의 여유 공간의 총양을 쓰기

대부분의 유닉스유닉스-계열 운영 시스템은 여분의 옵션을 추가합니다. BSDGNU coreutils 버전은 -h를 포함하여, 여기서 여유 공간은 사람이 읽을 수 있는 형식으로 목록화되며, 적절한 SI 접두사를 갖는 단위를 추가하며 (예를 들어, 10 MB), -i, inode 사용을 나열하고, -l, 오직 로컬 파일시스템에 대한 표시를 제한합니다. GNU df는 마찬가지로 파일 시스템 유형 정보를 나열하는 -T를 포함하지만, GNU df는 기본적으로 크기를 1K 블록으로 보여줍니다.

Specification

단일 유닉스 사양 (SUS)는 원래 공간에 따라 512바이트 블록으로 보고되고, 최소한 파일 시스템 이름과 여유 공간의 양이 보고됩니다.

512-바이트 단위의 사용은 역사적 관행이고 [[ls]]와 다른 유틸리티와의 호환성을 유지합니다. 이것이 파일 시스템 자체가 512-바이트 블록을 기반으로 해야 하는 것은 아닙니다. -k 옵션이 타협 조치로 추가되었습니다. 그것은 표준 개발자에 의해 동의되었는데 512바이트가 System V에서의 완전한 역사적 일관성 때문에 (BSD시스템에서 혼합된 512/1024-바이트 사용과 대조적) 최상의 기본 단위였고 1024-바이트 단위로 전환하는 -k 옵션이 좋은 절충안이었습니다. 보다 논리적인 1024-바이트 수량을 선호하는 사용자는 512-바이트 단위에 의존하는 많은 역사적 스크립트를 손상시키지 않고 df를 df -k로 쉽게 [[Alias (Unix shell)|별칭]]을 지정할 수 있습니다.

-P를 갖는 출력은 지정된 각 파일 시스템에 대한 한 줄의 정보로 구성됩니다. 이들 줄은 다음과 같이 형식이 지정됩니다:

<fs name> <total space> <space used> <space free> <percentage used> <fs root>

다음 목록에서, 512-바이트 단위 (-k가 지정될 때 1024바이트)로 표시된 모든 수량은 다음 상위 단위로 반올림되어야 합니다. 필드는 다음과 같습니다:

  • <fs name> : 구현-정의된 형식에서, 파일 시스템 이름.
  • <total space> : 파일 시스템의 512-바이트 단위에서 전체 크기. 이 숫자의 정확한 의미는 구현-정의되지만 <space used>, <space free>, 더하기 통상적으로 사용자에 의해 사용할 수 없는 시스템에 의해 예약된 임의의 공간을 포함해야 합니다.
  • <space used> : 파일 시스템의 존재하는 파일에, 512-바이트 단위에서 할당된 전체 공간의 양.
  • <space free> : 권한 없는 사용자에 의해 새로운 파일의 생성에 대해 파일 시스템 내에서 사용할 수 있는 512-바이트 단위에서 전체 공간의 양. 이 숫자가 영보다 작거나 같을 때, 프로세스가 적절한 권한을 가지지 않으면 먼저 다른 파일을 삭제하지 않고 파일 시스템에 임의의 새로운 파일을 생성하는 것이 가능하지 않습니다. 기록된 숫자는 영보다 작을 수 있습니다.
  • <percentage used> : 파일 시스템의 모든 파일에 현재 할당된 통상적으로 사용 가능한 공간의 백분율. 이것은 다음과 같은 백분율로 표현된 분수를 사용하여 계산되어야 합니다: <사용된 공간>/(<사용된 공간> + <여유 공간>) 이 백분율은 <space free>가 영보다 작으면 100보다 클 수 있습니다. 백분율 값은 다음 가장 큰 정수로 반올림되도록 하는 임의의 분수 결과와 함께 양의 정수로 표현되어야 합니다.
  • <fs root> : 파일 시스템 계층이 나타나는 아래 디렉토리

Example

df 명령의 출력 예제:

$ df
Filesystem      1K-blocks      Used  Available Use% Mounted on
udev             48764976         0   48764976   0% /dev
tmpfs             9757068    173100    9583968   2% /run
/dev/sda2      1824504008 723009800 1008791744  42% /
tmpfs            48785328         0   48785328   0% /dev/shm
tmpfs                5120         0       5120   0% /run/lock
tmpfs            48785328         0   48785328   0% /sys/fs/cgroup
/dev/sda1          523248      3672     519576   1% /boot/efi
$ df -i
Filesystem        Inodes   IUsed     IFree IUse% Mounted on
udev            12191244     500  12190744    1% /dev
tmpfs           12196332     702  12195630    1% /run
/dev/sda2      115859456 2583820 113275636    3% /
tmpfs           12196332       1  12196331    1% /dev/shm
tmpfs           12196332       5  12196327    1% /run/lock
tmpfs           12196332      16  12196316    1% /sys/fs/cgroup
/dev/sda1              0       0         0     - /boot/efi
$ df -h
Filesystem      Size  Used Avail Use% Mounted on
udev             47G     0   47G   0% /dev
tmpfs           9.4G  170M  9.2G   2% /run
/dev/sda2       1.7T  690G  963G  42% /
tmpfs            47G     0   47G   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs            47G     0   47G   0% /sys/fs/cgroup
/dev/sda1       511M  3.6M  508M   1% /boot/efi

External links

Manual pages