Hur man optimerar lagringsutrymmet på Linux

15 min läsning - 22 maj 2026

hero section cover
Innehållsförteckning
  • Hur man optimerar lagringsutrymmet på Linux
  • Hitta vad som använder din disk
  • Rensa paketcacher, loggar och dubbletter
  • Optimering på filsystemnivå
  • Automatisera underhåll av lagringsutrymme
  • Få varje gigabyte att räknas
Dela

Praktiska tekniker för att återvinna och optimera diskutrymme på Linux-servrar, från rensning av paketcache till filsystemjustering och automatiserat underhåll.

Hur man optimerar lagringsutrymmet på Linux

I åratal var det enkla svaret på en full disk att lägga till mer lagringsutrymme. Lagringsutrymme var billigt. Så är inte längre fallet. Priserna på NAND-flashminnen har stigit kraftigt sedan slutet av 2025, drivet av efterfrågan på AI-infrastruktur som tar upp den globala produktionskapaciteten. Kontraktspriserna för SSD-enheter för företag steg med 85–90 % bara under första kvartalet 2026, konsumentpriserna på NVMe-enheter har ungefär fördubblats och ny produktionskapacitet för NAND-minnen förväntas inte komma igång förrän 2027.

Resultatet: varje gigabyte på din server kostar mer än för ett år sedan, och det gör att det är en mycket bättre investering att optimera det du redan har än att köpa dig ur situationen. Det här inlägget handlar om hur du hittar vad som tar upp ditt diskutrymme, rensar upp det och konfigurerar ditt filsystem för att använda lagringsutrymmet mer effektivt.


 

Hitta vad som använder din disk

Börja med df -h för att få en översikt över alla monterade filsystem, inklusive total storlek, använt utrymme och användningsprocent. Alla partitioner över 90 % behöver uppmärksammas. Kontrollera specifika partitioner individuellt om det behövs:

df -h /
df -h /boot

Glöm inte inoder. Ett filsystem kan ha ledigt utrymme men inga tillgängliga inoder, vilket orsakar samma fel. Kontrollera med df -i.

Om df visar 100 % användning men siffrorna inte stämmer, har du troligen spökfiler. Det är filer som har raderats men som fortfarande hålls öppna av en körande process. Utrymmet återvinns inte förrän processen släpper filhandtaget. Hitta dem med:

sudo lsof / | grep deleted

När du vet vilka filsystem som är under press, granska katalogerna med du eller ncdu. För snabba kontroller eller skriptning är du är rätt verktyg:

du -h --max-depth=1 /var

Lägg till -x när du skannar från roten för att stanna kvar på ett enda filsystem och hoppa över virtuella monteringar som /proc. För interaktiv utforskning på en fjärrserver ncdu ger dig ett navigerbart textgränssnitt där du kan sortera efter storlek och ta bort filer direkt.

Funktionduncdu
GränssnittStatisk kommandoradsutmatningInteraktivt TUI med navigering med piltangenterna
Bäst förSkriptning och snabba kontrollerManuell utforskning på fjärrservrar
SorteringKräver piping till sortInbyggt (efter storlek, namn osv.)
Radera filerSeparat rm kommandoInbyggt (tryck d)

Rensa paketcacher, loggar och dubbletter

Tre områden står konsekvent för det mesta av det utrymme som kan återvinnas: paketcacher, loggfiler och stora eller dubbla filer.

Paketcacher och övergivna beroenden

Varje installation eller uppdatering lämnar efter sig cachade paketfiler. Med tiden samlas dessa på hög i det tysta. Rensa dem utifrån din distribution:

UppgiftDebian/Ubuntu (APT)Fedora/RHEL (DNF)Arch (Pacman)
Rensa cachesudo apt cleansudo dnf clean allsudo paccache -r
Ta bort övergivna filersudo apt autoremovesudo dnf autoremovepacman -Rs $(pacman -Qdtq)
Rensa bort kvarvarande konfigurationersudo apt autoremove --purgeHanteras av autoremoveEj tillämpligt

Förhandsgranska ändringarna först med sudo apt autoremove --dry-run. Gamla kärnor kan ta upp 1,5 GB eller mer på Ubuntu-system. Behåll alltid den aktiva kärnan och en säkerhetskopia innan du tar bort äldre versioner.

Om du använder Snap eller Flatpak ackumuleras även revisioner och körningar:

sudo snap set system refresh.retain=2
flatpak uninstall --unused

Loggfiler i /var/log

Loggfiler är den vanligaste tysta diskplåtsslukaren. Leta först efter överdimensionerade loggfiler:

du -xhd1 /var/log | sort -h
find /var/log -type f -size +100M

För systemd-journaler, använd det inbyggda verktyget vacuum istället för att radera filer manuellt:

sudo journalctl --vacuum-size=500M

För att ställa in en permanent gräns, redigera /etc/systemd/journald.conf:

SystemMaxUse=500M
MaxRetentionSec=14day

För aktiva loggfiler som fortfarande hålls öppna av en tjänst, använd inte rm. Utrymmet frigörs inte så länge processen håller fast filbeskrivaren. Trunkera istället:

sudo truncate -s 0 /var/log/syslog

Stora och dubbla filer

Hitta filer över 500 MB i hela systemet:

sudo find / -type f -size +500M -exec ls -lh {} +

För dubbletter rmlint använder hash-baserade jämförelser för att upptäcka dubbletter, tomma kataloger och trasiga symboliska länkar. Granska utdata noggrant innan du tar bort något, särskilt på servrar där identiska filer kan ha olika roller.

Optimering på filsystemnivå

