Skocz do zawartości

Win 7 x64 nie startuje, prawdopodobnie problemy z uprawnieniami po chkdsk


wojsmol

Rekomendowane odpowiedzi

Witam

Wczoraj mój komputer w pewnym momencie się zresetował z BSOD, którego treści nie pamiętam. Następnie zgłosił się chkdsk dla partycji systemowej C:\, przeszedł poprawnie, ale w momencie gdy powinien pokazać się ekran logowania pokazał się tylko czarny ekran z kursorem myszy. W związku z tym wykonałem kolejny restart. Tym razem zgłosił się ponownie chkdsk dla dysku C:\, tym razem podczas skanu zaczął zastępować uprawnienia na plikach domyślnymi, pozwoliłem mu działać przez kilka godzin, aż do kolejnego BSOD. Następnie spróbowałem wykorzystać narzędzie do naprawy systemu podczas uruchamiania, ponownie uruchomiło się sprawdzanie błędów na dysku, bez rezultatu. Potem próbowałem wykorzystać przywracanie systemu z poziomu modułu napraw komputer, system zwrócił brak punktów przywracania systemu. Wykonałem jeszcze kilka próbach uruchomienia systemu w trybie normalnym jak i awaryjnym zakończonych czarnym ekranem zamiast ekranu logowania z widocznym tylko kursorem myszy. Po tych operacjach zastartowałem ponownie do modułu napraw komputer, tym razem wybrałem opcję wiersz poleceń i uruchomiłem notatnik w celu sprawdzenia czy dane na dysku są poprawne i wtedy zauważyłem, że foldery i pliki na 1 poziomie dysku C: są oznaczone symbolem kłódki, pomimo to można wejść do ich podfolderów.

Pozdrawiam i proszę o pomoc

Odnośnik do komentarza
Pomoc jest darmowa, ale proszę rozważ przekazanie dotacji na utrzymanie serwisu: klik.
Wczoraj mój komputer w pewnym momencie się zresetował z BSOD, którego treści nie pamiętam.

 

Z poziomu WinRE sprawdź czy folder C:\Windows\Minidump ma bieżące pliki DMP. Jeśli są, całość skopiuj > do ZIP > na hosting > podaj tu link.

 

 

Następnie zgłosił się chkdsk dla partycji systemowej C:\, przeszedł poprawnie, ale w momencie gdy powinien pokazać się ekran logowania pokazał się tylko czarny ekran z kursorem myszy.

 

Z poziomu WinRE przeprowadź weryfikację integralności plików systemowych poleceniem:

 

sfc /scannow /offbootdir=X:\ /offwindir=X:\windows

 

Gdzie X to litera dysku z plikami rozruchowymi i Windows widziana spod WinRE.

 

 

uruchomiłem notatnik w celu sprawdzenia czy dane na dysku są poprawne i wtedy zauważyłem, że foldery i pliki na 1 poziomie dysku C: są oznaczone symbolem kłódki, pomimo to można wejść do ich podfolderów

 

Konkretnie: jakie są nazwy tych obiektów z kłódkami.

 

 

 

.

Odnośnik do komentarza

Witam

Odnośnie ostatniej części dotyczy to wszystkich folderów i plików na dysku C:, podaj komendę tworzenia raportu uwzględniającego uprawnienia folderów i plików na C:, będzie łatwiej, bo komputer z problemem jest po 2 stronie pokoju. Pozostałe polecenia zaraz wykonam.

Pozdrawiam

 

//edit

1. 2 ostatnie dumpy są tutaj http://speedy.sh/JZeNY/dump.zip

2. Po wykonaniu komendy

sfc /scannow /offbootdir=C:\ /offwindir=C:\windows
otrzymałem komunikat
Funkcja Ochrona zasobów systemu Windows nie może wykonać żądanej operacji.
Pozdrawiam
Odnośnik do komentarza

Z DMP nie wynika dla mnie jasny konkret, choć drugi debug pokazuje kontekst sterownika grafiki nVidia:

 

 

 

*******************************************************************************

* *

