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