SFC에서“수리 보류”오류를 어떻게 복구합니까?


10

Windows 레지스트리 및 서비스 관련 문제를 해결하려고합니다. sfc 명령을 실행하려고 시도했지만 이것이 오류 메시지입니까?

C:\Windows>sfc /scannow

Beginning system scan.  This process will take some time.    

There is a system repair pending which requires reboot to complete.  Restart
Windows and run sfc again.

C:\Windows>

그러나이 메시지가 처음 나타난 이후로 여러 번 재부팅했으며 안전 모드와 콘솔 모드에서 명령을 실행하려고 시도했지만 여전히 동일한 메시지가 표시됩니다. 어떻게 제거합니까?

winsxs 폴더에이 파일이 있습니다. C : \ Windows \ winsxs \ cleanup.xml

이것은 내용입니다 :

<?xml version='1.0' encoding='utf-16'?>
<PendingTransaction >
    <POQ postAction="NoReboot">
        <DeleteFile path="\??\D:\$$DeleteMe.CbsMsg.dll.01c85bd2f5893b40.0000"/>
    </POQ>
</PendingTransaction>

이것이 뭔가가 될 수 있습니까? 이것이 원인입니까? 이 파일을 삭제해도 안전한가요?

최신 정보

이름을 바꾸려고했지만 작업이 실패했습니다.

높은 권한으로 explorer.exe를 실행하고 해당 위치로 이동했습니다. UAC 확인 메시지가 표시되면 아래 오류가 발생합니다.

Destination Folder Access Denied
You need permission to perform this action

이 파일의 이름을 바꾸거나 삭제하려면 어떻게합니까? cmd를 사용해야합니까, 아니면 안전 모드에 있어야합니까?

업데이트 2

명령 프롬프트로 안전 모드를 시작하고 파일의 소유권을 얻은 다음 이름을 바꾸려고했습니다. 이름을 바꾸지 못했습니다.

C:\Windows\winsxs>ren cleanup.xml cleanup.xml.old
Access is denied.

C:\Windows\winsxs>takeown /f "cleanup.xml"

SUCCESS: The file (or folder): "C:\Windows\winsxs\cleanup.xml" now owned by user
 "mycomputername\username".

C:\Windows\winsxs>ren cleanup.xml cleanup.xml.old
Access is denied.

C:\Windows\winsxs>

나는 또한 다음 명령을 내렸다.

C:\Windows\system32>icacls "C:\Windows\winsxs\cleanup.xml" /grant username:F
processed file: C:\Windows\winsxs\cleanup.xml
Successfully processed 1 files; Failed processing 0 files

C:\Windows\system32>cd ..\winsxs

C:\Windows\winsxs>ren cleanup.xml cleanup.xml.old
Access is denied.

C:\Windows\winsxs>

여전히 이름을 바꿀 수 없습니다. 이 마지막 두 명령을 일반 Windows 모드에서 실행했습니다. 문제가 되나요? ... 재부팅을 시도합니다.


수리 설치 를 수행하여 문제가 해결되었습니다 .
Samir

같은 문제가 있지만 cleanup.xml파일이 없으므로 그 원인이 아니라고 생각합니다.
BlueRaja-대니 Pflughoeft

@BlueRaja 내가 기억하는 것처럼, 정리와 관련이 있지만이 문제가 있음을 알기 위해이 파일이 필요하지 않을 수도 있습니다. 두 번째 답변을 살펴보십시오. 레지스트리 트릭이 도움이 될 수 있습니다. 올바르게 기억하면 수리 설치를 마쳤습니다. 그래서 나는 그것을 시도하지 못했습니다.
Samir

답변:


12

Windows 7에서도 동일한 문제가 발생했습니다. 마침내 sfc복구 콘솔에서 다음 명령을 사용하여 실행했습니다 (어떤 이유로 )가 D:아닌 주 디스크에 할당 되었습니다.C:

델 d : \ windows \ winsxs \ pending.xml
델 x : \ windows \ winsxs \ pending.xml
sfc / scannow / offbootdir = D : \ offwindir = D : \ Windows

(그러나 sfc이제 말해

Windows Resource Protection이 손상된 파일을 발견했지만 일부 파일을 수정할 수 없습니다.

그래서 이것은 내 시작 문제를 해결하지 못했습니다 )


이것은 실제로 질문에 대답하지 않습니다. 다른 질문이 있으면 질문하기를 클릭하여 질문 할 수 있습니다 . 현상금추가 하여이 질문에 더 많은 관심을 끌 수도 있습니다 .
CharlieRB

