ERUNT 1.1j - 시스템 레지스트리 백업 및 복원 도구.

2011. 3. 18. 02:36IT/Useful Apps

ERUNT는 NT 기반의 Windows NT, 2000 이후의 운영체제에서 사용할 수 있는 레지스트리 백업 및 복원 프로그램이다. 현재 컴퓨터의 레지스트리 정보를 백업했다가 나중에 컴퓨터에 문제가 생겼을 때 레지스트리 복원만으로 간단하게 시스템을 정상 상태로 되돌릴 수 있다.

ㆍ제작자 : Lars Hederer
ㆍ사용권 : 전체 무료
ㆍ버전 : 1.1j
ㆍ설치 크기 : 1 MB 이하
ㆍ한글 지원 : 공식 지원
ㆍ구동 환경 : Windows NT/2000/2003/XP/Vista/7 (64-bit 지원)
ㆍ특징 : 전체 레지스트리 백업 및 복원
ㆍ내려받기 : ERUNT 내려받기 1   ERUNT 내려받기 2   한국어 언어 파일 내려받기

레지스트리는 윈도의 모든 정보를 담고 있는 부분이다. 흔히 파일을 중요하게 생각하지만, 파일 못지않게 중요한 것이 바로 이 레지스트리다. 레지스트리에 문제가 생기면 윈도를 시작할 수가 없어 부팅조차 되지 않을 수도 있다. 특정 문제 때문에 시스템이 정상적으로 동작하지 않을 땐 백업한 레지스트리를 복원하는 것만으로도 심각한 손상에서 벗어날 수 있다.

레지스트리를 백업하는 방법을 찾으면 많은 글에서 윈도 내장 레지스트리 편집기에서 전체 레지스트리를 저장하는 방법을 이야기하는 것을 볼 수 있다. 물론 이 방법이 틀린 방법은 아니다. 전체 레지스트리를 백업할 수 있는 것은 사실이다. 그렇지만, 복원한다고 했을 땐 문제가 생긴다. 확장자가 reg 형식인 파일을 레지스트리에 병합하면 이전 상태로 복원되는 것이 아니라 현재 레지스트리 정보에 이전에 백업한 레지스트리 정보가 그대로 추가되기 때문이다. 즉, 이전에 백업한 레지스트리 파일을 병합해도 시스템에 문제가 되는 필요 없거나 잘못된 항목은 그대로 남아있다.

그럼 복원할 수 있도록 레지스트리를 백업하려면 어떻게 해야 할까? 레지스트리 정보가 저장되어있는 파일을 복사해야 한다. Windows XP 기준으로 레지스트리는 WINDOWS\system32\config 폴더의 SAM, default, SECURITY, system, software 파일에 저장되어 있다. 또 사용자 정보는 Documents and Settings의 사용자 계정, LocalService, NetworkService에 NTUSER.DAT란 이름으로 저장되어 있고 다른 사용자 정보는 NTUSER.DAT가 저장된 폴더 속의 Local Settings\Application Data\Microsoft\Windows에 UsrClass.dat란 파일로 저장되어 있다. 주 레지스트리 파일 5개에 NTUSER.DAT, UsrClass.dat는 세 개씩이니 모두 합치면 11개의 파일이다. 이 파일을 저장해두면 나중에 이상이 생겼을 때 파일 교체만으로 레지스트리 정보를 지금 상태로 복원할 수 있다. 이 과정은 MS 기술 자료 307545 - Windows XP가 시작될 수 없도록 방해하는 손상된 레지스트리를 복구하는 방법에 자세히 설명되어 있다.

그러나 폴더를 찾고 파일을 복사해서 백업하는 과정은 조금 귀찮다. 게다가 나중에 복원하려면 더더욱 귀찮다. 각 폴더를 찾아가 원래 파일을 다른 이름으로 변경하고 백업한 파일을 복사해야 한다.

ERUNT는 이 모든 과정을 간단히 해결해주는 프로그램이다. 개발이 중단된지 오래된 프로그램이지만, 제작자 홈페이지의 '자주 묻는 질문'란을 살펴보면 모든 종류의 NT 기반 운영체제에서 사용할 수 있으며 UAC를 끈 상태의 Vista와 Windows 7에서도 사용할 수 있다고 되어 있다. ERUNT를 사용하면 레지스트리를 백업하고 복원할 수 있으며 사용자가 원하면 매일 자동으로 오늘 날짜 폴더에 레지스트리 정보를 저장할 수도 있다.


