Windows 기능을 조정하거나 시스템 문제를 해결할 때 '레지스트리(Registry)'라는 단어를 한 번쯤은 들어보셨을 겁니다. 하지만 정작 레지스트리가 정확히 무엇인지 알고 계신 분은 많지 않습니다.
개념을 알고 있다고 해도, 그것이 어떻게 작동하는지 그리고 왜 Windows 운영에 중요한지에 대해서는 여전히 미스터리로 남아 있는 경우가 많습니다.
이 글을 끝까지 읽으시면 레지스트리가 무엇인지, Windows가 이를 저장하는 것이 왜 중요한지, 언제 저장되는지, 그리고 필요할 때 직접 백업하는 방법까지 모두 이해하게 될 것입니다.
레지스트리란 무엇인가?
레지스트리는 본질적으로 하나의 거대한 데이터베이스입니다.
이 데이터베이스는 Windows 운영체제에 내장되어 있으며, 커널 옵션, 드라이버 설정, 서비스의 실행 정보, 사용자 인터페이스 옵션 등 다양한 시스템 수준의 구성 정보를 저장하는 데 사용됩니다.
또한 Windows는 레지스트리를 통해 앱이 설치된 위치, 설치 시각과 버전, 각 앱의 실행 옵션까지 추적합니다. 서드파티 개발자들도 원한다면 데이터를 레지스트리에 저장할 수 있으며 실제로 많은 프로그램이 그렇게 합니다. 다만 포터블(portable) 앱은 레지스트리를 전혀 사용하지 않습니다.
레지스트리는 폴더('키(key)'라고 함)와 파일('값(value)'이라고 함)로 구성된 계층 구조라고 생각하면 이해하기 쉽습니다. 키 안에는 하위 키(subkey)도 포함될 수 있기 때문에, 레지스트리 키 참조가 파일 경로처럼 보이는 것입니다. 예: "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows"
Windows가 레지스트리를 저장하는 이유와 시점
'레지스트리 저장'이라는 말은 두 가지 의미로 쓰일 수 있어 다소 혼란스러울 수 있습니다.
- 변경 사항을 적용하여 시스템 전체의 현재 상태를 수정하는 것
- 시스템 전체의 현재 상태를 파일로 내보내 참조용으로 보관하는 것
혼동을 피하기 위해 첫 번째 의미에는 '저장(save)', 두 번째 의미에는 '백업(back up)'이라는 용어를 사용하겠습니다.
첫 번째 의미는 너무나 기본적인 사항이므로(레지스트리에 변경이 가해지면 Windows는 즉시 디스크에 저장합니다), 이 글에서는 주로 두 번째 의미인 백업에 대해 다루겠습니다.
그렇다면 Windows는 언제 자동으로 레지스트리를 백업할까요? 이를 이해하려면 먼저 '시스템 복원(System Restore)'에 대해 알아야 합니다.
시스템 복원과 레지스트리
시스템 복원은 시스템의 부분 백업('복원 지점'이라고 함)을 생성하고, 시스템 상태를 과거 특정 시점으로 되돌릴 수 있게 해주는 Windows 기능입니다. 이 복원 지점들은 당시 시스템이 어떤 모습이었는지에 대한 참조점 역할을 합니다.
복원 지점이 생성되면 Windows는 다음 항목들을 저장합니다. 중요한 시스템 파일, 일부 프로그램 파일, 로컬 프로필 데이터(로밍 프로필은 제외), 시스템 수준의 구성 정보, 그리고 물론 레지스트리입니다.
Windows는 오직 복원 지점을 통해서만 자동으로 레지스트리 백업을 생성합니다.
따라서 Windows가 언제 레지스트리를 자동으로 백업하는지 완전히 이해하려면, 복원 지점이 언제 생성되는지 알아야 합니다.
- 새 앱을 설치하기 전 (설치 프로그램이 시스템 복원을 지원하는 경우)
- 드라이버를 설치하거나 업데이트하기 전
- Windows 업데이트를 실행하기 전
- 복원 지점을 복원하기 전
- 마지막으로 생성된 복원 지점 이후 7일이 경과할 때마다
시스템을 복원 지점 시점의 상태로 되돌리려면 해당 복원 지점에 반드시 레지스트리 스냅샷이 포함되어 있어야 합니다. 레지스트리에는 시스템이 정상적으로 작동하는 데 필수적인 시스템 수준의 구성 정보가 담겨 있기 때문입니다.
레지스트리 수동 백업 방법
Windows는 중요한 변경이 이루어지기 전에 레지스트리를 백업하려고 시도하지만, 완벽하지는 않습니다. 예를 들어, 사용자가 직접 레지스트리를 수정하려고 할 때는 자동으로 백업해주지 않습니다.
따라서 위험한 작업을 하기 전, 즉 레지스트리 값 편집, 레지스트리 정리, 출처 불명확한 앱 설치 등을 하기 전에는 반드시 스스로 레지스트리를 백업하는 것이 현명합니다. 다행히 방법은 매우 간단합니다.
- Windows 키 + R을 눌러 실행 창을 엽니다.
- regedit를 입력하고 Enter를 누른 뒤, UAC 권한 요청에서 예를 클릭합니다.
- 레지스트리 편집기에서 맨 위로 스크롤하여 컴퓨터를 선택하고 마우스 오른쪽 버튼을 클릭한 후 내보내기를 선택합니다.
- 백업을 저장할 위치로 이동하여 이름을 지정하고 저장을 클릭합니다. 최소한 날짜와 시간을 포함한 이름을 붙이는 것을 권장합니다.
이렇게 하면 시스템 레지스트리의 전체 상태가 담긴 REG 파일이 생성됩니다. 특정 키만 선택한 후 마우스 오른쪽 버튼을 클릭하고 내보내기를 선택하면 부분 백업도 가능합니다. 이 경우 해당 키와 그 하위 키만 백업됩니다.
레지스트리 백업을 복원해야 할 때도 마찬가지로 간단합니다.
- Windows 키 + R을 눌러 실행 창을 엽니다.
- regedit를 입력하고 Enter를 누른 뒤, UAC 권한 요청에서 예를 클릭합니다.
- 레지스트리 편집기에서 파일 > 가져오기...를 선택합니다.
- 레지스트리 파일 가져오기 대화상자에서 미리 만들어 둔 REG 백업 파일을 찾아 선택하고 열기를 클릭합니다.
단, 복원 시 백업 파일에 있는 모든 키가 현재 레지스트리를 덮어쓰며, 파일에는 존재하지만 현재 레지스트리에 없는 키는 새로 생성된다는 점에 유의하세요. 레지스트리 백업을 복원할 때는 항상 신중해야 합니다.
Windows 레지스트리 관련 추가 팁
레지스트리를 무서워할 필요는 없지만, 수정할 계획이라면 반드시 주의를 기울여야 합니다. 사소한 오타 하나만으로도 Windows가 오작동할 수 있습니다.
또한 레지스트리 클리너 앱을 실행하기 전에는 한 번 더 생각해 보세요. 이런 앱들이 성능 향상을 약속하지만 실제 효과는 기대에 미치지 못하는 경우가 많으며, 시스템 운영에 악영향을 주는 잘못된 변경을 가할 가능성도 배제할 수 없습니다. 실제로 레지스트리 정리는 과도한 최적화가 Windows를 손상시키는 대표적인 사례 중 하나입니다.
하지만 자신이 하는 작업을 제대로 이해하고 있다면, 레지스트리 튜닝은 생산적이고 유용한 작업이 될 수 있습니다. 원하는 레지스트리 키로 즉시 이동하는 팁을 활용해 보세요. 만약 실수를 하더라도 언제든지 레지스트리를 기본값으로 초기화할 수 있습니다.
레지스트리에 대해 더 궁금한 점이 있나요? 아래 댓글로 질문해 주세요. 이 글이 도움이 되셨다면 주변에 공유해 주세요. 감사합니다!