Back to site
Since 2004, our University project has become the Internet's most widespread web hosting directory. Here we like to talk a lot about web development, networking and server security. It is, after all, our expertise. To make things better we've launched this science section with the free access to educational resources and important scientific material translated to different languages.

Kako rešiti krah Windows sistema u nekoliko minuta


Od Dirk A. D. Smith-a, Network World

Pad sistema: Ako imate sreće,to će vam samo upropastiti dan. Više nego verovatno,ušli ste u nekoliko loših dana koje prati par stresnih nedelja ili meseci. Uostalom,sistemi retko podbace samo jednom.Pre nastave da se ruše dok ne nađete uzrok i sredite problem.

AŽURIRANJE: Kako rešiti krah Windows-a 7 u nekoliko minuta

WINDOWS 8: Operativni sistem je gotov, poslat proizvođačima

Ovaj primer će vam pokazati kako da rešite problem brzo.Korišćenjem alatke koja ne košta ništa,možete rešiti blizu 50% padova Windows server-a i radne stanice (workstation) u roku od par minuta.Alatka je WinDbg , besplatni Windows “uklonjivač buba”(debugger).

Verovatno nikada niste koristili debugger, nemate ga i ne želite ga. Uostalom,to je alatka graditelja računara,a ne administratora,zar ne?Da,ali ono što treba da znate je neverovatno lako za učenje,i čak i osnovno poznavanje debugger-a bi moglo da poveća vaše veštine i vaš rezime.

Još uvek oklevate? Razmislite o ovome: Nakon ponovnog podizanja srušene mašine,izneli smo debugger,otvorili dump fajl(fajl koji sadrži stanje podataka pre kraha) memorije,zadali debugger-u jednu jedinu komandu,i saznali ne samo da je uzrok bio drajver,već i ime drajvera – sve za manje od minuta.Potvrđeno,debugger je bio instaliran i konfigurisan,znali smo koje komande da koristimo i šta da tražimo.

Ali tako ćete i vi do kraja ovog članka.

Zašto se Windows ruši?


Do danas, Windows se najuobičajenije koristio na x86 procesor-u. x86 primenjuje zaštitni mehanizam koji pušta da višestruki programi rade simultano bez sudaranja jedan o drugog.Ova zaštita dolazi u četiri nivoa privilegije ili pristupa memorijskom sistemu i hardware-u.Dva od ovih nivoa se obično odnose na nešto kao kernel ili korisnički modus.

Kernel mode(modus) je najprivilegovaniji status od x86.I Windows OS i drajveri se smatraju pouzdanim,i,stoga,rade u kernel mode-u.Ovo osigurava neometani pristup izvorima sistema i sposobnost da maksimizira izvođenje.Drugi software je dodeljen korisničkom mode-u,najmanje privilegovanom statusu od x86,sa restrikcijom direktnog pristupa većem delu sistema.Aplikacije,kao što je Microsoft Word,u korisničkom mode-u rade kao čuvari od aplikacija koje kvare sistem-nivo software-a i jedne druge.

Iako je kernel-mode software zaštićen od aplikacija koje rade u korisničkom mode-u,nije zaštićen od drugog kernel-mode software-a. Na primer, ako drajver pogrešno pristupi delu memorije koji je korišćen od strane drugog software-a (ili nije posebno obeležen kao pristupan drajverima), Windows zaustavlja čitav sistem. To se zove bug check(provera buba) ili krah(pad), i Windows prikazuje popularno zvani Plavi ekran smrti(Blue Screen of Death) (BSOD). Oko 95% padova Windows sistema je uzrokovano poremećenim software-om (buggy software) (ili buggy device drivers), od kojih skoro svi dolaze od prodavaca sa treće strane.Preostalih 5% je zbog hardware uređaja koji loše funkcionišu,koji se često odmah sruši tako što pokvari sadržaj memorije.

Još jedna malo znana činjenica je da su većina krahova ponovljeni krahovi.Malo je administratora koji mogu da reše krahove sistema odmah.Kao rezultat,tipično je da se događaju ponovo i ponovo.Uobičajeno je da vidite da prođu nedelje i meseci pre nego što se nađe odgovor.Momentalnim rešavanjem kraha,odmah nakon što se prvi put dogodi,možete sprečiti trošenje vremena i štetne uzastopne krahove.

Fokusiraćemo se na rešavanje krahova pod Windows 2000, XP i Server 2003. Proces je identičan za Windows servere i desktopove. Uzimajući u obzir uklanjanje buba(debugging) i proces interpretacije,ova informacija se primenjuje sa izuzetno malo razlike u odnosu na druge operativne sisteme,kao što su Linux, Unix i NetWare.

Početak


Da biste razrešili krahove sistema koristeći WinDbg, treba vam sledeće:
  • A PC sa 25M bajta prostora na hard-disk, živa Internet konekcija i Microsoft Internet Explorer 5.0 ili kasniji.

  • A PC koji radi u Windows Server 2003, Windows 2000 ili Windows XP.

  • Poslednju verziju WinDbg-a .

  • Memory dump(čuva sadržaj memorije u toku stanja greške) (fajl stranice mora biti na C: za Windows da bi sačuvao memory dump fajl).
