내 AWS EC2 인스턴스 중 하나가 222GB 이상을 차지하고 있습니다. 그런데 놀랍게도 /root 폴더를 확인해 보니 5MB 크기의 파일이 하나 발견되었습니다. 디스크 공간을 지우는 방법과 222GB의 디스크 공간을 차지하는 숨겨진 파일을 모두 찾는 방법을 잘 모르겠습니다.
내가 이 명령을 내릴 때 - du -shx /*
: 이것은 내가 얻은 출력입니다 -
0 /bin
88M /boot
0 /dev
31M /etc
86M /home
0 /lib
0 /lib64
0 /local
0 /media
0 /mnt
2.2G /opt
du: cannot access ‘/proc/7699/task/7699/fd/3’: No such file or directory
du: cannot access ‘/proc/7699/task/7699/fdinfo/3’: No such file or directory
du: cannot access ‘/proc/7699/fd/3’: No such file or directory
du: cannot access ‘/proc/7699/fdinfo/3’: No such file or directory
du: cannot access ‘/proc/7828’: No such file or directory
0 /proc
222G /root
1.7M /run
0 /sbin
0 /srv
0 /sys
0 /tmp
3.1G /usr
5.7G /var
/root 폴더를 지우는 방법은 무엇입니까? 이 명령을 실행하면 du -shx /root/*
방금 5MB 파일을 찾았지만 222GB의 디스크 공간을 차지합니다.
답변1
나도 비슷한 문제에 직면했지만 대신 내 집 파티션에 직면했습니다.
나는 다음과 같이 각 하위 디렉터리의 크기를 좀 더 시각적으로 나타내는 방법을 사용했습니다.듀트리-s 플래그와 함께 명령을 실행하면 dutree -s
선택한 디렉토리에서 더 최소한의 결과를 얻을 수 있습니다.
답변2
ncdu를 사용할 수 있습니다. 이 소프트웨어는 원하는 디렉터리를 검색하고 이를 탐색하여 파일/폴더의 현재 크기를 나열할 수 있습니다.
설치되지 않은 경우:
적절한 ncdu 설치
이후: ncdu -rx /
이렇게 하면 루트부터 모든 항목을 재귀적으로 검색합니다(/root 폴더와 혼동하지 않도록 주의). 그런 다음 파일 시스템을 탐색하고 무엇이 공간을 차지하는지 확인할 수 있습니다.
답변3
이 명령은 du -shx /root/*
해당 폴더에서 glob과 일치하는 모든 파일을 찾습니다 *
. 기본적으로 숨겨진 파일과 디렉터리는 제외됩니다.
shopt -s dotglob
globbing 동작을 변경하는 데 사용하거나 /root/.*
경로 목록에 명시적으로 나열할 수 있습니다. 후자는 놀라운 효과가 적을 가능성이 높습니다.