Popis nových přepínačů /C a /I, které lze zadat u nástroje Chkdsk.exe

Překlady článku Překlady článku
ID článku: 314835 - Produkty, které se vztahují k tomuto článku.
Verzi tohoto článku pro systémy Microsoft Windows 2000 a Microsoft Windows NT 4.0 naleznete pod číslem 187941.
Rozbalit všechny záložky | Minimalizovat všechny záložky

Na této stránce

Souhrn

Tento článek popisuje dva nové přepínače /C a /I zahrnuté do nástroje CHKDSK v operačním systému Windows XP. Tyto přepínače umožňují lepší správu výpadku, který nastane při spuštění programu CHKDSK nebo AUTOCHK.

Upozornění: Společnost Microsoft nedoporučuje přerušovat proces nástroje CHKDSK, když je používán s přepínačem /f. V případě přerušení procesu nástroje CHKDSK společnost Microsoft nezaručuje integritu disku.

Další informace

Nástroj Chkdsk.exe je příkazovým rozhraním nástroje CHKDSK, který ověřuje logickou integritu systému souborů. Najde-li nástroj CHKDSK logické nekonzistence v datech systému souborů, opraví tato data (za předpokladu, že nejsou v režimu jen pro čtení).

Přepínače /C a /I jsou platné pouze pro jednotku naformátovanou systémem souborů NTFS. Každý z těchto nových přepínačů určuje, že nástroj CHKDSK má vynechat určité akce ověření integrity datových struktur systému NTFS, které by jinak provedl.

Spustíte-li nástroj CHKDSK online, pak kód, který ověření skutečně provádí, je umístěný v knihovnách DLL nástroje, například v knihovně Untfs.dll a Ufat.dll. Ověřovací rutiny volané nástrojem CHKDSK jsou stejné jako ty, které se spouštějí při ověřování svazku pomocí grafického uživatelského rozhraní programů Průzkumník Windows nebo Správa disků.

Když je však spuštění nástroje CHKDSK naplánováno na restartování počítače, je binárním modulem obsahujícím ověřovací kód program Autochk.exe – nativní program systému Windows. Protože se program Autochk.exe spouští na počátku spouštěcí posloupnosti počítače, nemůže využívat virtuální paměť nebo další služby Win32.

Výstupem programu Autochk.exe je stejný typ textu, jaký je výstupem knihoven DLL nástroje Chkdsk.exe. Program Autochk.exe tento textový výstup zobrazí během procesu spouštění a také zaznamená událost do protokolu událostí aplikací. Informace o události zaznamenané do protokolu obsahují tolik textového výstupu, kolik se ho maximálně vejde do datové vyrovnávací paměti protokolu událostí.

Protože jak program Autochk.exe, tak ověřovací kód v knihováních DLL nástroje Chkdsk.exe vycházejí ze stejného zdrojového kódu, používá se ve zbytku tohoto článku termín CHKDSK k obecnému označení programu Autochk.exe a Chkdsk.exe. Stejně tak, protože se tento článek zabývá pouze těmi změnami provedenými nástrojem CHKDSK, které se týkají svazků systému NTFS, pak jakákoli formulace typu „nástroj CHKDSK provádí to a to“ znamená, že „nástroj CHKDSK provádí to a to, když běží na svazku systému NTFS“.

Poznámka: Použijete-li přepínače /C a /I, může být i po spuštění nástroje CHKDSK svazek stále poškozený. Proto doporučujeme tyto přepínače používat pouze v případech, kdy je nezbytné minimalizovat výpadek. Tyto přepínače jsou určeny pro situace, ve kterých musíte nástroj CHKDSK spustit na výjimečně velkých svazcích a kdy požadujete flexibilní správu nastalého výpadku.

Před rozhodnutím, zda je v dané situaci vhodné použít přepínače /C a /I, je nejprve důležité seznámit se s některými základními vnitřními datovými strukturami systému NTFS, s možnými druhy poškození, s akcemi nástroje CHKDSK při ověřování svazku a s možnými následky vynechání běžných kroků ověření nástroje CHKDSK.

Objasnění činnosti nástroje CHKDSK

Činnost nástroje CHKDSK se skládá ze tří hlavních fází, během kterých jsou prověřena všechna metadata na svazku, a volitelné čtvrté fáze.