1. ERUNT로 레지스트리 백업하기

ERUNT를 내려받고 압축을 풀면 ERUNT.exe, AUTOBACK.exe, NTREGOPT.exe라는 세 가지 실행 파일과 언어 파일을 포함한 다른 여러 파일을 확인할 수 있다. 이 중 NTREGOPT.exe는 이전에 소개한 QuickSys RegDefrag와 같은 레지스트리 최적화 프로그램이므로 이 글에서는 이야기하지 않겠다.

ERUNT를 실행하면 레지스트리 백업 작업을 하겠다는 알림 문구가 나온다. [확인]을 눌러 넘어간다.

레지스트리를 백업할 폴더를 선택하고 어떤 레지스트리를 백업할지 선택한다. 기본으로 오늘 날짜가 폴더 이름으로 선택된다. 기본적으로 [시스템 레지스트리]와 [현재 사용자 레지스트리]를 백업하면 된다. 필요하다면 [기타 사용자 레지스트리]도 선택해서 같이 백업한다. [확인]을 눌러 넘어간다.

백업하겠다고 지정한 폴더가 없다면 위 그림과 같은 메시지가 나온다. [확인]을 클릭하면 폴더가 생성된다.

레지스트리를 백업하는 과정이다. 8개~11개 파일을 복사하는 작업이므로 금방 끝난다.

레지스트리 백업이 완료되면 레지스트리 복원 방법을 간단히 알려준다. [OK]를 누르면 프로그램이 종료된다. 여기까지 하면 레지스트리 백업이 끝이다.

만약 같은 폴더에 또 다시 백업하면 위 그림과 같은 경고 문구가 나온다. 만약 이전 백업 내용을 덮어쓰겠다면 [예]를 선택해서 백업을 진행하고 아니라면 [아니요]를 선택하고 다른 폴더에 백업한다.

ERUNT는 명령행 옵션도 제공한다.

ERUNT 대상 폴더 [sysreg] [curuser] [otherusers] [/noconfirmdelete] [/noprogresswindow]

대상 폴더는 레지스트리를 저장할 폴더를 지정하는 옵션이다. 예를 들어 D:\Registry Backup 이라고 지정할 수 있다. 대상 폴더는 날짜와 시간을 사용할 수 있는데 날짜는 #Date# 을 사용하고 시간은 #Time# 을 사용한다. 예를 들면 D:\Registry Backup\#Date# 처럼 사용할 수 있다.

sysreg, curuser, otherusers는 순서대로 시스템 레지스트리, 현재 사용자 레지스트리, 기타 사용자 레지스트리다. 지정하지 않으면 기본으로 시스템 레지스트리와 현재 사용자 레지스트리를 백업한다.

/noconfirmdelete 는 폴더가 중복될 때 묻지 않고 덮어쓰는 옵션이다. 앞에서 ERUNT를 실행했을 때 마지막 그림의 질문을 하지 않고 바로 덮어쓴다. 같은 폴더에 저장되어 있던 레지스트리 값은 삭제되므로 사용에 주의한다.

/noprogresswindow 는 진행 상태를 보여주지 않는 옵션이다. 원하는 대로 사용한다.

ERUNT D:\#Date#\#Time# sysreg curuser otherusers /noconfirmdelete /noprogresswindow

ERUNT 명령행을 사용해서 오늘 날짜 현재 시각 폴더에 시스템 레지스트리, 현재 사용자 레지스트리, 기타 사용자 레지스트리를 백업하고 폴더가 이미 존재해도 묻지 않고 덮어쓰며 진행 상태도 보고 싶지 않다면 위의 명령행을 사용한다.

실제 명령어 사용 화면과 생성된 레지스트리 백업 폴더 및 파일이다.


2. ERDNT로 레지스트리 복원하기

레지스트리가 백업된 폴더를 보면 레지스트리 파일과 함께 ERDNT.exe라는 파일이 있다. 이 파일이 바로 백업된 레지스트리를 복원하는 파일이다. 레지스트리를 복원하려면 파일을 실행한다.

레지스트리를 복원하겠다는 알림 문구가 나온다. [확인]을 눌러 넘어간다.

