it-swarm.dev

루트 파일 시스템에서 모든 큰 파일 찾기

현재 공간 사용량이 적은 Linux 서버가 있습니다.

/dev/sda3              20G   15G  4.2G  78% /
/dev/sda6              68G   42G   23G  65% /u01
/dev/sda2              30G  7.4G   21G  27% /opt
/dev/sda1              99M   19M   76M  20% /boot
tmpfs                  48G  8.2G   39G  18% /dev/shm

보시다시피 /는 78 %입니다. 공간을 소비하는 파일 또는 폴더를 확인하고 싶습니다.

나는 이것을 시도했다 :

find . -type d -size +100M

다음과 같은 결과가 표시됩니다.

./u01/app/june01.dbf
./u01/app/temp01.dbf
./u01/app/smprd501.dbf
./home/abhishek/centos.iso
./home/abhishek/filegroup128.jar

이제 이것은 내 문제입니다. / 또는 /u01가 아닌 /home에서 공간을 사용하는 폴더에있는 파일 이름 만 원합니다. /는 모든 것의 기초이므로 서버의 모든 파일을 보여줍니다.

/의 78 %에 기여하는 큰 파일을 얻을 수 있습니까?

136
Abhishek dot py

시험:

find / -xdev -type f -size +100M

크기가 100M보다 큰 모든 파일을 나열합니다.

디렉토리에 대해 알고 싶다면 ncdu를 사용해보십시오.

Linux를 실행하지 않는 경우 -size +204800 또는 -size +104857600c는 메가 바이트를 의미하는 M 접미사로 POSIX에 없습니다.

find / -xdev -type f -size +102400000c
234
cuonglm

@Gnouc answer 외에도 ls -la 자세한 내용을 알아보십시오. Sudo privileges 하기 위해서 .

$ find / -xdev -type f -size +100M -exec ls -la {} \; | sort -nk 5

기가 바이트에있는 파일 만 보려면 다음을 수행하십시오.

root# du -ahx / | grep -E '\d+G\s+'


1.8G    /.Spotlight-V100/Store-V2/A960D58E-A644-4497-B3C1-866A529BF919
1.8G    /.Spotlight-V100/Store-V2
50
zee

다음 명령은 파일 시스템에서 상위 50 개의 가장 큰 파일 (> 100M)을 찾을뿐만 아니라 (GNU sort)를 가장 큰 파일로 정렬합니다.

find / -xdev -type f -size +100M -exec du -sh {} ';' | sort -rh | head -n50

-xdev 다른 파일 시스템에서 디렉토리를 내리지 마십시오.

BSD find에서 -x 더 이상 사용되지 않는 -xdev 일 순위.

모든 파일과 디렉토리의 경우 훨씬 쉽습니다.

du -ahx / | sort -rh | head -20

(-x 플래그는 du를 단일 파일 시스템으로 제한하는 데 필요한 것입니다)

GNU sort (coreutils)에서)를 사용하지 않는 경우 -h :

du -ax / | sort -rn | head -20

현재 디렉토리 만 (더 빠른 결과를 위해) /..

47
kenorb