이것은 질문에 대한 답변을 제공하지 않습니다. 저자에게 비평을하거나 설명을 요청하려면 게시물 아래에 의견을 남기십시오.
Ramhound

1
@CharlieRB와 Ramhound : 응? 예, 그것은 절대적으로 질문에 대답합니다. 문제는 "이 오류가 발생할 때 SFC를 어떻게 강제 실행합니까?"입니다. 동일한 일이 발생했을 때 SFC를 강제 실행하는 데 사용했던 솔루션을 제공했습니다. 그것은 사실 내 근본적인 문제가 해결되지 않는,하지만 난 단지 말을 언급 한 이유는 질문에 접선 (다른 스레드에 대한 링크를 제공 나처럼 도움이 다른 사람에게)
BlueRaja - 대니 Pflughoeft

@BlueRaja-문제가있는 것은 저자의 질문과 관련이 없습니다. 다시 말해 답의 두 번째 부분은 sammyg의 문제와 관련이 없습니다. 자신의 질문에 연결하는 방법은 삭제 방법과 관련 pending.xml이 없습니다 (그렇지 않습니다).
Ramhound

1
@Ramhound : 예, 나는 이미 말했다. 그러나 인터넷에 나와 같은 문제가있는 다른 사람들이있을 수 있습니다. 누구처럼 내가 인터넷 검색을 통해이 페이지를 찾을 수 있기 때문에 관련 정보를 추가하여 올바른 방향으로 지적했습니다 (이 사이트에서는 매우 일반적입니다) . 당신이 어떻게 그 잘못을 할 수 있는지 이해할 수 없습니다. 어쨌든, 나는 그것을 괄호로 묶었으므로 누군가가 그것을 대답의 필요한 부분으로 혼동 할 수있는 방법이 없습니다.
BlueRaja-대니 Pflughoeft

4

이 명령은 그렇게해야합니다.

dism.exe /image:C:\ /cleanup-image /revertpendingactions

그러나 이것은 Windows 7 이상에서만 작동합니다. Windows Vista 에는 dism.exe 도구 가 없습니다 . 나는이 질문을 찾은 사람들과 Windows 7을 가지고있는 사람들과 그것을 공유 할 것이라고 생각했습니다. 나는 이것을 직접 테스트 할 수는 없었지만, 이 사람 은이 성가신 오류 메시지를 세계에서 제거 할 수 있다고 말합니다. 따라서 시도해 볼 가치가 있습니다.


수리 프롬프트에서이 명령을 실행하면 다음과 같이됩니다. Error 0x80029c4a - The request is not supported(
BlueRaja-Danny Pflughoeft

어떤 버전의 Windows입니까?
Samir

Windows 7 Professional Edition (MSDN을 통해 합법적으로 획득)
BlueRaja-Danny Pflughoeft

이것이 같은 문제인지 확실하지 않습니다. Windows Vista를 사용하고있었습니다. 내가 기억하는 것처럼, 원래의 문제는 Windows Audio 서비스와 관련이있었습니다. 지금 기억할 수없는 이유로 시작되지 않았습니다. 그래서 나는 소리가 없었다. 수리하려고했지만 새로운 문제가 생겼습니다. 이 질문은 그 새로운 문제를 설명합니다. 그래서 나는 당신을이 문제로 이끌었던 것을 모른다. 이 사이트에서 찾은 모든 솔루션은 "있는 그대로"입니다. 특정 단계에 적응하지 않고 모든 단계를 맹목적으로 따르지 마십시오.
Samir

@sammyg-이 특정 명령에는 특정 Windows 7 업데이트가 필요합니다. 정보가 부족하여 2 년 후 혼동을 일으킨 정보를 지정하는 것이 유용 할 수 있습니다.
Ramhound

0

SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing이라는 키가 표시되면 레지스트리 를 확인하십시오 RebootPending. 이곳은 Windows가 재부팅 대기 중인지 확인하는 곳입니다.


HKLM (로컬 머신)에서?
Samir

예, 가지고 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing\RebootPending있으며 기본 문자열 값만 포함하고 아무것도 설정하지 않았습니다. 0으로 설정해야합니까? 아니면 열쇠를 제거 하시겠습니까?
Samir

"RebootPending을 삭제할 수 없습니다 : 키를 삭제하는 동안 오류가 발생했습니다."
Samir


감사! 그 reg 도구를 다운로드 할 것이고, 언젠가는 유용 할 것이라고 확신합니다. 따라서 도구 상자에있는 것이 좋습니다.
Samir

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.