복원 옵션을 지정한다. 복원할 레지스트리 종류를 선택하고 방식을 선택한다. 방식은 그냥 Auto로 놔두면 된다. 참고로 NT는 NT 기반 윈도(NT, ME, 2000, XP, 2003 등)를 위한 옵션이고 파일 복사는 윈도 98 이전 운영 체제를 위한 옵션이다. [확인]을 눌러 넘어간다.

잠시 후 레지스트리 복원이 진행되고 복원이 끝나면 재부팅 메시지가 나온다. [예]를 누르면 시스템이 재부팅되면서 복원한 레지스트리가 적용된다.

ERDNT 역시 명령행 옵션을 제공한다.

ERDNT silent [sysreg] [curuser] [otherusers] [/mode:nt|filecopy] [/nobackup] [/noprogresswindow] [/reboot]

silent는 가능한 모든 스위치를 사용하고 조용히 복원하는 것이다. 알아서 레지스트리가 복원된다.

sysreg, curuser, otherusers는 ERUNT와 같다. 복원할 항목을 선택한다. 기본 값은 시스템 레지스트리와 현재 사용자 레지스트리다.

/mode:nt 와 /mode:filecopy 는 복원 방식을 선택하는 것이다. 그러나 이 스위치를 사용하지 않으면 알아서 자동으로 알맞은 방식을 선택하므로 사용하지 않는 것이 좋다.

/nobackup 은 복원 전에 현재 레지스트리를 백업하지 않는 것인데 어차피 NT 기반 윈도에선 적용되지 않는다. 무조건 백업 되니 사용할 필요 없다.

/noprogresswindow 는 진행 상태를 보여주지 않는 것이다.

/reboot은 레지스트리 복원 후 자동으로 시스템을 다시 시작하는 것이다.

필요한 옵션을 적당히 선택해서 사용하면 된다.


3. AUTOBACK으로 레지스트리를 자동 백업하기

AUTOBACK은 레지스트리 자동 백업 파일이다. 명령행으로만 사용할 수 있고 ERUNT 파일을 사용하므로 ERUNT.exe와 같은 폴더에 있어야 한다.

AUTOBACK.exe 파일을 실행하면 위 그림과 같은 대화창이 나타난다. [확인]을 누른다.

AUTOBACK에서 사용할 수 있는 명령행 스위치를 보여준다. 기본적으로 ERUNT와 같다. 추가로 사용할 수 있는 스위치만 살펴보자.

스위치를 살펴보기에 앞서 AUTOBACK의 동작 방식과 활용에 관해 간단히 알아보자. AUTOBACK을 제대로 사용하려면 대상 폴더의 맨 마지막 폴더 이름에 #Date#를 사용하자. 그럼 오늘 날짜로 레지스트리가 백업된다. 이런 식으로 하루하루 레지스트리 백업이 쌓여가면 최근 30일 치를 보관하고 자동으로 오래된 날짜의 레지스트리 백업을 삭제한다. 물론 이렇게 동작하려면 각 폴더가 날짜 형식으로 되어 있어야 한다.

/days:n 은 n일 동안의 백업 파일만 보관하고 오래된 파일을 삭제하는 것이다. 앞서 이야기한 것처럼 기본 값은 30일이지만, 사용자가 원하는 날짜로 바꿀 수 있다.

/alwayscreate 는 같은 날짜에 레지스트리 백업이 있어도 무조건 다시 백업하는 옵션이다.

이제 AUTOBACK을 사용해서 매일 컴퓨터를 켤 때 그날 날짜 폴더에 그날의 레지스트리를 백업해보자.

1. 일단 AUTOBACK.exe를 복사하고 원하는 위치에 마우스 오른쪽 단추를 눌러서 [바로 가기 붙여넣기]를 클릭한다.

2. 바로 가기 파일을 마우스 오른쪽 단추로 클릭하고 [속성]을 선택한다. [등록 정보] - [바로 가기] 탭의 [대상] 부분 마지막에 원하는 명령행 스위치를 추가한다. 가장 기본은 위 그림처럼 폴더 이름 마지막에 #Date#를 넣는 것이다. 그 외에 /noprogresswindow 도 유용하다.

