Как да поправите грешката "Няма място на устройството" на Linux
Така че вашата Linux система ви казва, че нямате място на вашия твърд диск, но знаете, че всъщност има много свободно пространство. Защо? Това е една от онези малко разочароващо неясни грешки на Linux системите, но има няколко обичайни виновници.
Проверете ду
Преди да продължите, добре е да проверите дали на диска наистина е останало място. Докато инструментите в работната ви среда са добри, много по-добре е да използвате директните от командния ред.
Започнете с du
. Насочете го към основната директория на диска, който има проблем. Това ръководство приема, че това е дялът с корен.
sudo du -sh /
Ще мине известно време, за да мине през всичко. Сега опитайте с df
.
sudo df -h
Добавете корен и файлови системи, монтирани под него. Например, ако имате "/ home" на отделно устройство, добавете това с четенето за root. Общата сума трябва да излезе близо до това, което сте имали с du
. Ако не, това може да сочи към изтрит файл, който се използва от процес.
Разбира се, основната грижа тук е дали резултатите от тези команди се вписват в размера на движението. Ако е така, очевидно нещо не е наред.
Свързани : Използвайте Agedu за анализиране на използването на твърдия диск в Linux
Възможни причини
Тук има няколко основни причини. Ако видяхте несъответствие между du
и df
можете да прескочите до първата опция тук. В противен случай започнете от втория.
Изтрит файл, запазен от процеса
Понякога файлът ще бъде изтрит, но процес все още го използва. Linux няма да пусне съхранението, свързано с файла, докато процесът все още се изпълнява. Просто трябва да намерите процеса и да го рестартирате.
Опитайте се да намерите процеса.
sudo lsof / | grep изтрит
Проблемният процес трябва да бъде изброен, а след това просто да го рестартирате.
sudo systemctl рестартира service_name
Не са достатъчни иноди
На файловите системи, наречени "иноди", има набор от метаданни. Инодите следи информация за файловете. Много файлови системи имат фиксирано количество иноди, така че е много възможно да се запълни максималното разпределение на инодите, без да се попълва самата файлова система. Можете да използвате df
за проверка.
sudo df -i /
Сравнете използваните иноди с общия индоди. Ако няма повече налични, за съжаление не можете да получите повече. Изтрийте някои ненужни или изчерпани файлове, за да изчистите инодите.
Лоши блокове
Последният често срещан проблем е лошите блокове на файловата система. Файловите системи се развалят и твърдите дискове умират. Вашата операционна система най-вероятно ще види тези блокове като използваеми, освен ако не са маркирани по друг начин. Най-добрият начин да намерите и маркирате тези блокове е да използвате fsck
с флага -cc
. Не забравяйте, че не можете да използвате fsck
от същата файлова система, която тествате. Вероятно ще трябва да използвате жив компактдиск.
sudo fsck -vcck / dev / sda2
Очевидно заменете мястото на устройството с устройството, което искате да проверите. Също така, имайте предвид, че това вероятно ще отнеме много време.
Свързани : Проверете и поправете файловата си система с fsck [Linux]
Надяваме се, че едно от тези решения реши проблема ви. Този проблем не е толкова лесно да се диагностицира във всеки случай. С късмет, обаче, можете да го изчистите и да имате твърдия диск отново да работите нормално.