Memory dump je snimak onoga što je sistem imao u memoriji kada se srušio.Samo je par stvari groznije od dump fajla na prvi pogled.Do sada je to najbolje mesto gde treba otići za informacije o krahu.Možete pokušati da dobijete ove podatke na druge načine – korisnik ili administrator bi se možda setili šta je sistem radio kada se srušio,ili da su skoro instalirali novi hardware uređaj,što će reći da u tom slučaju možete proveriti drajvere vezane za to ili hardware – ali bi mogli i da zaborave,pružajući nepotpune ili netačne informacije.

Windows Server 2003, 2000 i XP kreiraju tri tipa memory dump fajlova:

Mali ili mini dump : Mini dump je maleni fajl od 64K-bajta. Jedan od razloga što je tako mali je što ne sadrži nijedan od dvostrukih ili izvršnih fajlova koji se nalaze u memoriji u trenutku kraha sistema. .exes su potrebni za punu i ispravnu analizu kraha,stoga,mini dumps imaju ograničenu vrednost bez njih.Međutim,ako debagujete na mašini koja je kreirala dump fajl,debugger ih može naći u System Root folderima,osim ukoliko nisu promenjeni ažuriranjem sistema(obezbedićemo rešenje za ovo kasnje). XP i Server 2003 proizvode mini dump-ove po pravilu,po jedan za svaki slučaj kraha,kao i puni dump fajl.Dok to čuva sve mini dump-ove,sistem čuva samo najskoriji puni dump. Windows 2000 može da sačuva mini dump-ove, ali po pravilu je podešen da čuva samo puni dump.

Kernel dump : Jednak je količini RAM-a zauzetoj kernel-om iz operativnog sistema. Za XP PC sa 512M bajta RAM-a, ovo je obično oko 60M bajta, ali može da varira. Za najviše namena, ovaj krah-dump je najkorisniji.Značajno je manji od punog dump-a memorije,ali izostavlja samo one delove memorije za koje je malo verovatno da su umešani u krah.

Kompletan ili puni dump : Jednak je količini RAM-a u boksu. Stoga, mašina sa 512M bajta RAM-a kreira dump fajl od 512M-bajta (plus mali). Dok puni dump sadrži sve moguće podatke i izvršne oblike koje memorija ima da ponudi,njegova puna veličina ga može učiniti nezgodnim za čuvanje ili prenos u drugu mašinu radi debagovanja. Windows 2000 proizvodi puni dump po pravilu.

Iz razloga što su XP i 2003 podešeni da čuvaju mini dump za slučaj svakog kraha, trebalo bi da postoji mini dump fajl za svaki krah koji je mašina imala od kada je uključena.Ovi podaci mogu biti od izuzetne vrednosti,dajući vam da ispitate bogatu istoriju.

Čuvanje memory dump-a


Da biste razrešili krahove sistema kroz ispitivanje memorijskih dump-ova,podesite vaše servere i PC-e da ih automatski čuvaju,uz ove korake:
  1. Desni klik na My Computer

  2. Selektujte Properties

  3. Selektujte Advanced

  4. U Start up i Recovery odeljku, selektujte Settings; ovo prikazuje Startup i Recovery dialog box

  5. U Write debugging information(info.o debagovanju) odeljku, selektujte kernel memory dump
Dok ste još u Start up i Recovery dialog box-u, uverite se das u naredne opcije proverene u System failure(sistemska greška) odeljku:
  • Napišite neki događaj za sistemski dnevnik

  • Pošaljite administrativniu uzbunu

  • Automatsko restartovanje
U Write debugging informacijama, imate opciju da sačuvate samo najskoriji dump fajl ili da sistem promeni ime postojećem dump fajlu pre nego što stvori novi.Mi više volimo da sačuvamo dump fajlove ,jer prethodni dump fajlovi mogu da obezbede doddatne ili različite informacije – međutim,prostor bi mogao biti pitanje,pa podesite ovu opciju prema vašim potrebama.

Odeljak Write debugging informacija vam takođe govori gde će dump fajl biti kreiran. U XP i 2003 sistemima, mini dump-ovi su locirani u %SystemRoot%\Minidump, ili c:\Windows\Minidump; kernel i puni dump-ovi su locirani u%SystemRoot%\MEMORY.DMP ili c:\Windows\MEMORY.DMP.Za Windows 2000, dump fajlovi memorije su locirani u c:\winnt\memory.dmp.

Ako nemate dump fajl u vašoj mašini, možete ga nabaviti iz drugog sistema ili jedan preuzeti ovde. Ovaj kernel dump je oko 20M bajta zipovan(spakovan) i 60M bajta otpakovan. Napravljen je korišćenjem test alatke koja izaziva krah sistema.




Published (Last edited): 17-09-2012 , source: http://www.networkworld.com/news/2005/041105-windows-crash.html