CHKDSK - CHKDSK
Původní autoři | Tim Paterson |
---|---|
Vývojáři | Přispěvatelé SCP , Microsoft , IBM , DR , Datalight , Novell , Toshiba , PhysTechSoft , ReactOS |
První vydání | 1980 |
Napsáno |
Jazyk sestavení MS-DOS : x86 FreeDOS , ReactOS : C |
Operační systém | 86-DOS , MS-DOS , PC DOS , MSX-DOS , SISNE plus , OS/2 , eComStation , ArcaOS , FlexOS , DR-DOS , ROM-DOS , 4690 OS , PTS-DOS , Windows , FreeDOS , ReactOS |
Plošina | Cross-platform |
Typ | Příkaz |
Licence | MS-DOS: MIT FreeDOS, ReactOS: GPLv2 |
V oblasti výpočetní techniky CHKDSK
(zkratka pro „kontrolní disk“) je systémový nástroj a příkaz v DOSu , Digital Research FlexOS , IBM / Toshiba 4690 OS , IBM OS / 2 , Microsoft Windows a souvisejících operačních systémech . Ověřuje integritu systému souborů svazku a pokouší se opravit chyby logického systému souborů. Je podobný fsck
příkaz v Unix a podobné Microsoft ScanDisk které koexistovaly s CHKDSK
ve Windows 9x a MS-DOS 6.x.
Implementace
Časná implementace ' CheckDisk ' byla CHECKDSK, která byla součástí diagnostiky hardwaru Digital Equipment Corporation , běžící na počátku 70. let 20. století TENEX a TOPS-20 .
SCP 86-DOS
CHKDSK
Příkaz byl poprvé zaveden v roce 1980 Tim Paterson a jsou zahrnuty v Seattle Computer Products 86-DOS .
MS-DOS / IBM PC DOS
Příkaz je k dispozici v systému MS-DOS verze 1 a novější.
CHKDSK
je implementován jako externí příkaz. MS -DOS verze 2.x - 4.x použít chkdsk.com
jako spustitelný soubor. MS-DOS verze 5.xa novější použít chkdsk.exe
jako spustitelný soubor.
Chyba systému MS-DOS 5.0
CHKDSK
a UNDELETE
v systému MS-DOS 5.0 mají chybu, která může poškodit data: Pokud tabulka alokace souborů na disku používá 256 sektorů, běh CHKDSK /F
může způsobit ztrátu dat a běh UNDELETE
může způsobit nepředvídatelné výsledky. Obvykle to ovlivňuje disky s kapacitou přibližně násobkem 128 MB. To platí CHKDSK.EXE
a UNDELETE.EXE
nese datové razítko z 9. dubna 1991. Tato chyba byla opravena v systému MS-DOS 5.0a.
Microsoft Windows
CHKDSK
lze spustit z příkazového řádku DOS , Průzkumníka Windows , Windows Command Prompt , Windows PowerShell nebo Recovery Console .
V operačních systémech Windows NTCHKDSK
může také zkontrolovat vadný sektor na povrchu disku a označit ho (v systému MS-DOS 6.xa Windows 9x je to úkol, který provádí Microsoft ScanDisk ). Windows Server verze CHKDSK
je RAID -aware a může plně obnovit data v vadných sektorů disku v RAID-1 nebo RAID-5 pole, pokud jiné disky v sadě jsou neporušené.
Fragmenty souborů a adresářů, které jsou považovány za poškozené například v důsledku výpadků napájení při zápisu, překročení délky názvu souboru nebo neplatných znaků v názvu souboru, jsou přesunuty do adresáře pod kořenovým adresářem oddílu, pojmenovány found.000
a přejmenovány na obecné hexadecimálně číslované soubory a adresáře začínající file00000000.chk
a dir_00000000.chk
.
V rodině Windows NT se standardní CHKDSK
kontrola skládá ze tří fází testování metadat souboru. Hledá chyby, ale neopravuje je, pokud k tomu není výslovně nařízeno. Totéž platí pro povrchové skenování-tento test, který by mohl být extrémně časově náročný na velkých nebo málo výkonných discích, se neprovádí, pokud o to není výslovně požádáno. CHKDSK
k provádění oprav vyžaduje výhradní přístup k zápisu do svazku.
Vzhledem k požadavku monopolizovaného přístupu k jednotce CHKDSK
nemůže systémový disk zkontrolovat v normálním systémovém režimu. Místo toho systém nastaví špinavý bit na svazek disku a poté restartuje počítač. Během spouštění systému Windows je pomocí SMSS.EXE spuštěna speciální verze s CHKDSK
názvem Autochk
(aplikace v nativním režimu ) a kontroluje a pokouší se opravit souborový systém, pokud je nastaven špinavý bit.
Kvůli požadavku na výhradní přístup a časově náročné povaze CHKDSK
operace implementoval systém Windows Vista nový model stavu systému souborů, ve kterém operační systém opravuje chyby na svazcích, jak na ně narazí. V případě, že je problém vážný a je vyžadováno úplné skenování, Action Center upozorní uživatele, aby svazek v první řadě přepnul do režimu offline.
Windows Vista a Windows Server 2008 přidaly kromě poskytování CHKDSK
příkazu schopnost samoléčení, která je ve výchozím nastavení zapnutá . Detekuje fyzické chyby systému souborů a za běhu je potichu opravuje. Mnoho problémů dříve objevených při běhu se tedy CHKDSK
nikdy neobjeví. Je spravován fsutil repair
příkazem.
Kritika byla zaměřena na tendenci AUTOCHK
automaticky upravovat systém souborů, pokud to uživatel, který si může přát předem zálohovat svá data, výslovně nevyžádal , protože pokus o opravu může způsobit vyškrábání, podkopání a odmítnutí cest souborů a adresářů, zejména na multiboot instalace, kde může mít více operačních systémů rušivě zapsáno do stejného oddílu.
Údajná chyba systému Windows 7
Před vydáním Windows 7 , InfoWorld hlášeny údajné únik paměti v CHKDSK
; podle zprávy chkdsk /r
by příkaz způsobil, že spotřeba paměti dosáhne maxima a systém spadne . Randall C. Kennedy z InfoWorld připsat původní zprávu „ různých webových zdrojů “ a řekl, že v jeho testech, spotřeba paměti dosáhne více než 90%, ačkoli on neměl dojít k havárii. Nicméně Kennedy vzal spotřebu paměti za kritickou chybu, která by vykolejila spuštění Windows 7 a pokáral Microsoft. Tom Warren z Neowinu odmítl Kennedyho hodnocení významu údajného úniku. Steven Sinofsky ze společnosti Microsoft také odpověděl, že Microsoft nemohl reprodukovat ani havárii, ale že velká spotřeba paměti byla záměrná, aby se zlepšil výkon, a ne únik. Ed Bott ze ZDNet také přezkoumal tvrzení svými vlastními testy a poznamenal, že nedojde k žádnému krachu. Bott poznamenává, že chkdsk /r
podle návrhu nefunguje na systémovém disku, když je Windows online, Bott dospěl k závěru, že „je to pravděpodobně funkce, nikoli chyba, a pravděpodobnost, že někdy systém takto havarujete, je velmi, velmi malá a zcela lze se vyhnout. "
DR/Novell DOS
DR DOS 6.0 také obsahuje implementaci CHKDSK
příkazu.
FreeDOS
FreeDOS verze byla vyvinuta Imre Leber a je pod licencí GNU GPL 2 .
ReactOS
Implementace ReactOS je založena na volném klonu vyvinutém Markem Russinovichem pro Sysinternals v roce 1998. Byl přizpůsoben ReactOS Emanuele Aliberti v roce 1999 a podporuje svazky pomocí souborového systému FAT32 . Příkaz nepodporuje svazky používající souborový systém Btrfs , přestože jej ReactOS podporuje od verze 0.4.1.
Viz také
Reference
Další čtení
- Wolverton, Van (1990). Příkazy MS-DOS: Microsoft Quick Reference, 4. přepracované vydání . Microsoft Press . ISBN 978-1556152894.
- Kathy Ivens; Brian Proffit (1993). OS/2 Inside & Out . Osborne McGraw-Hill . ISBN 978-0078818714.
- Frisch, Æleen (2001). Kapesní reference pro Windows 2000 . O'Reilly . ISBN 978-0-596-00148-3.