- Postopek zagona sistema Windows je razdeljen na faze (PreBoot, Boot Manager, OS Loader in kernel) in vsaka od njih kaže različne simptome, ko ne uspe.
- Orodja, kot so Popravilo ob zagonu, BOOTREC, BCDEDIT in RegBack, vam omogočajo popravilo poškodovanih zapisov MBR, zagonskega sektorja, BCD in registra.
- Zagonski dnevnik Ntbtlog.txt aktivira boot.ini ali BCDEDIT in beleži naložene in preskočene gonilnike, kar je ključnega pomena za diagnosticiranje napak.
- Združevanje zagonskih dnevnikov, pregledovalnika dogodkov, SFC/DISM in izpisov pomnilnika olajša iskanje gonilnikov ali posodobitev, ki preprečujejo zagon sistema Windows.
Ko se Windows noče zagnati in se zatakne na črnem zaslonu, v zanki ponovnega zagona ali v modrem zaslonuNormalna reakcija je panika. Poleg tipičnih avtomatiziranih orodij pa obstaja zelo močan vir za razumevanje dogajanja: zagonske datoteke dnevnika ali Dnevniki zagonaše posebej dobro znane Ntbtlog.txt.
V teh dnevnikih je podrobno opisano, kateri gonilniki in komponente se naložijo (ali se ne naložijo) med zagonom sistema.in v kombinaciji z drugimi pripomočki, kot je Popravilo zagona, BOOTREC, DISM ali sam register sistema Windows vam omogočajo, da odpravite vzrok številnih težav z zagonom, tako v računalnikih s klasičnim BIOS-om kot v sodobnih sistemih z UEFI (postopek zagona v UEFI).
Kako deluje zagon sistema Windows in v kateri fazi je napaka?
Preden začnete s pregledovanjem Ntbtlog.txt prilepiti ukaze v konzoloPomembno je razumeti, kako je organiziran postopek zagona sistema Windows in katere komponente se aktivirajo na posamezni stopnji. To vam omogoča, da ugotovite, ali se napaka pojavi zelo zgodaj (vdelana programska oprema/BIOS), v upravitelju zagona, v nalagalniku operacijskega sistema ali ko pride v poštev jedro sistema Windows.
Na splošno je zagonski cikel sodobnega sistema Windows razdeljen na štiri glavne faze. Do tega pride tako v starejših BIOS sistemih kot v sistemih z vdelano programsko opremo UEFI, čeprav se datoteke in poti do njih nekoliko spremenijo:
- 1. faza – pred zagonomVdelana programska oprema (BIOS ali UEFI) izvede POST (samopreizkus ob vklopu), inicializira osnovno strojno opremo in poišče veljaven sistemski disk. V sistemih z BIOS-om se prebere MBR/PBR; v sistemih UEFI se naloži vdelana programska oprema in poišče se aplikacija EFI za zagonski upravitelj sistema Windows.
- 2. faza – Upravitelj zagona sistema Windows: Tukaj pride v poštev zagonski upravitelj, ki poišče zagonsko konfiguracijo in se odloči, kateri sistem bo zagnal.
- Faza 3 – Nalagalnik operacijskega sistema Windows: sistemski polnilnik (
winload.exeowinload.efi) naloži jedro in gonilnike, označene za nalaganje ob zagonu. - Faza 4 – jedro sistema Windows NTjedro (
ntoskrnl.exe) prevzame nadzor, priklopi panj sistemskega registra, naloži gonilnikeBOOT_STARTin sistemska seja se začne (Smss.exe), kar nato zažene preostale storitve in krmilnike.
Vsaka od teh faz ima precej značilne simptome in sporočila o napakah.od tipičnega »Bootmgr manjka« do napak, kot so INACCESSIBLE_BOOT_DEVICE ali modre zaslone takoj za logotipom sistema Windows, zato jih diagnosticirajo in popravljajo različna orodja.
| Faza | Korak | Oprema z BIOS-om | Naprava z omogočenim UEFI |
|---|---|---|---|
| 1 | Pred zagonom | MBR/PBR (zagonska koda) | Vdelana programska oprema UEFI |
| 2 | Upravitelj zagona sistema Windows | %SistemskiPogon%\bootmgr | \EFI\Microsoft\Boot\bootmgfw.efi |
| 3 | Nalagalnik operacijskega sistema Windows | %SystemRoot%\System32\winload.exe | %SystemRoot%\System32\winload.efi |
| 4 | Jedro sistema Windows NT | %SystemRoot%\System32\ntoskrnl.exe | (enako, vendar zdaj pod UEFI) |
Cilj pri diagnosticiranju začetne napake je "ujeti", na kateri točki v tej verigi se proces prekine.Od tam se lahko odločimo, ali je smiselno pogledati datoteko dnevnika zagona, datoteko SrtTrail.txt iz popravila zagona, izpise pomnilnika, register ali se osredotočiti na zagonske kode (MBR, BCD, Bootmgr itd.).
Napake BIOS-a ali vdelane programske opreme: kako jih odkriti
Če računalnik sploh ne prikaže logotipa sistema Windows Če se zatakne na črnem zaslonu brez jasnih sporočil ali se sploh ne vklopi pravilno, je težava običajno v sami vdelani programski opremi ali v osnovni strojni opremi.
Obstaja nekaj zelo preprostih preverjanj, s katerimi lahko ugotovite, ali je sistem prestal fazo BIOS-a. ali pa je tam obtičal:
- Odklopite vse zunanje periferne naprave (USB, zunanji trdi diski, tiskalniki ...). Včasih se vdelana programska oprema poskuša zagnati z odstranljive naprave in se zatakne.
- Opazujte LED-diodo aktivnosti trdega diskaČe med vklopom sploh ne utripa, postopek morda še ni dosegel točke, kjer bi se prebral zagonski sektor.
- Poskusite pritisniti tipko Num Lock.Če se indikator na tipkovnici ne spremeni, to običajno pomeni, da je sistem popolnoma zamrznjen na ravni vdelane programske opreme ali matične plošče.
Ko se zamrznitev zgodi v tej zgodnji fazi, je običajno posledica okvare strojne opreme. (pomnilnik, matična plošča, napajalnik, okvarjen trdi disk ...) in ne toliko v primeru težave z zagonsko datoteko, zato je v teh primerih analiza Ntbtlog.txt in podobne stvari se sploh ne generirajo.
Napake v upravljalniku zagona in nalagalniku (MBR, BCD, Bootmgr)
Če se naprava vklopi, se prikaže logotip proizvajalca in nato se prikaže črn zaslon z utripajočim kazalcem. Če prejmete sporočila, kot so »Manjka operacijski sistem«, »Manjka upravitelj zagona« ali napake, povezane z BCD, je težava že v fazi upravitelja zagona (Boot Manager / Boot Loader).
Nekatera tipična sporočila iz te faze precej jasno kažejo, kakšna je situacija.:
Boot Configuration Data (BCD) missing or corruptedBoot file or MBR corruptedOperating system missingBoot sector missing or corruptedBootmgr missing or corruptedUnable to boot due to system hive missing or corrupted
Na tej točki je najučinkovitejši način zagon z zunanjega namestitvenega medija za Windows. (USB/DVD, ustvarjen z orodjem Microsoft ali ISO iste ali novejše različice) in odprite ukazni poziv s kombinacijo tipk Shift+F10 ali prek naprednih možnosti obnovitve.
Uporaba orodja za popravilo zagona
Pripomoček za popravilo zagona sistema Windows je prva možnost, ki jo morate poskusiti.ker avtomatizira številna preverjanja: preverja celovitost zagonskih datotek, poskuša popraviti BCD, popravlja poškodovane zagonske sektorje in ustvarja lasten dnevnik o tem, kaj je storil.
Uporabniški tok je zelo preprost. ko zaženete z namestitvenega medija iste različice sistema Windows, kot ste jo namestili:
- Zaženite računalnik z namestitvenega USB-ključa/DVD-ja sistema Windows in v začetnem oknu kliknite na Naprej > Popravilo opreme.
- Na zaslonu za izbiro vnesite Odpravljanje težav.
- Dostop do Napredne možnosti > Popravilo zagona in pustite orodju, da analizira sistem.
- Ko je končano, zaustavite računalnik s pomočjo čarovnika in poskusite normalno zagnati.
Vse, kar to orodje naredi, je zapisano v datoteki SrtTrail.txt, ki se nahaja v %windir%\System32\LogFiles\Srt\Srttrail.txtČeprav to ni zagonski dnevnik v slogu Ntbtlog.txtDa, koristno je razumeti, kaj je zaznal in katere ukrepe je poskušal uporabiti.
Popravite MBR in zagonski sektor z BOOTREC
Če popravilo zagona ne odpravi težave, je naslednji klasični korak uporaba orodja BOOTREC (glej Vodnik BOOTREC) Iz ukaznega poziva obnovitvenega okolja. Ta pripomoček vam omogoča prepisovanje MBR, obnovo zagonskega sektorja in regeneracijo baze podatkov BCD.
Osnovni ukazi za odpravljanje tipičnih težav z MBR in zagonskim sektorjem So, kot sledi:
- Prepišite MBR (zelo uporabno, če ga je prepisal drug sistem ali orodje tretje osebe):
bootrec /fixmbr - Popravite zagonski sektor sistemske particije:
bootrec /fixboot
V nekaterih primerih (zlasti v sistemih UEFI s particioniranjem EFI v FAT32) Med zagonom se lahko prikaže grozljivo sporočilo »Dostop zavrnjen« /fixbootV teh primerih morate preveriti, ali je sistemski particiji pravilno dodeljena črka pogona, in jo včasih označiti kot aktivno ali ročno popraviti zagonske datoteke tako, da jih kopirate. bootmgr in vsebino \EFI\Microsoft\Boot.
Popravite napake skladišča BCD
Ko je BCD poškodovan ali kaže na neobstoječe objekteVideli boste bolj specifične napake glede »Podatki o konfiguraciji zagona«. Tukaj BOOTREC in BCDEDIT delujeta skupaj (glejte diagnoza z BCDEDIT).
Tipičen postopek za regeneracijo BCD iz nič je to:
- Preglejte zaznavne namestitve sistema Windows:
bootrec /scanos - Če se po pregledu še vedno ne zažene, varnostno kopirajte BCD in ga znova zgradite:
bcdedit /export C:\bcdbackupattrib C:\boot\bcd -r -s -hren C:\boot\bcd bcd.oldbootrec /rebuildbcd - Na vprašanje, ali želite najdeno namestitev dodati na seznam za zagon, odgovorite z da.
V nekaterih primerih se prikaže sporočilo o napaki, ki pravi »Zahtevane sistemske naprave ni bilo mogoče najti«. Ko poskušate dodati namestitev, morate preveriti pri diskpart da je sistemska particija pravilno označena, da ima dodeljeno črko in da ni poškodovana.
Zamenjajte datoteko Bootmgr
Če po več poskusih napake kažejo neposredno na bootmgr poškodovanOkvarjeno kopijo lahko preimenujete in nanjo namestite novo s sistemsko rezervirane particije ali z namestitvenega medija.
Splošna ideja je, da pustimo starega. bootmgr varno in kopirajte delujočega na particijo, kjer se nahaja sistem:
- Določite sistemsko rezervirano particijo (običajno brez črke, v sistemu FAT32 ali NTFS, približno 100 MB v sodobnem sistemu Windows) in ji dodelite črko z
diskpartče je potrebno. - V tej particiji navedite skrite in sistemske datoteke z:
attrib -r -s -h - Enako storite na sistemskem pogonu (na primer
C:) da vidimbootmgrobstoječih. - Spremeni ime
bootmgrpoškodovan, na primer:ren C:\bootmgr bootmgr.old - Kopirajte
bootmgr"zdravo" iz sistemske rezervirane particije v koren pogona Windows. - Znova zaženite in preverite, ali se zažene.
Obnovi poddrevo sistemskega registra
Ko napake kažejo, da sistemskega panja ni mogoče naložiti (»sistemski haj manjka ali je poškodovan«) se težava iz zgolj zagonske težave premakne v težavo z registrom. V teh primerih je običajno treba obnoviti poddrevesa registra iz veljavne varnostne kopije (oglejte si tehnike za Izboljšajte register z RegScannerjem).
Iz obnovitvenega okolja WinRE ali popravljalnega diska ERD Vsebino lahko kopirate C:\Windows\System32\config\RegBack a C:\Windows\System32\configprepisovanje poškodovanih datotek (SISTEM, PROGRAMSKA OPREMA itd.). Če se še vedno ne zažene, morate obnoviti celotno varnostno kopijo sistema in nato obnoviti le potrebne panje.
Faza jedra: modri zasloni, zanke in zrušitve po logotipu
Če že vidite logotip sistema Windows, celo ikono vrtečega se kolesa s pikamiČe pa se nenadoma pojavi modri zaslon, se zamrzne ali pa se preprosto pojavi črn zaslon, je težava najverjetneje v fazi jedra ali v gonilnikih, ki so naloženi v tej fazi.
Nekateri tipični simptomi neuspeha v tej fazi so dobro znani:
- Zaustavite kodo takoj za uvodnim zaslonom (na primer
0x00000C2,0x0000007B, Itd.) - Napaka pri
INACCESSIBLE_BOOT_DEVICE, z identifikatorjem zaustavitve 0x7B, kar pomeni težave pri dostopu do zagonskega diska. - Vrteče se pikčasto kolo ostane za nedoločen čas v "zasedenem sistemu".
- Zaslon postane črn, ko se prikaže logotip sistema Windows, brez sporočil.
V teh primerih so možnosti okrevanja odvisne od omejenega začetka. in nato diagnosticirajte z orodji, kot so pregledovalnik dogodkov, dnevniki zagona, izpisi pomnilnika in sam register.
Poskusite varni način in zadnjo znano dobro konfiguracijo
Varni način ostaja klasika, saj naloži le najnujnejše. tako da se Windows zažene, pri čemer se velik del gonilnikov in storitev drugih proizvajalcev, ki bi lahko povzročali težavo, izpusti.
Iz naprednih možnosti zagona Lahko poskusite:
- Varen način
- Varen način z omrežjem
- Zadnja znana uspešna konfiguracija (če je na voljo v vaši različici)
Če ekipi uspe začeti v kateri koli od teh različicEna prvih priporočenih stvari je, da odprete Pregledovalnik dogodkov in pregledajte sistemske in aplikacijske dnevnike približno v času, ko so se simptomi začeli, ter kopirajte ustrezne dogodke za mirno analizo.
Čist začetek iskanja konfliktnih storitev in gonilnikov
Ko težava kaže na storitev ali upravljavca tretje osebe (protivirusni program, programska oprema za varnostno kopiranje, posebni gonilniki za shranjevanje itd.), je zelo koristno izvesti »čisti zagon« z orodjem msconfig.
V sistemskih nastavitvah lahko izberete »Selektivni zagon« in postopoma onemogočajte nekritične storitve, zlasti tiste, ki niso od Microsofta, dokler ne najdete tiste, ki sproži napako pri zagonu. Ko jo najdete, jo lahko trajno onemogočite in se vrnete na »običajen zagon«.
Če je težava v podpisovanju gonilnikov (zlasti v sistemih x64 z varnim zagonom ali zahtevami po podpisu)Drug način je, da začnete z možnostjo »Onemogoči obvezno uporabo podpisanih gonilnikov« in analizirate, kateri gonilnik zahteva podpis ali povzroča konflikt, pri čemer upoštevate smernice v Microsoftovih člankih o tej vrsti težav.
Napaka INACCESSIBLE_BOOT_DEVICE (STOP 0x7B)
Napaka INACCESSIBLE_BOOT_DEVICE Je eden najbolj strah vzbujajočih ker to pomeni, da Windows ne more dostopati do pogona, s katerega bi se moral zagnati: neustrezni gonilniki za shranjevanje, filtri drugih proizvajalcev, spremembe načina krmilnika SATA/RAID v BIOS-u itd.
Napredna metoda za odpravljanje te napake vključuje filtriranje gonilnikov drugih proizvajalcev v registru iz obnovitvenega okolja:
- Zaženite WinRE z datoteko ISO iste različice sistema Windows ali novejše.
- Odprite urejevalnik registra in naložite sistemski panj, tako da mu dodelite začasno ime, na primer Test.
- Pojdi na ključ:
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Class - Najdi vnose UpperFilters y Spodnji filtri ki se nanašajo na gonilnike, ki niso od Microsofta.
- Za vsak sumljiv gonilnik počistite vsebino ustrezne vrednosti filtra.
- Poiščite druge podobne pojave v panju, jih previdno spremenite in po končanem delu panj raztovorite.
- Znova zaženite sistem v običajnem načinu in preverite, ali je napaka 0x7B izginila.
Če se je težava začela takoj po namestitvi posodobitev sistema WindowsMorda bo treba odstraniti čakajoče pakete ali razveljaviti dejanja posodobitve z DISM, spreminjanje vrednosti v registru (na primer storitev TrustedInstaller) in celo preimenovanje datotek, kot je pending.xml en WinSxS da odblokirate postopek.
Omogočanje zapisovanja zagona v sistemu Windows
Na tej točki pride v poštev protagonist tega članka: arhiv Ntbtlog.txtTa datoteka je klasični zagonski dnevnik sistema Windows; beleži gonilnike in komponente, ki se naložijo (ali ne uspejo) med zagonom, kar vam omogoča, da na primer zaznate, kateri določen gonilnik preprečuje zagon sistema.
BootLog privzeto ni omogočenVendar je aktivacija zelo preprosta in to lahko storite na dva glavna načina: prek boot.ini v starejših sistemih ali z bcdedit V sodobnih različicah, kot je Windows 10 in novejši, je zelo koristno, da ga kombinirate s tehnikami za analiziraj z BootTrace.
Omogoči BootLog v sistemih, ki temeljijo na datoteki boot.ini (Windows XP in podobni)
V starejših računalnikih je zagonska konfiguracijska datoteka boot.ini, ki se nahaja v korenu pogona, kjer je nameščen Windows (običajno C:) in je označena kot skrita in sistemska datoteka.
Če ga želite urediti, morate najprej prikazati zaščitene sistemske datoteke. V možnostih mape poiščite boot.ini in ga odprite z Notepadom. Tam boste videli vrstico, podobno tej (čeprav z drugačnimi parametri):
več(0)disk(0)rdisk(0)particija(1)\WINDOWS=»Microsoft Windows XP Professional» /noexecute=optin /fastdetect
Za aktiviranje zapisovanja zagona preprosto dodajte modifikator /BOOTLOG na koncu te vrsticekar ima za posledico nekaj takega:
več(0)disk(0)rdisk(0)particija(1)\WINDOWS=»Microsoft Windows XP Professional» /noexecute=optin /fastdetect /BOOTLOG
Ko je datoteka shranjena, bo sistem ob vsakem zagonu začel ustvarjati zagonski zapis.Poleg tega je v nujnih primerih beleženje v sistemu mogoče omogočiti za vsak primer posebej v naprednem zagonskem meniju: tako, da tik pred zagonom sistema Windows pritisnete tipko F8 in izberete možnost »Omogoči beleženje zagona«.
Ustvarjena datoteka se vedno pokliče Ntbtlog.txt in je shranjen v mapi Windows, običajno v C:\Windows, pripravljen za odpiranje z Beležnico in preverjanje, kateri gonilniki so se pravilno naložili in kateri ne.
Omogočanje in onemogočanje BootLog z BCDEDIT v sistemu Windows 10 in novejših različicah
V sodobnih sistemih, ki uporabljajo BCD (Windows Vista in novejši, vključno z Windows 10)Konfiguracija zagona se ne upravlja več z boot.inivendar s shrambo podatkov o konfiguraciji zagona in orodjem bcdedit.
Omogočanje zapisovanja dnevnika zagona v določenem sistemu Poznati morate identifikator (ID) tega nalagalnika znotraj BCD-ja. To dobite tako, da v ukaznem pozivu s skrbniškimi pravicami zaženete naslednji ukaz:
bcdedit
V bloku »Zagonski nalagalnik sistema Windows« boste videli vrstico z imenom »Identifikator«. kar bi lahko bilo nekaj takega {current} ali drug GUID. Z uporabo tega ID-ja lahko aktivirate BootLog takole:
bcdedit /set {ID} bootlog Yes
Če ga želite deaktivirati, preprosto spremenite vrednost na »Ne«.:
bcdedit /set {ID} bootlog No
Po naslednjem ponovnem zagonu, če je beleženje omogočeno, bo Windows ustvaril datoteko. Ntbtlog.txt na označeni poti z vsemi potrebnimi informacijami o krmilnikih in modulih, ki sodelujejo pri zagonu, kar je izjemno koristno pri diagnosticiranju muhastih napak.
Razlaga datoteke Ntbtlog.txt in drugih zagonskih dnevnikov
Čeprav na prvi pogled Ntbtlog.txt izgleda kot preprost seznam vrsticKljučno je razumeti, kateri vzorec iščemo. V tej datoteki boste videli vnose, ki kažejo, da je bil krmilnik uspešno naložen ali preskočen.
Trik je v tem, da gonilnike, ki odpovejo, poiščete tik preden pride do sesutja ali ponovnega zagona.... ali tiste, ki očitno ne pripadajo Microsoftu in bi lahko povzročale konflikte (gonilnik protivirusnega programa, šifriranje diska, rešitve za varnostno kopiranje itd.). Združevanje teh informacij z dogodki pregledovalnika dogodkov in, če so na voljo, izpiski pomnilnika lahko močno zoži težavo.
V mnogih primerih izpisi pomnilnika eksplicitno kažejo na določeno datoteko gonilnika. (npr. \Windows\System32\drivers\stcvsm.sys (manjkajoče ali poškodovano). Splošna priporočila v tej vrsti primera so:
- Preverite, katere funkcije ponuja ta krmilnik in ali je ključnega pomena za zagon.
- Če gre za nebistveni gonilnik tretje osebe, ga onemogočite tako, da v register iz okolja WinRE naložite sistemski panj.
- Zaženite preverjevalnik sistemskih datotek (
sfc) v načinu brez povezave, če obstaja sum na poškodbo sistemskih datotek. - Če sumite na obsežno poškodbo registra ali nedavno namestitev več gonilnikov/storitev, preimenujte stare panje (dodajte
.oldk imenom vC:\Windows\System32\configin obnovite varnostne kopijeRegBacknato pa poskus normalnega zagona.
Včasih, zlasti po večji posodobitvi sistema Windows, se težava pojavi pri popravilu z DISM Izhaja iz originalne različice slikeČe se datoteka ISO, uporabljena za obnovitev, ne ujema natančno z nameščeno različico, DISM Vrne napako 0x800f081f (»Izvornih datotek ni bilo mogoče najti«). V teh primerih je priporočljivo preveriti pri dism /get-wiminfo natančna različica slike (install.wim o install.esd) in poiščite ISO, ki dejansko ustreza različici sistema, ki ga je treba popraviti.
Skratka, zagonski registri, kot so Ntbtlog.txt, sled zapisa o popravilu zagona, izpisi pomnilnika in dnevniki DISM y SFC Tvorijo informacijski "ekosistem" To orodje vam omogoča rekonstrukcijo dogajanja med vsakim zagonom: kaj se naloži, kaj se preskoči, kaj se poškoduje in katere spremembe (gonilniki, posodobitve, protivirusna programska oprema ali različni pripomočki) so prekinile postopek. Z združitvijo teh orodij z MBR, BCD, Bootmgr, RegBack in tehnikami popravila čistega zagona so možnosti za obnovitev sistema Windows, ki se ne zažene brez popolne ponovne namestitve, veliko večje, kot se morda zdi sprva.
Strasten pisec o svetu bajtov in tehnologije nasploh. Rad delim svoje znanje s pisanjem in to je tisto, kar bom počel v tem blogu, saj vam bom pokazal vse najbolj zanimive stvari o pripomočkih, programski opremi, strojni opremi, tehnoloških trendih in še več. Moj cilj je, da vam pomagam krmariti po digitalnem svetu na preprost in zabaven način.