Efter att ha rensat upp filer kan du få ut mer användbart utrymme ur samma hårdvara genom att finjustera ditt filsystem.

Minska ext4:s reserverade utrymme

Som standard reserverar ext4 5 % av filsystemet för roten. På en datapartition på 2 TB innebär det 100 GB som ligger oanvänt. På en dedikerad server där datapartitionen inte är rotsystemet kan du säkert minska detta:

sudo tune2fs -m 1 /dev/sdXn

Detta ställer in reserveringen till 1 %, vilket är tillräckligt för de flesta användningsfall. Verifiera ändringen med tune2fs -l /dev/sdXn.

Btrfs transparent komprimering

Btrfs stöder transparent filkomprimering, vilket ext4 och XFS inte erbjuder. Montera med compress=zstd för att komprimera data automatiskt vid skrivning. ZSTD ger en bra balans mellan hastighet och komprimeringsgrad. För arbetsbelastningar med blandade filer compress-force=zstd kan ge ytterligare 10–20 % besparing genom att komprimera filer som heuristiken normalt skulle hoppa över.

Så här komprimerar du befintliga data på en Btrfs-volym:

btrfs filesystem defragment -czstd /path/to/dir

Var försiktig med detta på volymer som har snapshots eller reflinks. Defragmentering bryter Copy-on-Write-relationer, vilket faktiskt kan öka diskanvändningen.

Både XFS och Btrfs stöder reflinks, som skapar filkopior som delar fysiska block tills en kopia ändras. Detta är användbart för att klona VM-diskavbilder eller containerlager utan att fördubbla lagringsförbrukningen:

cp --reflink=always source.img clone.img

LVM Thin Provisioning

LVM thin provisioning låter dig allokera mer logiskt utrymme än du fysiskt har, och förbrukar endast verklig diskutrymme när data skrivs. Detta är värdefullt när du kör flera virtuella maskiner eller containrar som var och en behöver sin egen logiska volym men som inte alla fyller dem samtidigt.

För att förhindra att tunna pooler sinar, aktivera automatisk utökning i /etc/lvm/lvm.conf genom att ställa in thin_pool_autoextend_threshold och thin_pool_autoextend_percent.

Automatisera underhåll av lagringsutrymme

Manuella rensningar fungerar en gång. Automatiserade rensningar håller dina diskar i gott skick fram till nästa gång du loggar in. Använd systemd timers där cron där det är möjligt. De loggar utdata journalctl automatiskt, och Persistent=true hämtar de missade körningarna efter en omstart.

VerktygVerktygFrekvens
LoggrotationlogrotateDagligen eller veckovis
Dammsugning av dagbokenjournalctl --vacuum-timeVeckovis
Rensning av paketcacheapt clean / dnf clean allVarje månad
Rensning av temporära filersystemd-tmpfilesDagligen
Rensning av Dockerdocker system pruneVeckovis
Övervakning av diskanvändningAnpassat skript + systemd-timerVar 15–30 minut

Docker förtjänar särskild uppmärksamhet. Containerloggar kan växa utan någon synlig varning. Begränsa loggstorleken globalt genom att redigera /etc/docker/daemon.json. Ställ in max-size och max-file under log-opts nyckeln för att förhindra att enskilda containrar fyller din disk.

För proaktiv övervakning, konfigurera ett tvåstegs varningssystem: en varning vid 80 % diskanvändning och en kritisk varning vid 90 %. Logga diskanvändningen varje timme så att du kan spåra tillväxttrender och förutsäga när en partition når sin kapacitetsgräns:

0 * * * * df --output=source,size,used,pcent >> /var/log/disk_usage.csv

Ytterligare en säkerhetsåtgärd: montera /var, /tmpoch /home på separata partitioner. Detta förhindrar att okontrollerade loggar eller användardata tar över rotsystemet och kraschar hela systemet.

Få varje gigabyte att räknas

Med stigande priser på lagringsutrymme och ingen förbättring i sikte förrän den nya NAND-produktionen kommer igång 2027, är det inte bara god praxis att optimera det man har. Det sparar faktiskt pengar. Tillvägagångssättet är enkelt:

  • Granska din diskanvändning med df, du, och ncdu innan du gör några ändringar.
  • Rensa paketcacher, rotera loggar och ta bort dubbletter för att omedelbart frigöra utrymme.
  • Optimera ditt filsystem. Minska antalet reserverade block i ext4, aktivera Btrfs-komprimering eller använd LVM thin provisioning för att få ut mer av samma hårdvara.
  • Automatisera underhållet med systemd-timers så att dina diskar förblir rena mellan granskningarna.
  • Övervaka användningstrender och ställ in varningar vid 80 % och 90 % för att upptäcka problem i ett tidigt skede.

Om du behöver en dedikerad serverinfrastruktur med högpresterande NVMe-lagring är FDC:s dedikerade servrar byggda för just det.

Blogg

Utvalda denna vecka

Fler artiklar
Varför det är viktigt att ha en kraftfull och omättad VPS

Varför det är viktigt att ha en kraftfull och omättad VPS

Behöver du tillförlitlig prestanda och obegränsad trafik? En kraftfull VPS utan mätning erbjuder den hastighet, skalbarhet och bandbredd du behöver, utan att du behöver oroa dig för användningsgränser.

3 min läsning - 9 maj 2025

Hur man optimerar lagringsutrymmet på Linux

15 min läsning - 22 maj 2026

Fler artiklar
background image

Har du frågor eller behöver du en anpassad lösning?

icon

Flexibla alternativ

icon

Global räckvidd

icon

Omedelbar driftsättning

icon

Flexibla alternativ

icon

Global räckvidd

icon

Omedelbar driftsättning