* Bugcheck Analysis *

* *

*******************************************************************************

 

Use !analyze -v to get detailed debugging information.

 

BugCheck 1E, {ffffffffc0000005, fffff800031ab9ae, 0, ffffffffffffffff}

 

*** WARNING: Unable to verify timestamp for win32k.sys

*** ERROR: Module load completed but symbols could not be loaded for win32k.sys

Probably caused by : ntkrnlmp.exe ( nt!CmpKcbCacheLookup+1de )

 

Followup: MachineOwner

---------

 

2: kd> !analyze -v

*******************************************************************************

* *

* Bugcheck Analysis *

* *

*******************************************************************************

 

KMODE_EXCEPTION_NOT_HANDLED (1e)

This is a very common bugcheck. Usually the exception address pinpoints

the driver/function that caused the problem. Always note this address

as well as the link date of the driver/image that contains this address.

Arguments:

Arg1: ffffffffc0000005, The exception code that was not handled

Arg2: fffff800031ab9ae, The address that the exception occurred at

Arg3: 0000000000000000, Parameter 0 of the exception

Arg4: ffffffffffffffff, Parameter 1 of the exception

 

Debugging Details:

------------------

 

 

EXCEPTION_CODE: (NTSTATUS) 0xc0000005 - Instrukcja spod 0x%08lx odwo

 

FAULTING_IP:

nt!CmpKcbCacheLookup+1de

fffff800`031ab9ae 418b45f4 mov eax,dword ptr [r13-0Ch]

 

EXCEPTION_PARAMETER1: 0000000000000000

 

EXCEPTION_PARAMETER2: ffffffffffffffff

 

READ_ADDRESS: GetPointerFromAddress: unable to read from fffff80003112100

ffffffffffffffff

 

ERROR_CODE: (NTSTATUS) 0xc0000005 - Instrukcja spod 0x%08lx odwo

 

BUGCHECK_STR: 0x1E_c0000005

 

CUSTOMER_CRASH_COUNT: 1

 

DEFAULT_BUCKET_ID: VISTA_DRIVER_FAULT

 

PROCESS_NAME: csrss.exe

 

CURRENT_IRQL: 0

 

LAST_CONTROL_TRANSFER: from fffff80002f2ddb8 to fffff80002ee31c0

 

STACK_TEXT:

fffff880`046f6e68 fffff800`02f2ddb8 : 00000000`0000001e ffffffff`c0000005 fffff800`031ab9ae 00000000`00000000 : nt!KeBugCheckEx

fffff880`046f6e70 fffff800`02ee2842 : fffff880`046f7648 00000000`00000000 fffff880`046f76f0 fffff880`046f7a00 : nt! ?? ::FNODOBFM::`string'+0x48d3d

fffff880`046f7510 fffff800`02ee114a : 0061006c`00650065 00650064`00610077 00540028`00200065 00540065`00750072 : nt!KiExceptionDispatch+0xc2

fffff880`046f76f0 fffff800`031ab9ae : fffff880`046f7d30 fffff880`046f7cd8 fffff880`046f7cf8 fffff880`04b86c78 : nt!KiGeneralProtectionFault+0x10a

fffff880`046f7880 fffff800`031ac6b5 : fffff880`046f7a00 fffff8a0`00000001 fffff880`046f7e18 fffff880`046f7e10 : nt!CmpKcbCacheLookup+0x1de

fffff880`046f7970 fffff800`031a8d54 : fffff8a0`0404b1f0 fffff880`046f7e10 fffff880`046f7e60 fffff880`046f7e40 : nt!CmpBuildHashStackAndLookupCache+0x335

fffff880`046f7d50 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!CmpParseKey+0x294

 

 

STACK_COMMAND: kb

 

FOLLOWUP_IP:

nt!CmpKcbCacheLookup+1de

fffff800`031ab9ae 418b45f4 mov eax,dword ptr [r13-0Ch]

 

SYMBOL_STACK_INDEX: 4

 

SYMBOL_NAME: nt!CmpKcbCacheLookup+1de

 

