
작업하던 파일이 손상되거나 실수로 삭제했을 때, 파일 이름 뒤에 .BAK가 붙은 파일을 발견하고 안도한 경험이 있으신가요? 이 .BAK 파일은 데이터를 지켜주는 중요한 역할을 합니다. .BAK 파일의 정체와 올바르게 복원하는 방법에 대해 알아보겠습니다.
.BAK 파일이란 무엇인가? (핵심 정의)
.BAK 파일은 문서, 데이터베이스, 프로젝트, 도면 등 다양한 원본 파일을 보호하기 위해 생성된 '백업(Backup)' 사본 파일입니다. 즉, 원본 파일에 문제가 생겼을 경우를 대비해 따로 보관해 두는 '예비 파일'입니다.
이름 그대로 BAK는 'Backup(백업)'의 줄임말입니다.
그래서 이 파일, 어디에 쓰는 건가요? (주요 용도와 사용 분야)
.BAK 파일은 '데이터 보존 및 복구'라는 명확한 목적을 가집니다. 많은 프로그램이 사용자의 데이터를 보호하기 위해 이 파일을 활용합니다.
- 자동 백업: AutoCAD 같은 도면 프로그램이나 문서 편집기가 사용자가 파일을 저장할 때마다, 바로 '직전 버전'을 .BAK 파일로 자동 저장합니다.
- 수동 백업: MS-SQL Server 같은 데이터베이스 프로그램에서, 관리자가 데이터베이스 전체의 스냅샷을 안전하게 보관하기 위해 수동으로 .BAK 파일을 생성(백업)합니다.
이 파일들은 보통 원본 파일과 같은 폴더에 저장되거나, 별도의 `Backup` 폴더에 모여있습니다.
이 파일을 열려면? (운영체제별 추천 프로그램)
.BAK 파일을 여는 방법은 '어떤 프로그램이 이 파일을 만들었는지'에 따라 다릅니다. .BAK 파일은 그 자체로 실행되는 파일이 아니라, '원본의 확장자'로 되돌려야 열 수 있습니다.
방법 1: 확장자 이름 변경 (가장 일반적인 방법)
대부분의 .BAK 파일은 원본 파일의 확장자 뒤에 `.bak`가 붙어있거나, 확장자 자체가 `.bak`로 변경된 상태입니다.
- 파일 탐색기에서 파일 이름을 변경하여 `.bak` 부분을 삭제합니다.
- 예: `mydocument.doc.bak` → `mydocument.doc` (MS 워드로 열기)
- 예: `mydrawing.dwg.bak` → `mydrawing.dwg` (AutoCAD로 열기)
- 만약 원본 확장자를 모른다면(예: `mydocument.bak`), 어떤 프로그램의 백업인지 추측하여 원본 확장자를 붙여줘야 합니다.
- 예: `mydocument.bak` → `mydocument.txt` (메모장으로 열기 시도)
방법 2: 프로그램의 '복원' 기능 사용
단순히 확장자를 변경하는 것만으로 열리지 않는 경우도 있습니다.
- MS-SQL Server: `.bak` 파일은 `SSMS(SQL Server Management Studio)` 툴 내의 '데이터베이스 복원(Restore Database)' 기능을 통해서만 데이터베이스로 복구할 수 있습니다.
- 특정 프로그램: 일부 프로그램은 .BAK 파일을 직접 열지 못하고, 프로그램 내의 '백업 관리자'나 '복구' 유틸리티를 통해서만 복원할 수 있습니다.
파일 구조 엿보기 (Text vs Binary)
.BAK 파일의 구조는 전적으로 원본 파일의 형식을 따릅니다.
원본 파일이 `.txt`나 `.ini` 같은 텍스트 파일이었다면, .BAK 파일 역시 텍스트(Text) 기반이므로 메모장으로 내용을 확인할 수 있습니다.
반면, 원본 파일이 `.dwg`(도면), `.mdf`(데이터베이스), `.doc`(문서) 같은 바이너리 파일이었다면, .BAK 파일 역시 바이너리(Binary) 기반이므로 메모장으로 열면 내용을 알아볼 수 없습니다.

자주 겪는 문제와 해결 방법
- 문제: `.bak` 확장자를 지우고 원본 확장자(예: .doc)로 바꿨는데 파일이 열리지 않고 오류가 납니다.
해결: 백업 파일 자체가 생성될 당시에 이미 손상되었을 수 있습니다. 또는, 파일 이름 변경만으로는 부족하고 해당 프로그램의 공식 '복원' 절차(예: SQL Server의 RESTORE 명령어)를 따라야 할 수도 있습니다.
- 문제: 어떤 프로그램의 백업 파일인지 도저히 모르겠습니다.
해결: .BAK 파일을 메모장으로 열어보세요. 바이너리 파일이라도 파일의 앞부분(헤더)에 원본 프로그램을 식별할 수 있는 텍스트(예: `AutoCAD`, `MS-SQL`)가 포함되어 있는 경우가 있습니다.
이것만은 주의하세요! (보안 위험 및 주의사항)
.BAK 파일은 데이터 사본이므로 그 자체는 안전합니다. 하지만 악성코드 유포자들이 이 점을 악용할 수 있습니다.
해커들은 `.exe` 같은 실행형 악성 파일을 `.bak`로 위장하여 이메일로 보낸 뒤, "중요한 파일이니 확장자를 .exe로 바꾸어 실행하세요"라고 사용자를 속일 수 있습니다. 출처가 불분명한 .BAK 파일은 절대 확장자를 변경하여 실행하지 마세요.
다른 형식으로 바꾸고 싶다면? (파일 변환 방법)
.BAK 파일은 다른 형식으로 '변환(Convert)'하는 파일이 아닙니다. 대신 '복원(Restore)' 또는 '이름 변경(Rename)'을 통해 원본의 상태로 되돌리는 것입니다.
.BAK 파일을 '복원'하는 가장 기본적인 방법은 파일 이름에서 `.bak` 확장자를 제거하고, 그 자리에 원본 파일의 확장자를 정확히 입력하는 것입니다.
비슷하지만 다른 친구들 (유사 확장자 비교)
- .OLD: .BAK와 거의 동일한 용도로 사용됩니다. 프로그램이 업데이트되거나 파일이 수정되기 전의 '오래된(Old)' 버전을 보관하는 관습적인 백업 확장자입니다.
- .TMP (Temporary File): 프로그램이 작업하는 '동안' 임시 데이터를 저장하는 파일입니다. 작업이 정상 종료되면 보통 삭제됩니다. .BAK는 작업 '완료 후' 버전을 보존하는 목적입니다.
- .SV$ (AutoCAD AutoSave): AutoCAD가 비정상 종료를 대비해 '자동 저장(Auto-Save)'하는 임시 파일입니다. .BAK는 사용자가 '수동 저장(Save)'할 때 생성되는 직전 버전 백업입니다.
핵심만 콕! 3줄 요약 및 정리
1. .BAK 파일은 원본 파일의 손상이나 유실에 대비하기 위해 프로그램이 생성하는 '백업(Backup)' 사본 파일입니다.
2. 특정 개발사가 없으며, 원본 파일의 형식(텍스트 또는 바이너리)을 그대로 따릅니다.
3. .BAK 파일을 복원하려면 `.bak` 확장자를 제거하고 원본 확장자(예: .doc, .dwg)로 이름을 변경하거나, 프로그램의 '복원' 기능을 이용해야 합니다.