Metadata jsou „data, která obsahují informace o datech“. Jedná se o režii systému souborů. Metadata jsou používána pro záznam informací o všech souborech uložených na svazku. Metadata obsahují informace o tom, které alokační jednotky obsahují data daného souboru, které alokační jednotky jsou volné, které alokační jednotky obsahují vadné sektory atd. Data obsažená v souboru se naopak označují termínem uživatelská data. Systém souborů NTFS chrání svá metadata pomocí protokolu transakcí. Uživatelská data nejsou tímto způsobem chráněna.

Fáze 1: Kontrola souborů

V první fázi nástroj CHKDSK zobrazuje zprávu, že ověřuje soubory, a dále zobrazuje procentní podíl dokončeného ověření (počítaje od 0 do 100 procent). V průběhu této fáze nástroj CHKDSK prověří každý segment záznamu souboru v hlavní tabulce souborů MFT (Master File Table) svazku.

Konkrétní segment záznamu souboru v tabulce MFT jednoznačně identifikuje každý soubor a adresář na svazku NTFS. Dokončené procento, které v této fázi nástroj CHKDSK zobrazuje, představuje procentní podíl tabulky MFT, jež nástroj CHKDSK ověřil. Nástroj CHKDSK v průběhu této fáze prověří vnitřní konzistenci každého segmentu záznamu souboru a vytvoří dvě bitové mapy. Jedna reprezentuje používané segmenty záznamu souboru, druhá reprezentuje používané clustery na svazku.

Po skončení této fáze zná nástroj CHKDSK používané a volné místo v rámci tabulky MFT a na svazku celkem. Systém NTFS tyto informace sleduje ve vlastních bitových mapách uložených na disku. Nástroj CHKDSK porovná své výsledky s těmito bitovými mapami systému NTFS. Případné rozdíly jsou uvedeny ve výstupu nástroje CHKDSK. Zjistí-li se například, že je používaný segment záznamu souboru poškozený, jsou clustery disku přiřazené tomuto segmentu záznamu souboru označeny v bitové mapě nástroje CHKDSK jako volné, ale v bitové mapě systému NTFS jako používané.

Fáze 2: Kontrola indexů

Ve druhé fázi nástroj CHKDSK zobrazuje zprávu, že ověřuje indexy, a opět zobrazuje procentní podíl dokončeného ověření (počítaje od 0 do 100 procent). V průběhu této fáze nástroj CHKDSK ověřuje jednotlivé indexy na svazku.

Indexy jsou vlastně adresáře systému NTFS. Dokončené procento, které v této fázi nástroj CHKDSK zobrazuje, představuje procentní podíl celkového počtu adresářů svazku, jež nástroj ověřil. V této fázi nástroj CHKDSK prověří vnitřní konzistenci každého adresáře na svazku a také ověří, zda na každý soubor a adresář reprezentovaný v tabulce MFT segmentem záznamu souboru odkazuje alespoň jeden adresář. Nástroj CHKDSK také zkontroluje, zda každý soubor nebo podadresář, na který se v jednotlivých adresářích odkazuje, opravdu existuje jako platný segment záznamu souboru v tabulce MFT. Ověří rovněž případnou existenci cyklických odkazů adresáře. Nástroj nakonec zkontroluje, zda informace o souborech (časová razítka a velikost souborů) jsou ve výpisu adresáře těchto souborů aktuální.

Na konci této fáze nástroj CHKDSK ověří, zda neexistují žádné osamocené soubory a zda jsou všechny položky výpisu adresáře platné soubory. Osamocený soubor je takový soubor, pro který existuje platný segment záznamu souboru, ale který není uvedený ve výpisu žádného adresáře. Osamocený soubor lze zpravidla obnovit do jeho vlastního adresáře, pokud tento ještě existuje. Pokud příslušný adresář již neexistuje, nástroj CHKDSK vytvoří adresář v kořenovém adresáři a soubor do něj umístí. Pokud nástroj CHKDSK nalezne výpis adresáře pro již nepoužívané segmenty záznamu souboru nebo pro segmenty záznamu souboru, které jsou sice používány, ale které neodpovídají souboru uvedenému v daném adresáři, jednoduše odebere položku adresáře pro segment záznamu souboru.

Fáze 3: Kontrola popisovačů zabezpečení

Ve třetí fázi nástroj CHKDSK zobrazuje zprávu, že ověřuje popisovače zabezpečení, a potřetí zobrazuje procentní podíl dokončeného ověření (počítaje od 0 do 100 procent). V průběhu této fáze nástroj CHKDSK prověří všechny popisovače zabezpečení, které jsou přiřazeny jednotlivým souborům a adresářům na svazku.

