터미널에서 목록/크기를 표시하는 가장 좋은 방법은 무엇입니까?

터미널에서 목록/크기를 표시하는 가장 좋은 방법은 무엇입니까?

전체 공간이 얼마나 차지하는지 확인하고 싶은데 /어떻게 해야 할지 모르겠습니다. 소계를 사용하여 추가할 수도 있고 파티션의 크기를 알려주는 것을 ls -hal사용할 수도 있지만 더 좋은 방법이 있을까요?fdisk

답변1

쿼리에 포함된 파일/디렉터리의 전체 크기를 묻고 있습니까 /, 아니면 루트 파일 시스템의 전체 크기를 묻고 있습니까?

전자라면 를 사용하세요 df -h /.

후자인 경우 를 사용하여 수행할 수 있는데 du -sh /, 각 파일을 열거해야 하므로 속도가 매우 느려집니다. 더 좋지만 바인드 마운트, 다른 파일 시스템에 스파스 파일로 저장되는 파일 시스템 등으로 인해 정확하지 않을 수 있습니다. df출력을 합산하세요.

답변2

일반적으로 루트 디렉터리에는 파일이 없으므로 루트 파일 시스템에서 얼마나 많은 공간이 사용되는지 알고 싶다고 가정합니다. 이를 수행하는 명령은 df(isk에프희토류).

df -h /

인수 없이 df모든 파일 시스템에 대한 사용 정보를 제공합니다(관련 없는 일부 특수한 비디스크 지원 파일 시스템 제외).

완전한 파일 시스템을 구성하지 않는 디렉터리와 해당 하위 디렉터리에서 사용하는 공간의 양을 알고 싶다면 다음을 사용하세요 du.isk현인).

답변3

  • df파일 시스템 메타데이터, 즉 파일 시스템이 현재 저장할 수 있는 내용을 보고합니다. 주목해야 할 중요한 점은 일부 파일 시스템에서는 여유 공간을 반영할 필요가 없다는 것입니다(비록 여유 공간임에도 불구하고). fs는 좋은 아이디어라고 생각할 때 미리 할당할 수 있습니다(예: XFS를 사용할 때 그렇게 할 수 있음). 이) 큰 파일 생성을 시작하면 파일이 덜 분산되도록 추가 공간을 할당하고 실제 데이터를 디스크에 써야 할 때 할당하는 데 너무 많은 시간이 걸리지 않습니다. 이러한 공간은 사용 가능으로 표시되지만 약간의 지연이 있습니다. 이 정보는 또한 파일 시스템 구조에 디스크의 일부 공간이 필요하거나 필요할 수 있다는 사실을 반영합니다. 이는 일부 파일 시스템에 이상한 영향을 미칠 수 있습니다. 즉, 100% 이상의 공간 사용량을 보고합니다.

  • du파일 시스템 블록 단위로 실제 디스크 사용량을 제공합니다(대부분의 시스템에서는 하나의 블록을 사용하여 여러 파일에 대한 데이터를 저장할 수 있는지 확실하지 않음). 명령줄에 제공되는 stat()최상위 디렉터리 계층 구조에 속하는 모든 파일을 처리해야 하기 때문에 특히 작은 파일의 경우 속도가 느립니다.du

  • stat단일 파일(또는 디렉터리)에 대한 정보를 제공합니다.

그러니 궁금하시다면:

  • ;를 사용하여 파일 시스템에 대략 얼마나 많은 여유 공간이 있습니까 df?

  • 파일에 실제로 있는 데이터의 양을 사용하십시오(반드시 단일 파일 시스템일 필요는 없음). du특히 일부 네트워크 파일 시스템에서는 속도가 쉽게 느려질 수 있다는 점에 유의하십시오.

  • 루트 디렉토리 자체가 차지하는 공간을 기록하려면 stat /.

관련 정보