CHKNTFS.EXE: Do czego może służyć ?

Piotr Kowalczyk
20.08.2015

Narzędzie Chkntfs.exe zostało opracowane przez firmę Microsoft i jest dostępne w dodatku Service Pack 2 i nowszych dla systemu Microsoft Windows NT 4.0. Zaprojektowano je do wyłączania automatycznego uruchamiania programu chkdsk na określonych woluminach, gdy system Windows NT uruchamia się ponownie po nieprawidłowym zamknięciu. Narzędzia Chkntfs można również użyć do usunięcia zaplanowanego uruchomienia programu chkdsk dla aktywnego woluminu przy następnym uruchomieniu systemu, jeśli użyto polecenia chkdsk /f.

Przy każdym ponownym uruchomieniu systemu Windows NT jądro wywołuje program Autochk.exe w celu przeskanowania wszystkich woluminów i sprawdzenia odpowiedniego bitu nieprawidłowego zamknięcia systemu. Jeśli bit jest ustawiony, program autochk natychmiast wykonuje polecenie chkdsk /f na tym woluminie. Polecenie CHKDSK /f weryfikuje spójność systemu plików i próbuje naprawić wszelkie problemy na woluminie. Zawsze zaleca się uruchomienie programu chkdsk na woluminach po nieprawidłowym zamknięciu, mogą zajść jednak pewne sytuacje, w których uruchomienie programu chkdsk po nieprawidłowym zamknięciu systemu jest niemożliwe lub niepraktyczne. W niektórych przypadkach program chkdsk może sprawdzać wolumin kilka godzin lub nawet dni, może też zawiesić się. W takich przypadkach lepiej jest odłożyć wykonanie polecenia chkdsk na bardziej odpowiedni moment.

Chkntfs jest narzędziem umożliwiającym administratorowi systemu pominięcie niektórych woluminów przy sprawdzaniu przez program autochk. Narzędzie jest uruchamiane z wiersza polecenia i ma następujące opcje wiersza poleceń:

   chkntfs dysk: [...]
   chkntfs /d
   chkntfs /x dysk: [...]
   chkntfs /c dysk: [...]

     dysk:         Określa literę dysku.
     /D             Przywraca normalne zachowanie komputera;
                    wszystkie dyski są sprawdzane podczas uruchamiania,
                    natomiast program chkdsk jest uruchamiany tylko
                    w przypadku nieprawidłowo zamkniętych woluminów. Ta opcja
                    jest przeciwieństwem opcji /X.
     /X             Wyłącza domyślne sprawdzanie dysku podczas uruchamiania.
                     Wyłączone dyski nie są zapamiętywane między kolejnymi
                     wywołaniami polecenia.
     /C             Planuje uruchomienie programu chkdsk przy następnym uruchomieniu systemu,
                    jeśli ustawiono bit nieprawidłowego zamknięcia woluminu.
Jeśli nie zostaną określone żadne opcje, program chkntfs wyświetli stan bitu nieprawidłowego zamknięcia dla każdego dysku.

Przykłady:

chkntfs /x c: Wyłącza uruchamianie programu chkdsk dla dysku C:

chkntfs /x d: e: Wyłącza uruchamianie programu chkdsk dla dysków D: i E:.

Polecenia chkntfs /x nie kumulują się, polecenie zastępuje poprzednie ustanowione wyłączenia dysków. W powyższym przykładzie polecenie chkntfs wyłącza sprawdzanie przez program chkdsk dysków D i E, dysk C nie jest sprawdzany pod względem bitu nieprawidłowego zamknięcia.

Zasada działania narzędzia chkntfs polega na modyfikacji wartości BootExcecute w rejestrze systemu. Wartość BootExecute znajduje się w następującym kluczu rejestru:
HKEY_LOCAL_MACHINE\SYSTEM\CURRENTCONTROLSET\CONTROL\Session Manager
Wartość domyślna to:
BootExecute:REG_MULTI_SZ:autocheck autochk *
Narzędzie Chkntfs /x dodaje parametr /k przed gwiazdką. Parametr /k wyłącza woluminy ze sprawdzania pod względem bitu nieprawidłowego zamknięcia.