Popisovače zabezpečení obsahují informace o vlastníkovi souboru nebo adresáře, o oprávněních NTFS k souboru nebo adresáři a o auditování souboru nebo adresáře. Dokončené procento, které v této fázi nástroj CHKDSK zobrazuje, představuje procentní podíl souborů a adresářů svazku, jež nástroj ověřil. Nástroj CHKDSK ověří, zda je každá struktura popisovače zabezpečení ve správném formátu a vnitřně konzistentní. Nástroj CHKDSK neověřuje, zda uživatelé a skupiny uvedené v seznamu skutečně existují a zda jsou udělená oprávnění vhodná.

Fáze 4: Kontrola sektorů

Použijete-li přepínač /R, spustí nástroj CHKDSK čtvrtou fázi, ve které hledá chybné sektory ve volném místě svazku. Nástroj CHKDSK se pokusí přečíst každý sektor svazku a ověří, zda je sektor použitelný. I bez použití přepínače /R nástroj CHKDSK vždy čte sektory přidružené k metadatům. Pokud je zadán parametr /R, jsou sektory přiřazené uživatelským datům čteny v průběhu dřívějších fází nástroje CHKDSK.

Najde-li nástroj CHKDSK nečitelný sektor, přidá systém NTFS cluster obsahující tento sektor do svého seznamu chybných sektorů. Je-li chybný cluster používaný, přidělí nástroj CHKDSK za něj jako náhradu nový cluster. Používáte-li disk odolný proti chybám, obnoví systém NTFS data chybného clusteru a zapíše je do nově přiděleného clusteru. V opačném případě bude nový cluster vyplněn vzorem bajtů s hodnotou 0xFF.

Pokud během normálního provozu systém NTFS zjistí nečitelné sektory, přemapuje je stejným způsobem jako spuštěný nástroj CHKDSK. Použití přepínače /R proto obvykle není nutné. Přepínač /R však nabízí pohodlný způsob prohledání celého svazku, pokud se domníváte, že disk může obsahovat chybné sektory.

Objasnění časových požadavků nástroje CHKDSK

Předchozí popis fází spuštění nástroje CHKDSK poskytuje pouze hrubý náčrt nejdůležitějších operací, které nástroj provádí při ověřování integrity svazku systému NTFS. Nástroj CHKDSK rovněž provádí mnoho dodatečných specifických kontrol v každé fázi a několik rychlých kontrol mezi nimi. I tak hrubý náčrt však poskytuje určitý základ pro následující diskusi o proměnných ovlivňujících dobu, po kterou nástroj CHKDSK běží, a o dopadu nových přepínačů /C a /I dostupných v systému Windows XP.

Proměnná 1: Fáze indexů

Během první a třetí fáze spuštění nástroje CHKDSK (kontrola souborů a popisovačů zabezpečení) je postup ukazatele průběhu (ukazuje dokončený procentní podíl) relativně hladký. Zpracování nepoužitých segmentů záznamu souboru vyžaduje kratší dobu a zpracování velkých popisovačů zabezpečení dobu delší, ale dokončený procentní podíl vcelku dobře odpovídá skutečné době, kterou dokončení dané fáze vyžaduje.

Tento vztah procentního podílu a doby nemusí nutně platit v druhé fázi, kdy nástroj CHKDSK prověřuje indexy (adresáře systému NTFS). Doba zpracování adresáře je úzce svázaná s počtem souborů a podadresářů v něm obsažených, ale zobrazovaný dokončený procentní podíl v této fázi vychází pouze z počtu adresářů, které nástroj CHKDSK musí prověřit. Ukazatel nebere v potaz obsáhlost adresářů, které již byly zpracovány a které zbývá zpracovat. Pokud například zbývá zpracovat adresář s velmi velkým počtem souborů a podadresářů, vede to ke značné nepřesnosti. Pokud všechny adresáře na svazku neobsahují přibližně stejné množství souborů, neukazuje ukazatel průběhu (dokončený procentní podíl) zobrazovaný během druhé fáze spolehlivě skutečnou dobu vyžadovanou k dokončení této fáze.

A aby to bylo v krizové situaci, kdy se neočekávaně spustí nástroj CHKDSK a čas tlačí, ještě horší, tak právě druhá fáze nástroje CHKDSK většinou trvá nejdéle.

Proměnná 2: Stav svazku

