Работа с логами в Linux // Бесплатный урок OTUS
Innehållsförteckning:
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ånfind
kommandot rörs tillxargs
som körls -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 diskterminalIbland kan kopiering eller flyttning av filer vara mycket irriterande. Ett av de vanligaste problemen när du arbetar på datorn är att långsammare kopiering eller flyttning av filer går snabbt, speciellt vid överföring av stora filer. Om du regelbundet överför en stor mängd filer och vill öka hastigheten på att kopiera eller flytta filer,
File Fisher
Hitta, ta bort stora filer på Windows hårddisk med windirstat
Så här hittar du och tar bort stora filer på din Windows hårddisk med WinDirStat.
Daisydisk: bästa appen för att hitta stora filer på Mac: s hårddisk
En recension av DaisyDisk, den bästa appen för att utforska din hårddisk för stora filer och mappar.