Na przykład polecenie

chkntfs /x D:

zmodyfikuje wpis rejestru do postaci autocheck autochk /k:d *

Chkdsk /f planuje uruchomienie się przy następnym uruchomieniu, ustawiając na dysku bit nieprawidłowego zamknięcia. Chkdsk /x wyłącza sprawdzanie powyższego bitu. Polecenie Chkdsk /f nigdy nie może zostać uruchomione na woluminach z wyłączonym sprawdzaniem bitu nieprawidłowego zamknięcia za pomocą programu chkntfs.

Aby uruchomić polecenie chkdsk /f dla dysku, który został wyłączony za pomocą narzędzia chkntfs, należy skorzystać z opcji chkntfs /d , aby przywrócić system do normalnego stanu lub dokonać edycji wartości BootExecute w rejestrze i usunąć odpowiednią literę dysku z parametru /k.

OSTRZEŻENIE: Nieprawidłowe wykorzystanie Edytora Rejestru może być przyczyną poważnych problemów, które spowodują, że konieczna może być ponowna instalacja systemu operacyjnego. Firma Microsoft nie może zagwarantować, że możliwe będzie rozwiązanie problemów spowodowanych niepoprawnym użyciem Edytora Rejestru. Możesz używać Edytora Rejestru na własną odpowiedzialność.

Informacje o edytowaniu Rejestru można znaleźć w temacie „Zmienianie kluczy i wartości” w Pomocy Edytora Rejestru (Regedit.exe) lub w tematach „Dodawanie i usuwanie informacji w Rejestrze” i „Edytowanie danych Rejestru” w Pomocy programu Regedt32.exe. Należy pamiętać o utworzeniu kopii zapasowej Rejestru przed jego edycją. Używając systemu Windows NT lub Windows 2000, należy również zaktualizować awaryjny dysk naprawczy.

Opcje /f /r programu chkdsk umożliwiają sprawdzanie woluminów pod kątem błędów systemu plików i złych sektorów na dysku fizycznym. Za pomocą opcji /f /r program Chkdsk planuje swoje uruchomienie przy następnym ponownym uruchomieniu systemu, dodając wpis do wartości BootExecute. Na przykład

chkdsk c: /f /r

dodaje następujący wpis do wartości BootExecute:
   autocheck autochk /r \??\C:
Ponieważ ten spis jest fizycznie umieszczany w rejestrze, na polecenie chkdsk /f /r nie ma wpływu żadne polecenie chkntfs. Jedynym sposobem wyłączenia polecenia chkdsk /f /r jest usunięcie wiersza z wartości BootExecute, które odwołuje się do tego polecenia.

Narzędzie Chkntfs.exe traktuje wszystkie dyski jako lokalne dla węzła. Dotyczy to również fizycznych zasobów dyskowych programu Microsoft Cluster Server (MSCS) w udostępnionej macierzy dysków. Korzystając z programu Chkntfs.exe do wyłączania udostępnionych dysków w grupie, należy uruchomić polecenie wyłączające dla każdego z węzłów. Należy tak postąpić, aby zapewnić prawidłowe wpisy do rejestru na każdym węźle. Polecenie można uruchomić tylko dla udostępnionych dysków danego węzła. Jeśli węzeł nie ma fizycznego zasobu dyskowego, zostanie zwrócony błąd.

chkdsk chkntfs

Informacje zawarte w tym artykule dotyczą:

  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Datacenter Server
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Professional
  • Microsoft Windows NT Workstation 4.0
  • Microsoft Windows NT Server 4.0
Zgłoś swój pomysł na artykuł

Więcej w tym dziale Zobacz wszystkie