컴퓨팅/소프트웨어

윈도 7, 8 로그인 에러 해결방법 "The User Profile Service failed the Login. User Profile cannot be loaded."

epician 2013. 9. 6. 04:21

오류 발생 배경

조금 전 윈도 8에서 로그인이 안되는 기이한 에러가 발생하여 멘붕을 경험할 뻔 했습니다.

로그인 시, 보여지는 에러 메시지는 다음과 같습니다.

The User Profile Service failed the Login.
User Profile cannot be loaded.

요약하면 "사용자 프로필을 불러오지 못해 로그인에 실패했다" 정도.

여지껏 경험해보지 못한 희안한 오류인데 제 경우 발생과정은 아래와 같았습니다.

  1. 순간정전으로 컴퓨터 전원 OFF & ON 상황이 발생. 대략 1초 내외의 과정.
  2. 재부팅 후, chkdsk /f /x 명령으로 디스크 오류검사 시도.
    시스템 볼륨(파티션)은 잠금상태라 재부팅을 해야 오류검사가 진행되므로 재부팅.
  3. 시스템 볼륨으로 사용 중인 드라이브 2개 C, D 검사 완료 후 자동 재부팅.
  4. 로그인 에러 발생.

에러 로그에 MFT 오류가 있었다는 것이 기록되어 있는 것으로 보아, 순간정전 과정에서 디스크에 문제가 생겼다고 판단됩니다.
이를 복구하는 과정에서 사용자 프로필이 잠겼고요.

해결 방법

  1. 잠긴 계정 말고 다른 계정(관리자 권한)으로 로그인 할 수 있는 상태라면 다른 계정으로 로그인 합니다.
    만약, 다른 계정으로 로그인 불가능한 상황이라면 안전모드(Safe Mode with Command Prompt)로 부팅합니다.
  2. 명령창(Command Prompt) 등을 통해 레지스트리 에디터(regedit.exe)를 실행하여 아래 키를 찾아갑니다.
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList
  3. ProfileList 키를 펼쳐보면 그 아래에 등록된 계정이 여러 개 보이는데, S-1-5-xx-xxxxxxxxxx 이런 식의 키가 하나의 계정입니다.
    이 가운데 잠겨버린 본인의 계정을 찾아냅니다. 키 아래에 있는 ProfileImagePath 값을 보면 사용자 폴더 이름이 보이는데, 이것으로 본인 계정을 찾아낼 수 있습니다. 위 스크린샷에서 파란색 밑줄 부분입니다.
  4. 잠긴 계정을 찾았다면, ProfileList에 같은 키가 2개 중복되어 있는지 확인합니다. 하나는 정상적인 이름이고 하나는 정상적인 이름과 같은데 이름 맨 끝에 '.bak' 혹은 맨 앞에 '#'이 붙어 있습니다. (예: S-1-5-21-954075848-1186111865-436330640-1001.bak)
  5. 찾아낸 계정이 중복되어 있지 않고 오직 하나 뿐이라면, 로그인 에러가 단순한 계정 잠금의 문제가 아닌 다른 문제로 추정됩니다. 이후 과정은 해당 사항 없으니 다른 방법을 찾아보시길.
  6. 중복되어 있는 키를 확인했다면 정상적인 이름의 키를 지웁니다. 이게 OS가 임시로 복사해놓은 임시본이고, 키 이름 뒤에 .bak 이 붙은 것이 원본입니다.
  7. 임시본은 지웠다면, F2키를 눌러 원본 이름 뒤에 붙은 .bak 또는 이름 앞에 붙은 #을 지웁니다.
  8. 그리고 해당 키 아래에 있는 데이터 중에서 RefCount와 State 값을 0으로 바꿉니다.
    스크린샷에서 빨간색 밑줄에 해당.
  9. 재부팅 후, 정상적으로 로그인 되는 확인.

작업 전에 삭제, 수정할 레지스트리 항목을 백업해두시는 것도 좋은 습관 중 하나입니다. ^^