3. 이제 이 바로 가기 파일을 [시작 메뉴] - [모든 프로그램] - [시작프로그램]으로 복사한다. 아니면 탐색기를 실행해서 C:\Documents and Settings\사용자 이름\시작 메뉴\프로그램\시작프로그램으로 이동한 다음 바로 가기 파일을 복사한다. 그러면 컴퓨터를 켤 때마다 매일 한 번씩 레지스트리가 자동으로 백업되고 최근 30일분의 레지스트리 백업이 항상 저장된다. 이렇게 저장된 레지스트리를 사용하면 나중에 컴퓨터가 심각한 오류를 일으킬 때 손쉽게 복원할 수 있다.

AUTOBACK을 사용하는 방법은 바로 가기 외에도 도스 명령어로 BAT나 CMD 파일을 만들거나 이를 EXE 파일로 만들 수도 있고 스크립트를 사용할 수도 있지만, 위 방법이 가장 간단한 것 같다.


4. ERUNT.ini 파일 수정하기

ERUNT.exe 파일이 있는 폴더에 ERUNT.ini 파일을 만들면 ERUNT의 기본 옵션을 바꿀 수 있다. 특별히 필요한 기능은 아니니 ERUNT.ini의 구조만 간단히 살펴보자.

[ERUNT]

DefaultDestinationFolder=D:\RegBackup
 기본 저장 폴더를 지정하는 옵션이다.

AppendDateToFolderEditField=1
 저장 폴더 마지막에 현재 날짜를 추가하는 옵션이다. 0은 추가하지 않는 것이고 1은 추가하는 것이다.
 기본값은 1이다. 

AppendTimeToFolderEditField=0
 저장 폴더 마지막에 현재 시각을 추가하는 옵션이다. 0은 추가 안 함, 1은 추가다. 기본값은 0이다. 

DateFormat=yyyy/mm/dd
 폴더 이름에 사용할 날짜 형식을 지정한다. 기본값은 윈도 지역 설정의 날짜 형식이다. 
DateSeparator=-
 년, 월, 일을 구분할 구분자를 선택한다. "."와 "-"을 사용할 수 있다. 

TimeFormat=hh:mm:ss
 폴더 이름에 사용할 시간 형식을 지정한다. 역시 기본값은 윈도 지역 설정의 시간 형식이다. 
TimeSeparator=.
 시, 분, 초를 구분할 구분자를 선택한다. "."와 "-"을 사용할 수 있다. 

DisableFastBackup=0
 윈도 XP와 서버 2003에서 기본으로 사용하는 Fast 백업 알고리즘 사용 여부를 선택한다.
 기본 방식(Fast)에 문제가 있을 땐 속도가 느린 Conventional 방식을 사용해야 한다.
 Fast 백업 알고리즘을 지원하지 않는 운영체제에선 아무런 효과가 없다.
 0은 Fast 방식, 1은 Conventional 방식이고 기본값은 0이다. 

왼쪽처럼 ERUNT.ini 파일을 작성하면 오른쪽처럼 기본값이 바뀐다. 단, ini 파일은 유니코드가 아닌 ANSI 형식으로 저장해야 한다.

ERUNT는 단순한 레지스트리 백업뿐 아니라 AUTOBACK을 사용한 레지스트리 자동 백업 기능을 제공한다. 사용자가 특별히 신경 쓰지 않아도 언제나 레지스트리를 백업할 수 있다. 또 백업 된 각 레지스트리 폴더의 ERDNT를 실행하면 윈도를 사용하고 있는 현재 상황에서도 간단히 레지스트리를 복구할 수 있다. 또 DOS용 파일을 제공하고 Bart PE 등에서도 사용할 수 있으므로 시스템 레지스트리에 문제가 생겨 부팅이 안 될 때 이전 레지스트리로 복원하는 작업도 간단하다.

특히 ERUNT는 레지스트리를 변경하는 앞으론 제대로 복구할 수도 없는 reg 파일로 레지스트리를 백업하지 말고 ERUNT를 사용하자. (물론 개별 레지스트리 키 값은 reg 파일로 백업해야 한다.)

* Windows XP의 각종 기능 추가를 한 번에!! 2 + 초기 상태 복구 파일.이나 Windows 7의 각종 기능 추가/시각 효과 제거 등을 한 번에!! 등을 적용하기 전엔 ERUNT로 전체 레지스트리를 백업해두는 것이 안전하다.