Mnohé faktory týkající se stavu svazku určitým způsobem ovlivňují dobu, po kterou nástroj CHKDSK běží. Vzorec pro odhad doby běhu nástroje CHKDSK na určitém svazku by zahrnoval takové proměnné, jako je počet souborů a adresářů, stupeň fragmentace svazku obecně a konkrétně fragmentaci tabulky MFT, formát názvů souborů (dlouhé názvy, názvy standardu 8.3 nebo oba druhy) a množství skutečných chyb, které nástroj CHKDSK musí opravit.

Proměnná 3: Hardware

Dobu běhu nástroje CHKDSK také ovlivňují vlastnosti hardwaru. Mezi proměnné patří množství dostupné paměti, rychlost procesoru, rychlost disku atd.

Proměnná 4: Nastavení nástroje CHKDSK

Nepoužijete-li přepínač /R, je pro dobu běhu na dané hardwarové platformě nejvíce určující počet souborů a adresářů na svazku (namísto absolutní velikosti svazku).

Bez přepínače /R může kontrola 50GB svazku s pouze dvěma velkými databázovými soubory například zabrat jen několik sekund běhu nástroje CHKDSK. Použití přepínače /R výrazně prodlouží dobu nutnou ke zpracování velkých svazků, protože nástroj CHKDSK musí přečíst a ověřit každý sektor na svazku. Na druhou stranu může kontrola i relativně malého svazku nástroji CHKDSK zabrat hodiny v případě, že obsahuje stovky tisíc nebo dokonce milióny malých souborů, a to nezávisle na použití přepínače /R.

Odhad časových požadavků nástroje CHKDSK

Z výše uvedeného je patrné, že běh nástroje CHKDSK může v závislosti na konkrétní situaci trvat od několika sekund do několika dní. Nejlepším způsobem odhadu doby běhu nástroje CHKDSK je provedení testovacího běhu na daném svazku v režimu jen pro čtení v době nízkého zatížení systému.

Z následujících důvodů tento postup však používejte velmi obezřetně:
  • Pokud nástroj CHKDSK v režimu jen pro čtení zjistí chybu v jedné z fází, skončí ještě před dokončením všech tří fází. A nástroj v tomto režimu může hlásit falešné chyby. Nástroj CHKDSK například může hlásit poškození disku, pokud systém NTFS mění oblasti disku v okamžiku, kdy nástroj tento disk prověřuje. Aby bylo možné svazek správně ověřit, musí se nacházet ve statickém stavu. Jediným způsobem zajištění tohoto stavu je uzamknutí svazku. Nástroj CHKDSK svazek uzamkne, pouze pokud zadáte přepínač /F (nebo přepínač /R, který zahrnuje přepínač /F). Možná tedy bude nutné spustit nástroj CHKDSK vícekrát, aby mohl v režimu jen pro čtení dokončit všechny fáze.
  • Nástroj CHKDSK klade velké nároky na výkon procesoru i na výkon disku. Na dobu běhu nástroje CHKDSK má vliv velikost zatížení systému a to, zda se nástroj spouští online, nebo během spouštěcí posloupnosti systému Windows XP. Na konfiguraci hardwaru závisí, která z těchto položek se stane úzkým místem. Dojde-li však během spuštění nástroje CHKDSK v režimu jen pro čtení k velkému využití procesoru nebo k rozsáhlým vstupně-výstupním diskovým operacím, výrazně to prodlouží dobu běhu nástroje. Dalším faktorem je, že program Autochk.exe se spouští v jiném prostředí než nástroj Chkdsk.exe. Spustíte-li nástroj CHKDSK pomocí programu Autochk.exe, získá nástroj CHKDSK výhradní použití procesoru a vstupně-výstupních prostředků, ale zároveň nebude moci využívat virtuální paměť. I když by měl program Autochk.exe podle vašich očekávání běžet rychleji než nástroj Chkdsk.exe, může běh programu Autochk.exe ve skutečnosti trvat déle, pokud je v počítači relativně málo dostupné paměti RAM.
  • Oprava poškození také prodlužuje potřebný čas. V režimu jen pro čtení se běh nástroje CHKDSK dokončí, pouze pokud nástroj nenajde žádné závažné poškození. Obsahuje-li disk pouze menší poškození, lze odhadnout, že jejich oprava výrazně neprodlouží dobu běhu samotného nástroje CHKDSK. Pokud však nástroj CHKDSK najde závažné poškození, například způsobené vážnou chybou hardwaru, lze odhadnout, že doba běhu nástroje se prodlouží přímo úměrně k počtu poškozených souborů, které nástroj musí opravit. V extrémních případech se může doba potřebná pro běh nástroje CHKDSK více než zdvojnásobit.

