Chyby bez jasné příčiny jsou nejdráždivějšími problémy, které je třeba řešit. A i když je Linux obvykle specifický ve svých chybových zprávách, toto je jeden z mála případů, kdy mu to upustí.
Zobrazení chyby „Na zařízení nezbývá místo“ vysvětluje velmi málo, zvláště pokud váš disk není zdaleka plný. Proč se tato chybová zpráva zobrazuje? Proč nemůžete vytvářet nové soubory, přestože máte na disku dostatek místa? A co je nejdůležitější, jak to napravíte?
Pojďme to zjistit.
Má váš pevný disk skutečně dostatek místa?
Než budete spěchat s hledáním opravy, nejprve se ujistěte, že došlo k problému. Pokud totiž ve vašem systému skutečně došlo místo na disku, není třeba panikařit. Stačí odstranit nepotřebná data, abyste uvolnili více místa.
Pro získání informací o místě na disku existují dva systémové příkazy Linux – du a df. Příkaz du odhaduje využití místa na disku, zatímco příkaz df analyzuje volné místo na disku. Když je použijete ve spojení s sudo, získáte přesnou zprávu o tom, kolik místa je na disku skutečně k dispozici.
Nyní použijeme df, abychom viděli, kolik volného místa je k dispozici. Použití příkazu df je mnohem jednodušší, protože zobrazuje pouze připojené souborové systémy a jejich statistiky využití. Ještě jednou použijeme parametr -h, aby byl výstup čitelný pro člověka.
sudo df -h .
Cílem je sečíst výsledky příkazů du a df. Jakákoli nesrovnalost ukazuje na místo na disku, které není volně dostupné, přestože jej nevyužívají žádné soubory nebo složky.
Proč Linux zobrazuje „Na zařízení nezbývá místo“?
Pokud se vám zobrazuje chybová zpráva „Na zařízení nezbývá místo“, přestože máte na disku dostatek volného místa, není na vině hardware. Zjištění přesné příčiny chyby může vyžadovat trochu odstraňování problémů.
Oprava 1: Restartování procesů pomocí smazaných souborů
Nejpravděpodobnější příčinou chyby „Na zařízení nezbývá místo“ je proces, který stále používá smazaný soubor. Naštěstí je oprava této chyby snadná. K uvolnění vyhrazeného úložiště stačí restartujte proces.
Poté by měl být úložný prostor zadržovaný procesem znovu k dispozici, což vám umožní zapisovat soubory bez jakýchkoli chyb.
Oprava 2: Check Inodes
I když má každý disk velký počet inodů, je konečný. A pokud je váš systém posetý neuvěřitelným množstvím souborů, je možné tohoto limitu dosáhnout ještě před vyčerpáním úložné kapacity disku. To je důvod, proč je lepší mít velké soubory než příliš mnoho malých.
Dostupnost inodů můžete snadno zkontrolovat pomocí parametru -i s příkazem df. Takto:
sudo df -i
To jasně řekne celkový počet inodů přítomných v souborovém systému spolu s množstvím, které se aktuálně používá. Pokud ve vašem systému nezbývají žádné volné inody, je to zdroj chyby „Na zařízení nezbývá místo“.
Vzhledem k tomu, že inody se vytvářejí pouze při prvním naformátování disku, neexistuje způsob, jak vygenerovat další inody. Jediné, co můžete udělat, je odstranit všechny nepotřebné soubory, abyste uvolnili inody pro budoucí soubory.
Oprava 3: Označit špatné bloky
Poškození dat je nevyhnutelným osudem každého pevného disku. Zatímco nový disk s tímto problémem nenarazí, starší pevné disky se postupně začnou „kazit“.
To znamená, že části pevného disku jsou nepoužitelné, i když je souborový systém stále považuje za funkční. Tyto špatné bloky falešně zvětšují zdánlivé volné místo na disku, i když ve skutečnosti na ně nelze zapisovat žádné soubory. To vede k chybě „Na zařízení nezbývá místo“, protože se operační systém pokouší do těchto umístění uložit žádná data.
Neexistuje žádný skutečný způsob, jak tento problém vyřešit, protože vadné sektory jsou výsledkem fyzického opotřebení pevného disku. Jediné, co můžete udělat, je označit chybné sektory tak, aby na ně již souborový systém neodkazoval..
To vyžaduje, abyste zavedli systém z Živé CD, protože nemůžete provést kontrolu systému souborů na běžícím disku. Jakmile to uděláte, použijte následující příkaz:
sudo fsck -vcck /dev/sda
Tím se nahradí /dev/sda cestou k disku, který chcete opravit. To automaticky detekuje všechny špatné bloky na disku a označí je jako nepoužitelné. Neposkytne vám však žádnou extra kapacitu úložiště, takže buďte připraveni vyčistit některé zbytečné soubory, abyste uvolnili místo na disku.
Jaký je nejlepší způsob, jak opravit chybu „Na zařízení nezbývá místo“?
Obvyklým důvodem pro zobrazení chyby „Na zařízení nezbývá místo“ na Ubuntu nebo jakékoli jiné distribuci Linuxu je smazaný soubor, který běžící proces stále používá. Tím se rezervuje úložiště, které bylo obsazeno souborem, což zabrání jiným operacím zapisovat data do tohoto prostoru.
Oprava tohoto problému je také nejjednodušší, protože vše, co musíte udělat, je restartovat příslušný proces. Jiné příčiny chyby však není tak snadné vyřešit.
Ať už je váš disk sužován špatnými datovými bloky nebo mu došly inody, neexistuje žádný přímý způsob, jak tyto problémy vyřešit. Musíte odstranit existující soubory, abyste vytvořili prostor pro zápis nových dat.
.