파일 보호 기능 완전히 끄기 II
게시일: 2004/07/19 | 글쓴이: doa | 14453 번 | 프린트 | 메일


이전팁, Windows Update v5에서 v4로 변경하기을 쓰면서 파일 보호 기능 완전히 끄기 팁을 적용했는데 복구 콘솔에서 작업하는 것이 귀찮아 이 팁을 쓰게되었다주1.

파일 보호 기능 완전히 끄기복구 콘솔에서 적용할 수 밖에 없는 이유는 SFCDisable 값을 무조건 0(기본값)으로 되돌리는 프로세스가 따로 있기때문이다(추측). 이번 팁에서는 복구 콘솔을 통하지 않고 파일 보호기능을 완전히 끄는 방법을 설명하겠다.

경고: 이 팁은 윈도우의 중요 시스템 파일을 변경하는 팁이다. 이팁을 적용한 결과에대한 책임은 팁을 적용한 사람 각자에 있으며 필자는 어떠한 책임도 질 수 없음을 미리 밝힌다.

  • SFC_OS.DLL 패치
    1. 자주 사용하는 헥사 편집기주2%SystemRoot%\System32 폴더의 SFC_OS.DLL을 읽어들인다주3.
    2. 헥사 편집기로 읽어 들인 파일을 다음 표에따라 편집한다. 즉, 옵셋에서 지정한 위치로 이동한 후, 변경전의 값을 변경후의 값으로 고치면된다.
      버전 빌드 옵셋 패치
      SP2 2149 F82~F8E 주4
      변경전: 44 00 69 00 73 00 61 00 62 00 6C 00 65
      변경후: 53 00 65 00 74 00 74 00 69 00 6E 00 67
      ECF9~ECFA
      변경전: 33 C0
      변경후: EB 01
      SP2 2180 F82~F8E 주4
      변경전: 44 00 69 00 73 00 61 00 62 00 6C 00 65
      변경후: 53 00 65 00 74 00 74 00 69 00 6E 00 67
      ECE9~ECEA
      변경전: 33 C0
      변경후: EB 01
    3. 헥사 편집기로 변경한 파일을 임시 폴더(예: D:\Temp)에 저장하고 헥사 편집기를 종료한다주5.
    4. 임시 폴더에 저장된 SFC_OS.DLL 파일을 시스템 파일 보호기능 쉽게 우회하기를 참조해서 %SystemRoot%\System32\DllCache 폴더와 %SystemRoot%\System32 폴더에 복사한다주6.


  • 레지스트리의 변경
    1. 시작/실행/regedit를 입력하고 확인을 클릭한다.
    2. 다음 레지스트리로 이동한다.
      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
    3. REG_DWORD 형의 SFCSetting주7를 추가하고, 다음 기준에따라 윈도우 파일 보호 기능을 설정한다.
      0WFP/SFC.사용
      1WFP/SFC 사용 안함. 다시 사용하려는 경우 확인 창이 뜸.
      2WFP/SFC 사용 안함. 다시 사용하려는 경우 확인창이 뜨지않음.
      4WFP/SFC 사용. 확인 창이 뜨지 않음.
      FFFFFF9DWFP/SFC를 완전하게 사용하지 않음


윈도우즈의 시스템 파일 보호 기능바이러스나 잘못된 응용 프로그램에의해 시스템의 중요한 파일이 변경되는 것을 막을 수 있는 XP의 아주 중요한 기능이다. 따라서 필자는 초보자의 경우 가급적 이 기능을 사용할 것을 권고 한다. 만약 이팁을 적용한 후, 파일 보호 기능을 다시 사용하려면 레지스트리의 변경의 3단계에서 SFCSetting의 값을 0으로 설정하면된다주8.

주1: E3F9~ECFA 옵셋의 값을 EB 01로 변경하고 복구 콘솔을 통해 복사하면 정상적으로 동작할 것으로 본다. 아직 확인은 안해봤으므로 정상적으로 동작하지 않는다면 게시판에 글을 올려주기 바란다.

주2: 필자의 경우 주로 WinHex를 사용하며, 공개 헥사 편집기를 원하는 경우 XVI32 를 다운받기 바란다.

주3: 위의 DLL에서 찾은 바이트가 위의 값과 정확히 일치하지 않은 경우 변경해서는 안된다.

주4: 이 과정은 앞서 설명했듯 SFCDisable의 값을 0으로 되돌리는 프로세스때문에 참조하는 레지스트리를 SFCDisabe에서 SFCSetting로 변경하는 과정이다.

주5: 헥사 편집기에 익숙하지않은 사용자는 필자의 홈페이지에서 패치된 SFC_OS.DLL 파일을 다운 받아 사용해도된다. 한가지 주의할 것은 이 파일은 SP2에서만 사용할 수 있다.

주6: SFC_OS.DLL 파일을 복사하기전에 %SystemRoot%\System32 폴더의 SFC_OS.DLL의 이름을 먼저 변경해야 한다.

주7: 주4에서 설명했듯 참조하는 레지스트리를 SFCDisable에서 SFCSetting로 변경했기때문에 SFCSetting라는 REG_DWORD 형의 값을 생성하는 것이다. 패치를 다른 문자열로 했다면 패치한 문자열의 값으로 생성하면 된다.

주8: SFCSetting데이타 값0으로 설정하면 이전에 삭제된 폴더들이 다시 생성된다. 이러한 폴더에 대한 정보는 sfcfiles.dll 파일에 저장되어있다.


조각모음을 수행하는 보다 간단한 방법 XP 시스템이 별다른 이유없이 느려졌다면 그 원... (16083) 2004-07-20
Windows Update v5에서 v4로 변경하기 얼마전까지 정상적으로 동작하던 이 팁은 SP2가 ... (18300)2004-07-19

QAOS.com에 게시된지 1년 이상된 자료와 관리자가 공개한 자료는 누구나 제한없이 읽을 수 있습니다.
그러나 QAOS.com의 자료를 퍼가는 것은 금지하고 있습니다.

이 정보가 유용하다고 생각되시면 QAOS.com과 많은 다른 사람들을 위해 퍼가기 보다는 링크로 알려주시기 바랍니다.

세상사는 이야기



RSS 구독 (익명 | 회원 | 강좌 | 포럼)
(C) 1996 ~ 2017 QAOS.com All rights reserved.