Android

Hitta stora filer i Linux

Работа с логами в Linux // Бесплатный урок OTUS

Работа с логами в Linux // Бесплатный урок OTUS

Innehållsförteckning:

Anonim

Med tiden kan din hårddisk bli rörig med många onödiga filer som tar stora mängder diskutrymme. Vanligtvis har Linux-system slut på diskutrymme på grund av stora logg- eller säkerhetsfiler.

Denna handledning förklarar hur man hittar de största filerna och katalogerna i Linux-system med hjälp av kommandona find och du .

Hitta stora filer med sökkommandot

Sökkommandot är ett av de mest kraftfulla verktygen i Linux-systemadministratörsarsenalen. Det låter dig söka efter filer och kataloger baserat på olika kriterier inklusive filstorlek.

Om du till exempel vill söka efter filer med en storlek som är större än 100MB använder du följande kommando i den aktuella arbetskatalogen:

sudo find. -xdev -type f -size +100M Byt ut . med sökvägen till katalogen där du vill söka efter de största filerna.

Utmatningen visar en lista med filer utan ytterligare information.

/var/lib/libvirt/images/centos-7-desktop_default.img /var/lib/libvirt/images/bionic64_default.img /var/lib/libvirt/images/win10.qcow2 /var/lib/libvirt/images/debian-9_default.img /var/lib/libvirt/images/ubuntu-18-04-desktop_default.img /var/lib/libvirt/images/centos-7_default.img

Sökkommandot kan också användas i kombination med andra verktyg som ls eller sort att utföra operationer på dessa filer.

I exemplet nedan överför vi utdata från find kommandot till ls som kommer att skriva ut storleken på varje hittad fil och sedan rör den som matas ut till sort att sortera den baserat på den femte kolumnen som är filstorleken.

find. -xdev -type f -size +100M -print | xargs ls -lh | sort -k5, 5 -h -r

Utgången ser ut så här:

-rw------- 1 root root 40967M Jan 5 14:12 /var/lib/libvirt/images/win10.qcow2 -rw------- 1 root root 3725M Jan 7 22:12 /var/lib/libvirt/images/debian-9_default.img -rw------- 1 root root 1524M Dec 30 07:46 /var/lib/libvirt/images/centos-7-desktop_default.img -rw------- 1 root root 999M Jan 5 14:43 /var/lib/libvirt/images/ubuntu-18-04-desktop_default.img -rw------- 1 root root 562M Dec 31 07:38 /var/lib/libvirt/images/centos-7_default.img -rw------- 1 root root 378M Jan 7 22:26 /var/lib/libvirt/images/bionic64_default.img

Om utgången innehåller många informationer kan du använda huvudkommandot för att bara skriva ut de första 10 raderna:

find. -xdev -type f -size +100M -print | xargs ls -lh | sort -k5, 5 -h -r | head

Låt oss bryta ner kommandot:

  • find. -xdev -type f -size +100M -print find. -xdev -type f -size +100M -print - sök bara efter filer ( -type f ) i den aktuella arbetskatalogen ( . ), större än 100MB ( -size +100M ), -size +100M inte ner kataloger på andra filsystem ( -xdev ) och skriv ut det fulla filnamnet på standardutgången, följt av en ny rad ( -print ). xargs ls -lh - utdata från find kommandot rörs till xargs som kör ls -lh kommandot som kommer att skriva ut utdatorn i en lång lista med mänskligt läsbart format. sort -k5, 5 -h -r - sortera rader baserade på den femte kolumnen ( -k5, 5 ), jämföra värdena i mänskligt läsbart format ( -h ) och vänd resultatet ( -r ). head : skriver endast de första 10 linjerna i den pipade utgången.

Sökkommandot kommer med många kraftfulla alternativ. Du kan till exempel söka efter stora filer som är äldre än x dagar, stora filer med en specifik förlängning eller stora filer som tillhör en viss användare.

Hitta stora filer och kataloger med du kommandot

du kommandot används för att uppskatta användningen av filutrymme och det är särskilt användbart för att hitta kataloger och filer som förbrukar stora mängder diskutrymme.

Följande kommando skriver ut de största filerna och katalogerna:

du -ahx. | sort -rh | head -5

Den första kolumnen innehåller filstorleken och den andra filnamnet:

55G. 24G./.vagrant.d/boxes 24G./.vagrant.d 13G./Projects 5.2G./.minikube

Förklaring av kommandot:

  • du -ahx. : uppskatta användningen av hårddiskutrymme i den aktuella arbetskatalogen ( . ), räkna både filer och kataloger ( a ), utskriftsstorlekar i ett mänskligt läsbart format ( h ) och hoppa över kataloger på olika filsystem ( x ). sort -rh : sortera rader genom att jämföra värden i mänskligt läsbart format ( -h ) och vända resultatet ( -r ). head -5 : skriver endast ut de första fem linjerna i den pipade utgången.

du kommandot innehåller andra alternativ som du kan använda för att förfina utgången från diskutrymmet.

Slutsats

Att hitta stora filer är mycket användbart när din disk är full och du vill frigöra den.

Nu när du har hittat de största filerna på ditt system kanske du vill läsa vår guide om hur du tar bort filer och kataloger med Linux-kommandoraden.

hitta diskterminal