Jak defragmentovat pevný disk v systému Linux

Photo of author

By etechblogcz

Panuje mnoho nesprávných představ o fungování souborových systémů a operačních systémů obecně. Jedna z nejběžnějších mylných představ spočívá v domnění, že pouze pevné disky s Windows, které používají souborový systém NTFS, jsou náchylné k fragmentaci. To je ovšem pouhý mýtus. Fragmentace není žádný nedostatek, který by vytvořil Microsoft. Ve skutečnosti k fragmentaci dat může dojít u většiny systémů souborů, pokud nejsou speciálně navrženy tak, aby fragmentaci *zabraňovaly*, což je ale velmi neobvyklé. Uživatelé Linuxu tedy také nejsou imunní vůči procesu defragmentace. Bohužel, některé populární webové stránky často šíří mylnou představu, že „Linux je imunní.“ Zčásti je to polopravda. Souborové systémy Linuxu fragmentují data pomaleji než například NTFS od Microsoftu, ale ani ony nejsou zcela imunní. V tomto článku se podíváme, jak postupovat, když váš počítač s Linuxem dosáhne kritické úrovně fragmentace, a jak provést defragmentaci pevného disku v Linuxu.

Vytvoření bootovacího Linuxu (Live USB)

Na rozdíl od Windows, souborové systémy v Linuxu by se neměly defragmentovat za provozu. To znamená, že pokud někdy budete chtít defragmentovat pevný disk v Linuxu, a to především ten, na kterém je nainstalovaný váš Linux, je lepší použít takzvaný „live disk“ (bootovací USB). Jako live disk stačí použít jakoukoli linuxovou distribuci, která poskytuje přístup do root terminálu. V tomto návodu doporučujeme použít live disk s Arch Linuxem.

Arch je ideální, protože se spouští přímo do root shellu. To z něj dělá perfektní operační systém pro údržbářské práce. Chcete-li vytvořit live disk, stáhněte si nejnovější ISO soubor z webu Arch Linuxu a stáhněte si nástroj Etcher pro zápis ISO na USB. Vytvoření live disku je jednoduché a nástroj Etcher vás celým procesem provede.

Příprava systému

Defragmentaci lze spustit i bez této přípravy, ale není to optimální. Mohou nastat problémy, a proces se dokonce nemusí dokončit, pokud se na některém z oddílů nacházejí vadné bloky.

Ve výzvě Arch Linuxu zadejte příkaz lsblk. Tento příkaz vypíše všechna bloková zařízení (datová úložiště atd.), která jsou aktuálně připojená k počítači. Pomocí seznamu, který lsblk zobrazí, identifikujte, na kterých pevných discích (a oddílech) chcete provést defragmentaci, a nezapomeňte si poznamenat, které označení patří kterému disku.

Následně v Arch shellu zadejte:

fsck /dev/sdXY -y

Poznámka: X a Y nahraďte označením vašeho pevného disku (jak je uvedeno v lsblk).

Nástroj fsck prohledá daný oddíl a najde případné vadné bloky, poškozené bloky a nepotřebná data. Vyčistí je, aby defragmentace mohla proběhnout bez komplikací.

V závislosti na tom, kolik vadných dat se na daném diskovém oddílu nachází, může proces čištění trvat i delší dobu. Neznepokojujte se, tento proces je plně automatický. Díky použití parametru -y, který automaticky odsouhlasí všechny dotazy programu, nemusíte sami nic potvrzovat.

Detekce fragmentace

Pro zjištění úrovně fragmentace opět použijeme nástroj fsck, tentokrát s parametrem -fn:

fsck -fn /dev/sdXY

Parametr -fn nástroji fsck říká, aby provedl rychlou kontrolu souborového systému. Zjišťuje, zda je souborový systém „souvislý“ (tedy jak moc je fragmentovaný). Čím nižší je výsledek, tím lépe. Defragmentaci se doporučuje provádět, pokud je souborový systém fragmentovaný na více než 15%.

Defragmentace

Arch Linux disponuje výkonným nástrojem pro defragmentaci „e4defrag“, který je ihned k dispozici, bez nutnosti cokoliv instalovat. Tento nástroj je velice nenáročný, ale zároveň efektivní. Spusťte ho na libovolném oddílu a on velice snadno provede analýzu a defragmentaci vašeho pevného disku v Linuxu. Chcete-li jej použít, vyhledejte název oddílu, který chcete vyčistit pomocí příkazu lsblk.

mount /dev/sdXY /mnt

Následně spusťte samotný proces defragmentace:

e4defrag /dev/sdXY

Poznámka: I když tento návod uvádí, že uživatelé by neměli spouštět e4defrag bez použití live disku, není to technicky nemožné ani u běžícího systému. Nedoporučujeme to, protože není možné opravit a vyčistit bloky, když Linux používá daný disk. To celý proces defragmentace značně znevýhodňuje.

Pokud si přejete přeskočit proces čištění disku od vadných a nepotřebných dat před použitím e4defrag, lze jej provést na libovolné distribuci Linuxu. Většina distribucí nástroj e4defrag standardně obsahuje.

Pokud z jakéhokoli důvodu není nástroj e4defrag na vašem počítači s Linuxem nainstalovaný, je snadné jej najít. Stačí ho vyhledat ve správci balíčků a nainstalovat.

Závěr

Fragmentace je nedílnou součástí výpočetní techniky. Souborový systém se s postupem času stále více zaplňuje. I když je pravda, že na Linuxu se tento problém projeví až při téměř plném disku, stále existuje. Proto je nepravdivá a nebezpečná představa, že „Linux defragmentaci nepotřebuje.“ Doufejme, že vám tento návod pomohl uvědomit si, že je na vás, abyste udržovali svůj linuxový pevný disk v perfektní kondici!