FOLLOWUP_NAME: MachineOwner

 

MODULE_NAME: nt

 

IMAGE_NAME: ntkrnlmp.exe

 

DEBUG_FLR_IMAGE_TIMESTAMP: 4f76721c

 

FAILURE_BUCKET_ID: X64_0x1E_c0000005_nt!CmpKcbCacheLookup+1de

 

BUCKET_ID: X64_0x1E_c0000005_nt!CmpKcbCacheLookup+1de

 

Followup: MachineOwner

---------

 

 

Microsoft ® Windows Debugger Version 6.12.0002.633 X86

Copyright © Microsoft Corporation. All rights reserved.

 

 

Loading Dump File [D:\DMP\wojsmol\dump\061012-42557-01.dmp]

Mini Kernel Dump File: Only registers and stack trace are available

 

Symbol search path is: SRV*D:\Symbols*http://msdl.microsoft.com/download/symbols

Executable search path is:

Windows 7 Kernel Version 7601 (Service Pack 1) MP (4 procs) Free x64

Product: WinNt, suite: TerminalServer SingleUserTS

Built by: 7601.17803.amd64fre.win7sp1_gdr.120330-1504

Machine Name:

Kernel base = 0xfffff800`02e02000 PsLoadedModuleList = 0xfffff800`03046670

Debug session time: Sun Jun 10 05:24:18.442 2012 (UTC + 2:00)

System Uptime: 0 days 0:00:36.769

Loading Kernel Symbols

...............................................................

................................................................

....

Loading User Symbols

Loading unloaded module list

...

*******************************************************************************

* *

* Bugcheck Analysis *

* *

*******************************************************************************

 

Use !analyze -v to get detailed debugging information.

 

BugCheck 3B, {c0000046, fffff80002eadee8, fffff8800387e660, 0}

 

Unable to load image \SystemRoot\system32\DRIVERS\nvlddmkm.sys, Win32 error 0n2

*** WARNING: Unable to verify timestamp for nvlddmkm.sys

*** ERROR: Module load completed but symbols could not be loaded for nvlddmkm.sys

Probably caused by : nvlddmkm.sys ( nvlddmkm+7f418 )

 

Followup: MachineOwner

---------

 

1: kd> !analyze -v

*******************************************************************************

* *

* Bugcheck Analysis *

* *

*******************************************************************************

 

SYSTEM_SERVICE_EXCEPTION (3b)

An exception happened while executing a system service routine.

Arguments:

Arg1: 00000000c0000046, Exception code that caused the bugcheck

Arg2: fffff80002eadee8, Address of the instruction which caused the bugcheck

Arg3: fffff8800387e660, Address of the context record for the exception that caused the bugcheck

Arg4: 0000000000000000, zero.

 

Debugging Details:

------------------

 

 

EXCEPTION_CODE: (NTSTATUS) 0xc0000046 - Pr b

 

FAULTING_IP:

nt!RtlRaiseStatus+18