Popis nových přepínačů /C a /I

Přepínač /C

Přepínač /C přiměje nástroj CHKDSK přeskočit kontroly cyklických odkazů ve struktuře adresářů. Cyklické odkazy jsou velmi vzácnou formou poškození, kdy podadresář odkazuje sám na sebe jako na svůj nadřazený adresář.

Pomocí přepínače /C můžete běh nástroje CHKDSK zrychlit o 1 až 2 procenta, přičemž na svazku systému NTFS však mohou zůstat adresářové smyčky. Takové smyčky mohou být ze zbytku adresářového stromu nedostupné a některé soubory mohou být fakticky osamocené, protože je 32bitové programy pro systém Windows, včetně zálohovacích programů, nevidí.

Přepínač /I

Přepínač /I přiměje nástroj CHKDSK přeskočit kontroly, při kterých se porovnávají položky adresářů s jejich odpovídajícími segmenty záznamu souboru. Použijete-li tento přepínač, kontroluje se i nadále vnitřní konzistence položek adresářů, ale položky adresářů nemusejí být konzistentní s daty uloženými v odpovídajících segmentech záznamu souboru.

Je těžké odhadnout, kolik času použití přepínače /I uspoří. V závislosti na faktorech, jako je poměr počtu souborů a adresářů a poměr rychlosti vstupně-výstupních operací disku a rychlosti procesoru, zkrátí přepínač /I obvykle dobu běhu nástroje CHKDSK o 50 až 70 procent.

Použití přepínače /I podléhá těmto omezením:
  • Mohou se vyskytovat položky adresářů, které odkazují na nesprávné segmenty záznamu souboru. U programu, který se v takovém případě pokusí použít tuto položku, dojde k chybě.
  • Mohou se vyskytovat segmenty záznamu souboru, na které neodkazuje žádná položka adresáře (jedná se o jiný způsob osamocení souboru). Soubor, který není nijak poškozený (jak ukazuje segment záznamu souboru), může být neviditelný pro všechny 32bitové programy pro systém Windows, včetně zálohovacích programů.

Přínos přepínačů /C a /I

Pokud je na svazku nalezeno poškození disku, jsou k dispozici tři základní možnosti postupu.

První možností je nedělat nic. V případě zvláště důležitého serveru, který potřebuje být online 24 hodin denně, je tento postup nutnost. Nevýhodou je, že se relativně malé poškození může rozrůst do velikosti závažného poškození. Tento postup proto použijte, pouze pokud je udržení serveru v režimu online důležitější než ochrana integrity dat uložených na poškozeném svazku. Až do spuštění nástroje CHKDSK je třeba všechna data na poškozeném disku považovat za ohrožená. Druhou možností je spuštění nástroje CHKDSK v plném rozsahu, aby opravil všechna data systému souborů a obnovil všechna uživatelská data, která lze obnovit automatizovaným procesem. Spuštění nástroje CHKDSK v plném rozsahu však může znamenat vypnutí důležitého serveru v nevhodný čas na několik hodin. Třetí možností je spustit pomocí obou přepínačů /C a /I nástroj CHKDSK v omezeném rozsahu na mnohem kratší dobu, než jakou vyžaduje spuštění v plném rozsahu, a opravit ta poškození, která se mohou rozrůst do větších problémů.

Je však třeba si uvědomit, že nástroj CHKDSK spuštěný v omezeném rozsahu nemusí opravit všechna existující poškození. Nástroj CHKDSK je vždy třeba spustit v plném rozsahu později, aby se zajistilo, že všechna obnovitelná data byla skutečně obnovena.

Také je třeba vzít v úvahu to, že systém NTFS po výskytu poškození disku nezaručuje integritu uživatelských dat, a to ani když okamžitě spustíte nástroj CHKDSK v plném rozsahu. Mohou existovat soubory, které nástroj CHKDSK neobnoví, a soubory, které sice nástroj CHKDSK obnoví, ale které i nadále zůstanou vnitřně poškozené. Nepostradatelná data je nutné chránit pravidelným zálohováním nebo jinou důkladnou metodou obnovení dat.

Vlastnosti

ID článku: 314835 - Poslední aktualizace: 24. dubna 2008 - Revize: 4.2
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft Windows XP Home Edition
  • Microsoft Windows XP Professional
  • Microsoft Windows XP Professional x64 Edition
Klíčová slova: 
kbfea kbinfo KB314835

Dejte nám zpětnou vazbu

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com