아무것도 설치하지 않고 디스크 공간을 모두 차지하는 대용량 파일을 어떻게 찾을 수 있나요?

아무것도 설치하지 않고 디스크 공간을 모두 차지하는 대용량 파일을 어떻게 찾을 수 있나요?

따라서 문제는 파일 시스템 관리를 위한 반짝이는 도구를 보여주는 모든 튜토리얼이 시스템이 거대한 파일로 완전히 막혀 있고 삭제할 것이 아무것도 없다는 것을 알고 있다면 그다지 유용하지 않다는 것입니다.

이것이 내 상황입니다. 개발 VM이 있고 테스트 데이터로 완전히 채워져 있지만 어디에 있는지 잘 모르겠습니다(단순히 디스크에 쓰는 것 이상을 수행하기에는 추상화 계층이 너무 많습니다). 삭제할 수 있는 것이 많지 않고 소스 코드와 기본 운영 체제만 삭제할 수 있다는 것을 알고 있었습니다. 디스크 공간이 없기 때문에 많은 명령이 작동하지 않습니다.

이 테스트 파일의 최종 위치를 찾고 삭제하려면 어떻게 해야 합니까?

답변1

다음을 시도해 보세요.

find /directory -type f -size +10G

원하는 크기에 적합한 10G

답변2

디스크 공간 사용량을 확인하는 또 다른 방법은 를 사용하는 것입니다 du. 를
사용하면 du다음 플래그를 사용하여 대량의 드라이브 사용량을 분류할 수 있습니다. -s요약하는 것은(예: 총 대상 수만 표시하는 것입니다.) -h(예: 100K 또는 212M 또는 89G.)는 -c최종적으로 얻은 총 사용량입니다. -x파일 시스템에서 검색을 유지하는 것입니다(예를 들어 이 명령을 실행할 때 /mnt에서 수행한 것처럼 검색 어딘가에 파일 시스템이 마운트된 경우 OS 드라이브에서).

예를 들면 다음과 같습니다.

 ~ # du -shcx /*
11M     /bin
4.0K    /boot
0       /dev
24M     /etc
212G    /home
2.6G    /lib
18M     /lib64
16K     /lost+found
4.0K    /media
2.6G    /mnt
188G    /opt
du: cannot access '/proc/24898/task/24898/fd/4': No such file or directory
du: cannot access '/proc/24898/task/24898/fdinfo/4': No such file or directory
du: cannot access '/proc/24898/fd/4': No such file or directory
du: cannot access '/proc/24898/fdinfo/4': No such file or directory
0       /proc
15G     /root
2.4M    /run
16M     /sbin
0       /sys
1.1M    /tmp
131G    /usr
21G     /var
570G    total

그리고 사용량이 가장 많은 곳을 찾으면 해당 디렉터리로 한 단계 더 드릴다운하여 모든 드라이브 공간을 사용하는 파일이 있는 위치를 찾을 때까지 계속 진행하세요.

도움이 되길 바랍니다.

답변3

다음을 사용하거나 설치된 du다른 시스템에서 디스크 사용량을 확인하고 분석 할 수 있습니다.xduxdiskusage

ssh user@vm 'du -xak / | gzip -1' | gunzip | xdiskusage

파일/디렉토리 이름에 개행 문자가 포함되어 있지 않다고 가정합니다. 가능하다면:

ssh user@vm 'du -0xak / | gzip -1' | gunzip | tr '\0\n' '\n?' | xdiskusage

?(줄 바꿈은 에서와 같이 렌더링됩니다 xdiskusage).

삭제되었지만 일부 프로세스에서 여전히 사용되고 있는 파일이 디스크 공간을 사용할 수 있습니다. 바라보다열려 있지만 삭제된 대용량 파일 찾기 및 삭제그런 분들을 위해.

관련 정보