fffff800`02eadee8 488b8424b8010000 mov rax,qword ptr [rsp+1B8h]

 

CONTEXT: fffff8800387e660 -- (.cxr 0xfffff8800387e660)

rax=0000000000000000 rbx=00000000c0000046 rcx=fffff8800387e660

rdx=0000000000000001 rsi=0000000000000000 rdi=fffff880009e8180

rip=fffff80002eadee8 rsp=fffff8800387e5a0 rbp=0000000000000000

r8=0000000000000000 r9=0000000000000400 r10=fffff80002e02000

r11=000000000000001b r12=0000000000000000 r13=0000000000000000

r14=fffffa8006920650 r15=0000000000000000

iopl=0 nv up ei ng nz na po nc

cs=0010 ss=0000 ds=002b es=002b fs=0053 gs=002b efl=00000286

nt!RtlRaiseStatus+0x18:

fffff800`02eadee8 488b8424b8010000 mov rax,qword ptr [rsp+1B8h] ss:fffff880`0387e758=fffff80002eadee8

Resetting default scope

 

CUSTOMER_CRASH_COUNT: 1

 

DEFAULT_BUCKET_ID: VISTA_DRIVER_FAULT

 

BUGCHECK_STR: 0x3B

 

PROCESS_NAME: csrss.exe

 

CURRENT_IRQL: 0

 

LAST_CONTROL_TRANSFER: from fffff80002e8b5a1 to fffff80002eadee8

 

STACK_TEXT:

fffff880`0387e5a0 fffff800`02e8b5a1 : 00000000`00000000 ffffffff`8000022c fffff880`00000030 00000000`00000000 : nt!RtlRaiseStatus+0x18

fffff880`0387eb40 fffff880`0fa96418 : fffffa80`00000000 fffffa80`00000001 fffff880`0387ec50 fffffa80`06c83a00 : nt!KeReleaseMutant+0x281

fffff880`0387ebf0 fffffa80`00000000 : fffffa80`00000001 fffff880`0387ec50 fffffa80`06c83a00 fffff880`80000000 : nvlddmkm+0x7f418

fffff880`0387ebf8 fffffa80`00000001 : fffff880`0387ec50 fffffa80`06c83a00 fffff880`80000000 00000000`00000000 : 0xfffffa80`00000000

fffff880`0387ec00 fffff880`0387ec50 : fffffa80`06c83a00 fffff880`80000000 00000000`00000000 00000000`00000000 : 0xfffffa80`00000001

fffff880`0387ec08 fffffa80`06c83a00 : fffff880`80000000 00000000`00000000 00000000`00000000 fffff880`0fa8e9f8 : 0xfffff880`0387ec50

fffff880`0387ec10 fffff880`80000000 : 00000000`00000000 00000000`00000000 fffff880`0fa8e9f8 00000000`00000000 : 0xfffffa80`06c83a00

fffff880`0387ec18 00000000`00000000 : 00000000`00000000 fffff880`0fa8e9f8 00000000`00000000 fffffa80`0746a410 : 0xfffff880`80000000

 

 

FOLLOWUP_IP:

nvlddmkm+7f418

