Za prvé, máte pravdu s tím, že spouštíte fsck na oddílu - fsck funguje pouze na souborových systémech, ne na celých discích. Seznam všech oddílů na disku získáte pomocí fdisk -l /dev/sdd
.
Typ vašeho souborového systému je pravděpodobně ext3 (výchozí ve většině distribucí Linuxu), což znamená, že obvykle předá fsck, dokud je jeho deník čistý. fsck -f
jak je uvedeno výše, vynutí si úplnou kontrolu.
Pokud jste však na disku přečetli chyby, žádné množství fsck dd nepomůže - protože dd se opravdu nestará o obsah disku.
Chcete-li, aby dd četl disk a pokračoval v chybách čtení, použijte dd conv=noerror,sync
, který bude pokračovat s chybami čtení a připojí null bajty k jakémukoli bloku, když dojde k chybě čtení.
Po dokončení zálohování byste měli spustit fsck -f
na klonu, abyste jej znovu uvedli do provozu.
Další tip:Pokud zálohujete oddíl do souboru, můžete jej připojit pomocí smyčky pomocí mount -o loop filename.ext3 /mountpoint
. Řekněme také, že klonujete 200G oddíl na 500G disk, pak můžete spustit resize2fs /dev/sdx1
(kde sdx je váš nový disk rozdělený na jeden oddíl 500G) a velikost souborového systému bude změněna na 500G.
A konečně, pokud je disk v takovém tvaru, že vám způsobuje chyby při čtení, doporučil bych vám, abyste disk nevypínali a nezapínali, dokud nedokončíte obnovu dat. V některých režimech selhání se disk v určitém okamžiku již jednoduše neroztočí nebo jej operační systém nerozpozná a v tomto okamžiku se získávání dat z jednotky značně prodraží.
To nemusí být ve vašem případě relevantní, ale přesto jsem se o tom zmínil:
Pro nižší úroveň kontroly disku můžete použít badblocks
utility. Prochází zařízením a hlásí všechny špatné bloky (nemůže samozřejmě nic opravit). Je to užitečné alespoň pro ověření, zda není disk fyzicky poškozen.
Také e2fsck
můžete použít badblocks
aby souborový systém nepoužíval špatné bloky. Od e2fsck
manuál:
-c This option causes e2fsck to use badblocks(8) program to do a read-
only scan of the device in order to find any bad blocks. If any bad
blocks are found, they are added to the bad block inode to prevent
them from being allocated to a file or directory. If this option is
specified twice, then the bad block scan will be done using a non-
destructive read-write test.
Chcete, aby volba -f fsck (Vynutit kontrolu, i když se systém souborů zdá čistý.)
Měli byste spustit fsck v režimu jednoho uživatele. Jeden snadný způsob, jak to udělat bez zavádění živého cdromu, je restartovat s volbou -F.
shutdown -rF now