이에 대하여 Windows XP 환경에서 삭제되지 않는 레지스트리(Registry) 값을 삭제하는 방법에 대해 소개를 한 적이 있었습니다.
그런데 Windows 7 운영 체제를 사용하던 중 삭제되지 않는 레지스트리 값을 Windows XP 방식으로 권한 설정을 하다보면 변경된 사용 권한을 저장할 수 없어서 액세스가 거부되었다는 메시지를 볼 수 있습니다.
이런 문제로 Windows 7 운영 체제에서는 어떤 방법으로 Legacy 값과 같은 삭제되지 않는 레지스트리를 삭제할 수 있는지 알아보도록 하겠습니다.
참고로 테스트에서는 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\Root] 하위값에 등록된 경우이며, 일반적으로 .sys 드라이버(Driver) 파일을 설치한 백신 프로그램 삭제 후 남은 레지스트리 값을 삭제하도록 하겠습니다.
레지스트리 편집기(regedit)를 통해 특정 레지스트리 값을 삭제하려고 할 경우 위와 같이 삭제하려는 키값에 마우스 우클릭을 통해 생성된 하위 메뉴 중 [삭제]를 선택하여 삭제를 진행할 수 있습니다.
하지만 Legacy 키로 등록된 일부 레지스트리는 위와 같이 키를 지우는 동안 오류가 발생했다는 메시지를 통해 삭제가 이루어지지 않는 것을 확인할 수 있습니다.
이런 경우 삭제를 원하는 레지스트리에 마우스 우클릭을 한 하위 메뉴 중 [사용 권한(P)...] 항목을 선택합니다.
해당 레지스트리 값의 사용 권한 창의 하단에 있는 특정 권한 및 고급 설정을 위한 [고급] 버튼을 클릭하시기 바랍니다.
[고급 보안 설정 - 소유자] 항목을 보시면 현재 사용자가 삭제를 하려는 레지스트리 키값의 소유자가 Windows 시스템 관리자(Administrators)로 지정되어 있는 것을 확인할 수 있습니다.
이해를 돕기 위해 제어판의 사용자 계정 관리 항목을 보시면, 사용자가 현재 로그인한 Windows 관리자 권한을 가진 계정(※ 해당 계정은 사용자가 Windows 설치시 지정한 이름에 따라 다르게 표시됩니다.)도 어드민(Administrator) 권한을 가지고 있는 것을 확인할 수 있습니다.
또한 제어판에서는 보이지 않지만 Windows 시스템 관리자(Administrators) 계정이 원래 존재하며, 현재 삭제되지 않는 레지스트리는 이런 권한 문제로 인한 부분이므로 소유자를 변경해 주시면 됩니다.
그러므로 고급 보안 설정의 소유자 항목에서 [하위 컨테이너와 개체의 소유자 바꾸기(R)] 항목에 체크를 하신 후 적용 및 확인을 하시기 바랍니다.
다시 사용 권한 창으로 나오면 Everyone의 사용 권한 중 [모든 권한 - 허용] 항목에 체크를 하신 후 적용 및 확인을 하시기 바랍니다.
모든 권한을 수정한 후 삭제되지 않았던 레지스트리를 삭제해 보시면 정상적으로 삭제가 이루어지는 것을 확인할 수 있습니다.
이처럼 일부 삭제되지 않는 Legacy 레지스트리 값은 위와 같은 방법으로 삭제를 하시기 바라며, 안전을 위해서는 삭제하기 이전에 반드시 레지스트리 백업을 하시고 진행하시는 것이 좋습니다.