fffff880`0fa96418 ?? ???

 

SYMBOL_STACK_INDEX: 2

 

SYMBOL_NAME: nvlddmkm+7f418

 

FOLLOWUP_NAME: MachineOwner

 

MODULE_NAME: nvlddmkm

 

IMAGE_NAME: nvlddmkm.sys

 

DEBUG_FLR_IMAGE_TIMESTAMP: 4fb20748

 

STACK_COMMAND: .cxr 0xfffff8800387e660 ; kb

 

FAILURE_BUCKET_ID: X64_0x3B_nvlddmkm+7f418

 

BUCKET_ID: X64_0x3B_nvlddmkm+7f418

 

Followup: MachineOwner

---------

 

 

 

podaj komendę tworzenia raportu uwzględniającego uprawnienia folderów i plików na C:

 

1. W WinRE działa systemowy C:\Windows\system32\icacls.exe do pokazywania uprawnień. Ale:

 

2. W WinRE można uruchomić bardziej rozbudowany program zewnętrzny, czyli konsolowy SetACL. Musiałbyś go umieścić na poszkodowanym dysku, w WinRE wejść w Wiersz poleceń i ściągniąć rekursywną listę uprawnień dysku komendą:

 

SetACL -on "C:\\" -ot file -actn list -rec yes -bckp C:\lista.txt

 

Plik wynikowy to byłby potężny stwór, samo zrzucanie uprawnień to conajmniej kilka minut ... Przejrzenie tego budzi we mnie zgrozę.

 

3. SetACL zdaje się jest wbudowane w FRST, ale nagięte pod funkcjonalność narzędzia i nie ma tego co nawet porównywać z oryginałem. FRST ma limitowaną funkcję odblokowywania obiektów przez skrypt o zasadzie:

 

Unlock: C:\folder1
Unlock: C:\folder2
i tak dalej

 

Operacja jest jednak zbyt mało precyzyjna, nie można ustalić uprawnień ręcznie. I w chwili obecnej mam silne wątpliwości czy jest zasadne to tu prowadzić, odradzam Ci te kombinację.

 

 

To może być ciężkie i nieopłacalne do rozwiązania, czuję na plecach oddech reinstalacji Windows. Przeprowadziłam testowe zerowanie uprawnień na przykładowym pliku, odebranie kontu SYSTEM dostępu to było za mało, by pojawiła się widoczna kłódka w WinRE. Dopiero jak wyczyściłam na łyso wszystkie uprawnienia (żadne konto nie ma dostępu), kłódka zawisła. Skoro u Ciebie wszystkie obiekty na C mają kłódki, to sugeruje właśnie "czystą" listę uprawnień, szkody mogą być ogromne (rekursywnie w dół). To masa obiektów, tysiące plików, skomplikowany układ uprawnień. Wykonać wierny reset tego to miazga i jakaś potworna robota nie mająca gwarancji.

Zastanawiam się czy coś by tu pomogło cofnięcie całej struktury partycji (np. przez TestDisk) do punktu czasowego przed checkdiskiem.

 

 

.

Odnośnik do komentarza

Co nie znaczy, że nie ma naruszeń uprawnień głębiej. To spróbujmy wstępnie wyresetować ten pierwszy poziom, tylko podaj nieco więcej danych:

 

1. Spis co leży w root dysku C. W Wierszu polecenia wywołaj komendę:

 

dir /a C:\ > C:\log1.txt

 

2. Spis uprawnień przykładowego obiektu. Wstaw sobie SetACL i zrzuć uprawnienia komendą:

 

SetACL -on "C:\Windows" -ot file -actn list -bckp C:\log2.txt

 

Przedstaw zawartość plików tekstowych.

 

 

.

Odnośnik do komentarza

Witam

log.txt

Wolumin w stacji C to System

Numer seryjny woluminu: 764D-AB7A

 

Katalog: C:\

 

2011-10-10 23:30 <DIR> $Recycle.Bin

2012-03-10 17:52 <DIR> a

2010-09-28 01:38 <DIR> adminiptc

2012-03-21 01:26 <DIR> BigFishGamesCache

2011-02-26 07:45 <DIR> Boot

2010-11-20 13:40 383˙786 bootmgr

2010-08-27 12:40 8˙192 BOOTSECT.BAK

2012-06-09 19:35 3˙536 bootsqm.dat

2012-05-30 16:19 <DIR> Config.Msi

2010-09-09 14:47 180 csb.log

2009-07-14 06:08 <JUNCTION> Documents and Settings [C:\Users]

2011-06-13 19:56 5˙902 foldery.txt

2012-03-30 13:49 <DIR> found.000

2011-03-13 03:30 <DIR> glassfish3

2012-06-10 09:22 3˙167˙342˙592 hiberfil.sys

2010-09-28 01:31 <DIR> images

2010-12-11 19:21 4˙973 index.html

2010-09-09 14:45 217 Install.log

2010-09-09 14:43 <DIR> Intel

2012-04-07 18:26 <DIR> kleaner.tmp

2011-06-14 01:40 <DIR> l

2012-06-10 10:24 0 log.txt

2011-05-13 05:04 <DIR> MGADiagToolOutput

2011-02-20 05:17 <DIR> NVIDIA

2012-06-10 09:22 4˙223˙123˙456 pagefile.sys

2009-07-14 04:20 <DIR> PerfLogs

2010-09-28 00:19 <DIR> phocagallerym

2012-03-15 03:22 <DIR> Program Files

2012-05-29 18:36 <DIR> Program Files (x86)

2012-05-29 18:36 <DIR> ProgramData

2010-09-09 14:41 <DIR> Recovery

2012-05-03 17:02 1˙665 RHDSetup.log

2011-02-12 21:42 1˙265˙421 saida.txt

2012-06-10 04:07 <DIR> System Volume Information

2011-04-23 21:09 <DIR> totalcmd

2011-04-24 07:47 241 UnKIS.reg

2012-03-11 05:00 <DIR> Users

2011-03-19 13:31 <DIR> wamp

2012-06-10 04:29 <DIR> Windows

13 plik(˘w) 7˙392˙140˙161 bajt˘w

26 katalog(˘w) 120˙487˙251˙968 bajt˘w wolnych

log2.txt
"\\?\C:\Windows",1,"DACL(not_protected):ZARZĄDZANIE NT\SYSTEM,full,allow,no_inheritance:Administratorzy,full,allow,no_inheritance"
Do SetACL musiałem podać pełną ścieżkę.

Pozdrawiam

Odnośnik do komentarza

Przeprowadź testowy zrzut uprawnień na root + katalog C:\Windows i zobaczymy czy kłódka zniknie z katalogu Windows.

 

1. W Notatniku przygotuj dwa pliki o zawartości:

 

"\\?\C:\",1,"O:S-1-5-80-956008885-3418522649-1831038044-1853292631-2271478464D:PAI(A;;FA;;;BA)(A;OICIIO;GA;;;BA)(A;;FA;;;SY)(A;OICIIO;GA;;;SY)(A;OICI;0x1200a9;;;BU)(A;OICIIO;SDGXGWGR;;;AU)(A;;LC;;;AU)"

 

Zapisz jako fix1.txt

 

"\\?\C:\Windows",1,"O:S-1-5-80-956008885-3418522649-1831038044-1853292631-2271478464D:PAI(A;;FA;;;S-1-5-80-956008885-3418522649-1831038044-1853292631-2271478464)(A;CIIO;GA;;;S-1-5-80-956008885-3418522649-1831038044-1853292631-2271478464)(A;;0x1301bf;;;SY)(A;OICIIO;GA;;;SY)(A;;0x1301bf;;;BA)(A;OICIIO;GA;;;BA)(A;;0x1200a9;;;BU)(A;OICIIO;GXGR;;;BU)(A;OICIIO;GA;;;CO)"

 

Zapisz jako fix2.txt

 

2. Uruchom w WinRE Wiersz polecenia i zrzuć po kolei pliki komendami:

 

SetACL -on "C:\\" -ot file -actn restore -bckp C:\fix1.txt

 

SetACL -on "C:\Windows" -ot file -actn restore -bckp C:\fix2.txt

 

(Ścieżkę do SetACL.exe sobie dopasuj, bo nie wiem gdzie go położyłeś, a ścieżki do plików fix*.txt są tu podane umownie)

 

 

 

.

Odnośnik do komentarza

To jednak sugeruje, że uprawnienia są naruszone w szerszym zakresie, był prowadzony tylko reset nierekursywny na root i katalog Windows, prawdopodobnie coś jest uszkodzone także w głąb C:\Users i innych katalogów. Próbując coś tu jeszcze zrobić:

 

1. Podaj mi spis błędów, jakie zwracają programy.

 

2. Pod kątem ikon Pulpitu: przeprowadź kasowanie pliku cache. Uruchom Menedżer zadań, zabij proces explorer.exe, z menu Plik > Nowe zadanie uruchom cmd i wpisz polecenia:

 

cd %userprofile%\AppData\Local

del /a:h IconCache.db

 

3. Pod kątem Kosza: przeprowadź kasowanie katalogu. Uruchom cmd jako Administrator i wpisz polecenie:

 

rd /s /q C:\$Recycle.Bin

 

4. Spróbuj też wykonać zaległą komendę. Uruchom cmd jako Administrator i wpisz polecenie:

 

sfc /scannow

 

Postawię sprawę jasno: moim zdaniem lepiej zgarnąć teraz cenne dane z dysku i Windows postawić na nowo. Żadnego zaufania nie mam do aktualnej konstrukcji. Nie wiadomo jak daleki zasięg szkód i ile napraw tu jeszcze jest potrzebne. Te kłódki na pierwszym poziomie to mógł być tylko powierzchowny znak. Wierne przywrócenie uprawnień 1:1 dla całego dysku C to jest zadanie samobójcze. Ja oczywiście mogę Ci resetować po kawałku, ale czy to warte zachodu?

 

 

.

Odnośnik do komentarza

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...