macOS의 APFS(Apple File System)는 파일 복제(clone) 기능을 통해 디스크 공간을 효율적으로 관리합니다. 이는 특히 개발 환경에서 pnpm, uv, git worktree 등 복제 기반의 도구를 많이 사용할 때 물리적 디스크 공간을 절약하는 데 큰 도움이 됩니다. 하지만 기존의 'du'나 DaisyDisk 같은 디스크 사용량 분석 도구들은 이러한 APFS 복제본을 독립적인 파일로 간주하여 실제보다 훨씬 많은 디스크 공간이 사용되고 있다고 잘못 보고하는 문제가 있었습니다.
새롭게 등장한 'duh'(du, honest)는 이러한 문제를 해결하기 위해 APFS의 복제 ID와 inode를 활용하여 복제 파일과 하드링크를 정확하게 감지합니다. 이 도구는 특정 디렉터리를 삭제했을 때 실제로 확보되는 디스크 공간(freeable)을 계산하여 보여줍니다. 또한, 여러 복제본이 공유하는 블록(block)의 경우, 해당 블록을 참조하는 모든 복제본이 삭제될 때 비로소 공간이 확보되는 'delete-together' 그룹을 식별해줍니다. 'duh'는 웹 서버 모드를 지원하여 브라우저에서 인터랙티브한 트리맵(treemap) 형태로 디스크 사용량을 시각적으로 탐색할 수 있으며, 분석 결과를 GitHub Gist로 공유하는 기능도 제공합니다.
이러한 'duh'의 등장은 APFS 기반의 개발 환경에서 디스크 공간 관리에 어려움을 겪던 개발자들에게 큰 도움이 될 것으로 예상됩니다. 특히 대규모 프로젝트나 여러 작업 트리를 운영하는 환경에서는 실제 디스크 사용량을 정확히 파악하고 불필요한 공간 낭비를 줄이는 데 필수적인 도구가 될 수 있습니다. 기존 도구들이 제공하지 못했던 '실제 확보 가능 공간'이라는 개념을 제시함으로써, 개발자들이 보다 합리적인 디스크 관리 결정을 내릴 수 있도록 지원한다는 점에서 의미가 큽니다.