För det mesta är Linux ganska specifikt med sina felmeddelanden. ”Det här fungerade inte – försök att installera det här paketet.” Det finns dock en speciell sak som verkligen inte hjälper mig särskilt mycket: ”Inget utrymme kvar på enheten.” Vad orsakar det? Jag trodde att jag hade 2 TB lagring, hur kan den vara full? Var börjar jag leta? Idag går vi igenom allt detta i vår guide om hur man åtgärdar felet ”Inget utrymme kvar på enheten” på Linux.
Kontrollera det utrymme som finns kvar på enheten
Innan du går vidare är det en bra idé att kontrollera att det verkligen finns utrymme kvar på disken. Medan verktygen i din skrivbordsmiljö är bra kan det vara snabbare att använda de direkta från kommandoraden.
Om du vill använda verktygen i din skrivbordsmiljö ger de dig lättlästa representationer av informationen du kan hitta med dessa verktyg. Jag använder Fedora med GNOME, och verktyget GNOME Disk Usage Analyzer visar mig följande.

Börja med du
. Peka på baskatalogen på enheten som har problemet. Låt oss anta att det är partitionen med /
.
sudo du -sh /

Det tar lite tid att gå igenom allt. Försök nu med df
.
sudo df -h

Lägg till /
och filsystemen monterade under den. Till exempel om du har /home
på en separat enhet, lägg till det med läsningen för /
. Summan ska komma ut nära det du hade med du
. Om inte, kan det peka på att en borttagen fil används av en process.
Naturligtvis är det största problemet här huruvida resultaten av dessa kommandon kommer in under storleken på enheten. Om det gjorde det är det uppenbarligen något fel.
Inget utrymme på enheten Möjliga orsaker
Det finns ett par huvudorsaker här. Om du såg en avvikelse mellan du
och df
kan du hoppa ner till det första alternativet här. Börja annars med den andra.
Borttagen fil reserverad av process
Ibland kommer en fil att raderas, men en process använder den fortfarande. Linux släpper inte lagringen som är associerad med filen medan processen fortfarande körs, men du kan hitta processen och starta om den.

Försök hitta processen.
sudo lsof / | grep deleted
Den problematiska processen bör listas. Starta bara om det.
sudo systemctl restart service_name
Om det inte är omedelbart uppenbart, gör en fullständig daemon-omladdning.
sudo systemctl daemon-reload
Inte tillräckligt med inoder
Det finns en uppsättning metadata på filsystem som kallas ”inoder”. Inoder spårar information om filer. Många filsystem har en fast mängd inoder, så det är mycket möjligt att fylla den maximala tilldelningen av inoder utan att fylla själva filsystemet. Du kan använda df
att kolla.
sudo df -i /

Jämför de inoder som används med de totala inoderna. Om det inte finns mer tillgängligt kan du tyvärr inte få mer. Ta bort några värdelösa eller föråldrade filer för att rensa inoder.
Dåliga block
Det sista vanliga problemet är dåliga filsystemblock. Filsystem kan bli korrupta med tiden och hårddiskar dör. Ditt operativsystem kommer sannolikt att se dessa block som användbara om de inte är markerade på annat sätt. Det bästa sättet att hitta och markera dessa block är att använda fsck
med -cc
flagga. Kom ihåg att du inte kan använda fsck
från samma filsystem som du testar, så du måste antagligen använda en live-CD.
sudo fsck -vcck /dev/sda2
Byt naturligtvis ut enhetsplatsen med den enhet som du vill kontrollera. Du kan hitta det med hjälp av df
kommando från tidigare. Tänk också på att detta förmodligen tar lång tid, så var beredd att ta en kopp kaffe.
Förhoppningsvis löste en av dessa lösningar ditt problem. Det här problemet är inte precis lätt att diagnostisera i alla fall. Med lycka till kan du dock få det rensat och få ditt system att fungera igen normalt.
Om du letar efter fler Linux-pekare, se vår guide om hur du ställer in Bluetooth i Linux. Eller, för något lite annorlunda, se hur man installerar Macs Safari-webbläsare i Linux. Njut av!
Relaterad:
-
Säkerhetskopiera enkelt dina partitioner i Linux med Apart GTK
-
Så här fixar du anslutningsfel ”Ingen väg till värd” på Linux
-
Wi-Fi fungerar inte i Linux? Så här fixar du det