Jeg syntes jeg hele tiden render ind i, at finde store filer, på alverdens systemer - primært Unix dog, og jeg bliver hele tiden spurgt - så her er et par af de ting jeg gør.
Find de 10 største filer/directories der tager mest plads
# du -ha /var | sort -n -r | head -n 10
UNIX find kan også benyttes
# find /var -type f -ls | sort -k 7 -r -n | head -10
Eller også kan du benytte et script skrevet af bob orlando.
Biggest.sh gennemsøger filsystemet efter største filer og gør dette i størrelses orden - største først. Pr. default laves der en listning med 500 filer, hvilket måske lige er i overkanten. Hvis du derimod benytter -l og antal linier/filer, på kommandolinien, får du et mere overskueligt billede.
F.eks ser et givent output, hos os ud som
#./biggest.sh -f -l 10 -v -t /home1/usr/oracle/kbirch -s 500 /oradev104
Filesystem 1024-blocks Used Available Capacity Mounted on
/dev/dsk/c8t0d36s0 70331162 68572049 1055802 99% /oradev104
04/11/07 13:27:20
find /oradev104 -follow -size +500c -exec ls -lc {} ; -o -fstype nfs -prune -o -name cdrom* -prune -print 2> /dev/null | nawk
/home1/usr/oracle/kbirch/oracle_biggest.files 10 lines, 623 characters
4,026,535,936 oracle Mar 20 09:32 var_data_1_01.dbf
4,026,535,936 oracle Mar 20 09:32 /oradev104/oradbf/DICSUDV/var_data_1_01.dbf
2,147,491,840 oracle Apr 11 13:15 omplsind_02.dbf
2,147,491,840 oracle Apr 11 13:15 omplsind_01.dbf
2,147,491,840 oracle Apr 11 13:15 dlkind_03.dbf
2,147,491,840 oracle Apr 11 13:15 dlkind_02.dbf
2,147,491,840 oracle Apr 11 13:15 dlkind_01.dbf
2,147,491,840 oracle Apr 11 13:15 /oradev104/oradbf/PTRAFTST/omplsind_02.dbf
2,147,491,840 oracle Apr 11 13:15 /oradev104/oradbf/PTRAFTST/omplsind_01.dbf
2,147,491,840 oracle Apr 11 13:15 /oradev104/oradbf/PTRAFTST/dlkind_03.dbf
NB: Læg mærke til at jeg på kommandolilnien skriver -v det betyder outputet listes i vi, kan man ikke lide det skal man ikke benytte -v
Ovenstående er dog en anelse forvirrende mht. størrelser mv. så jeg omskrev det lidt.
Hent filen ind i en editor og søg efter '-lc' (linie 187) der ændres '-ltrh'. Ligeledes (linie 235) ændres linien fra
if ((p%3) == 0 && q != 1) $siz=','$siz til if ((p%3) == 0 && q != 1) $siz=$siz
./biggest.sh -f -l 10 -t /home1/usr/oracle/kbirch -s 500 /oradev104 (denne gang uden -v)
Filesystem 1024-blocks Used Available Capacity Mounted on
/dev/dsk/c8t0d36s0 70331162 68572049 1055802 99% /oradev104
04/11/07 13:43:24
find /oradev104 -follow -size +500c -exec ls -ltrh {} ; -o -fstype nfs -prune -o -name cdrom* -prune -print 2> /dev/null | nawk
1000M oracle Mar 20 09:37 GFSTUDV_GFSTIND_01.dbf
1000M oracle Mar 20 09:37 /oradev104/oradbf/GFSTUDV/GFSTUDV_GFSTIND_01.dbf
7.8M oracle Apr 11 13:43 control02.ora
7.8M oracle Apr 11 13:43 /oradev104/oradbf/DLKTST/control02.ora
640M oracle Apr 11 13:15 loadtabellerind_01.dbf
640M oracle Apr 11 13:15 /oradev104/oradbf/PTRAFTST/loadtabellerind_01.dbf
640M oracle Apr 10 18:31 rbs_01.dbf
640M oracle Apr 10 18:31 /oradev104/oradbf/NBTST2/rbs_01.dbf
640M oracle Apr 10 18:00 temp_01.dbf
640M oracle Apr 10 18:00 /oradev104/oradbf/NBTST2/temp_01.dbf