어떤 파일/폴더가 파일 시스템에서 가장 많은 공간을 차지하고 있는지 확인하려고 합니다.
df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 94G 85G 4.4G 96% /
tmpfs 16G 7.9G 7.9G 50% /dev/shm
/dev/sda1 477M 82M 370M 19% /boot
무엇이 공간을 차지하고 있는지 확인하기 위해 설치했지만 ncdu
여전히 대부분의 공간을 차지하는 요소를 찾을 수 없습니다.
1.9 GiB [## ] /var
1.2 GiB [# ] /usr
372.8 MiB [ ] /lib
129.7 MiB [ ] /tmp
79.3 MiB [ ] /boot
74.8 MiB [ ] /root
28.6 MiB [ ] /etc
18.4 MiB [ ] /lib64
18.1 MiB [ ] /opt
10.8 MiB [ ] /sbin
편집하다
이 스레드를 게시하기 전에 일부 대용량 로그 파일을 삭제했습니다. 에서 큰 차이를 보이는 것이 이상하다고 생각합니다 df -h
. @Pavel Šimerda가 제안한 대로 소프트 재부팅을 수행했고 이것이 결과입니다.
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 94G 3.9G 85G 5% /
tmpfs 16G 236M 16G 2% /dev/shm
/dev/sda1 477M 86M 366M 20% /boot
이 경우 재시작이 필요한 이유는 무엇입니까?
답변1
다른 답변에 언급된 모든 도구는 기본적으로 동일한 방식으로 작동하며 표시 방식만 다릅니다. 내가 가장 좋아하는 것은 전자를 사용할 수 없을 때 그것을 사용하는 ncdu
날 입니다. du
이제 문제는 사용된 총 공간이 디스크에 있는 모든 파일의 합보다 훨씬 큰 이유와 재부팅이 이에 어떤 영향을 미치는지입니다.
먼저 알아야 할 것은모두,사용된그리고쓸 수 있는디스크 공간은 추정치일 뿐입니다. 그러나 이러한 차이는 부정확성만으로는 설명될 수 없습니다.
여기서 중요한 사실은파일 시스템에 저장된 모든 파일이 파일 시스템 트리를 통해 표시되는 것은 아닙니다.. 프로그램이 파일을 열면 해당 파일에 대한 참조가 있으므로 파일을 삭제할 수 없습니다. 어떤 이유로든 파일이 트리에서 제거되면 프로그램이 해당 파일에 대한 참조를 유지하는 한 해당 파일은 파일 시스템에 남아 있습니다.
당신은 할 수삭제된 열린 파일 나열다음 명령을 사용하여 시스템에서 삭제된 파일을 저장하는 프로세스와 해당 파일의 크기를 확인하세요.
lsof -n | grep '(deleted)'
재부팅한 후에는 깨끗한 상태에서 시작하게 되며 문제의 프로세스가 삭제된 파일에 그렇게 많은 데이터를 입력하지 않았을 수 있습니다.
사용 통계 세부 정보는 파일 시스템 형식에 따라 다릅니다.
답변2
GUI 실행이 마음에 들지 않으면 GUI를 설치하고 실행한 baobab
다음 분석하려는 하드 드라이브를 클릭하십시오.
답변3
ncdu
일반적으로 올바르게 보고됩니다. sudo
이전에 사용해 본 적이 있나요?
또한 루트에 보존된 블록이 있는지 확인할 수도 있습니다. 일반적으로 전체 공간의 5%가 루트에 의해 예약되어 있지만 귀하의 경우에는 많은 공간이 있는 것 같습니다. 어쨌든 예약된 블록 수를 확인하려면 다음 명령을 실행하십시오.
sudo tune2fs -l /dev/sda5 | grep "Block count\|Reserved block count"
그런 다음 "예약된 블록 수"와 전체 "블록 수"를 비교하여 백분율을 확인할 수 있습니다.
답변4
다음을 실행해 보세요.
du -ha --max-depth 1 2>/dev/null | sort -hr
현재 디렉터리의 모든 파일과 디렉터리를 사람이 읽을 수 있는 형식으로 내림차순으로 정렬하여 인쇄합니다.
명령줄 도구를 고려할 때 이것이 가장 읽기 쉬운 옵션이라고 생각합니다.