Computer >> 컴퓨터 >  >> 소프트웨어 >> 소프트웨어

리눅스에서 삭제된 파일 안전하게 복구하는 방법: TestDisk·PhotoRec 완벽 가이드

중요한 파일을 실수로 삭제하는 것은 많은 컴퓨터 사용자가 한 번쯤 겪어본 악몽 같은 상황입니다. 다행히 리눅스를 사용한다면 희망이 있습니다. 다양한 도구와 기법을 활용해 파일을 되살릴 수 있기 때문입니다.

복구 작업을 시작하기 전에, 삭제된 파일이 새 데이터로 덮어쓰이지 않도록 해당 드라이브를 즉시 마운트 해제(unmount)해야 합니다. 이 단계 하나만으로도 파일 복구 성공률이 크게 달라집니다.

리눅스에서 삭제된 파일을 복구하는 방법을 잘 모르신다면, 아래 단계를 차례대로 따라 해보세요.

리눅스 파일 관리 방식 이해하기

리눅스 PC에서 삭제된 파일을 복구하기 전에, 어떻게 복구가 가능한지 원리를 이해하는 것이 좋습니다. 그 비결은 리눅스 파일 시스템의 파일 관리 방식에 있습니다.

리눅스의 파일은 inode(아이노드)를 사용하며, 여기에는 파일 크기와 디스크상의 위치 같은 핵심 정보가 담겨 있습니다. 파일을 삭제하면 해당 inode는 '사용 가능' 상태로 표시됩니다. 데이터 자체는 기술적으로 여전히 디스크에 남아 있지만, 접근 권한을 잃게 됩니다. 시간이 지나면 새로운 파일들이 기존 데이터를 덮어쓰기 때문에, 복구는 갈수록 어려워집니다.

리눅스에는 기본 내장된 undelete 명령어는 없지만, 용도에 따라 TestDisk나 PhotoRec 같은 도구로 파일을 복구할 수 있습니다. 파일이 사라진 것을 알아차렸다면 최대한 빨리 조치하는 것이 중요합니다. 데이터는 순식간에 덮어써질 수 있기 때문입니다.

다만 복구는 예방의 대체제가 아닙니다. 앞으로 이런 상황을 피하려면 정기적으로 파일을 백업하고, 명확한 폴더 구조를 유지해 실수로 인한 삭제 위험을 최소화하세요.

파일 복구 전 필수 준비사항

리눅스에서 삭제된 데이터를 복구할 때는 성공률을 높이기 위해 몇 가지 중요한 주의사항을 지켜야 합니다.

데이터 덮어쓰기 방지

잃어버린 파일을 복구할 때 가장 중요한 것은 복구하려는 데이터를 덮어쓰지 않도록 하는 것입니다. 파일이 사라진 것을 발견하면 즉시 해당 드라이브의 사용을 중단해야 합니다.

그런 다음 Live CD나 USB에 담긴 휴대용 리눅스 배포판으로 시스템을 부팅해 복구 작업을 진행하는 것이 좋습니다. 또한 복구된 파일을 반드시 다른 드라이브에 저장해 추가적인 덮어쓰기를 방지해야 합니다.

데이터 백업

데이터를 안전하게 보호하려면 미리 백업 계획을 세워두는 것이 좋습니다. 신뢰할 수 있는 백업이 있다면 데이터 복구 과정에 대한 걱정을 크게 줄일 수 있습니다.

매일, 매주, 매월 등 정기적인 백업 일정을 정하고, 하드웨어 고장이나 자연재해로 인한 데이터 손실에 대비해 물리적 저장소와 온라인 저장소 등 여러 곳에 백업을 분산 보관하는 것이 바람직합니다.

이것이 어렵다면 Dropbox나 Google Drive 같은 클라우드 스토리지를 활용해 가장 중요한 파일을 물리적 장소와 분리해 보관하는 방법도 있습니다.

안전한 명령어 사용 습관

리눅스 PC에서 작업할 때는 실수로 파일을 덮어쓰거나 삭제하지 않도록 몇 가지 모범 사례를 따르는 것이 좋습니다.

먼저 cp(복사), mv(이동), df(파일 시스템 표시) 같은 기본 명령어에 익숙해지세요. 올바른 사용법과 문법을 익히고, 확실하지 않으면 터미널에 man 명령어(예: man cp)를 입력해 자세한 내용을 확인할 수 있습니다.

중요한 파일을 다룰 때는 항상 명령어를 실행하기 전에 두 번 확인하는 습관을 들이세요. 파일 덮어쓰기를 방지하는 좋은 방법 중 하나는 cp와 mv 명령어에 --no-clobber 옵션을 붙이는 것입니다. 이 옵션은 기존 파일을 덮어쓰지 않도록 막아줍니다.

rm(remove) 명령어로 파일을 삭제할 때는 삭제 전 확인 메시지를 띄워주는 -i(interactive) 옵션을 함께 사용하는 것도 좋은 방법입니다.

이런 주의사항을 지키면 중요한 파일을 실수로 잃거나 덮어쓸 가능성을 크게 줄일 수 있습니다. 결국 예방이 복구보다 훨씬 낫습니다.

TestDisk로 삭제된 파일 복구하기

리눅스에서 삭제된 파일을 복구하는 데 유용한 도구 중 하나가 TestDisk입니다. TestDisk는 데이터 복구를 위해 설계된 오픈소스 도구로, 파일 시스템 구조가 손상되었거나 드라이브를 실수로 포맷했을 때 잃어버린 파티션 전체를 복구할 수 있습니다.

개별 파일만 복구하고 싶다면 TestDisk의 동반 프로그램인 PhotoRec을 사용하는 것이 좋습니다. 사용 방법은 다음 섹션에서 설명합니다.

Ubuntu 및 Debian 계열 운영체제에서는 터미널을 열고 다음 명령어를 입력하면 TestDisk를 빠르게 설치할 수 있습니다.

sudo apt install testdisk

리눅스에서 삭제된 파일 안전하게 복구하는 방법: TestDisk·PhotoRec 완벽 가이드

분실된 파티션 찾기

TestDisk를 설치했다면 첫 번째 단계는 작업할 파티션을 식별하는 것입니다. 터미널에 sudo testdisk를 입력해 TestDisk를 실행하세요.

리눅스에서 삭제된 파일 안전하게 복구하는 방법: TestDisk·PhotoRec 완벽 가이드

로그 파일 생성 여부를 묻는 메시지가 표시되면 Create를 선택해 새 로그 파일을 만들고, Enter를 눌러 확인합니다.

리눅스에서 삭제된 파일 안전하게 복구하는 방법: TestDisk·PhotoRec 완벽 가이드

화살표 키로 복구할 하드 드라이브를 선택하고 Proceed를 선택한 후 Enter를 누릅니다.

리눅스에서 삭제된 파일 안전하게 복구하는 방법: TestDisk·PhotoRec 완벽 가이드

파티션 타입을 선택하라는 메시지가 나타나면 해당 항목을 고른 후 Enter를 누릅니다. 대부분의 사용자는 Intel을 선택하면 되지만, 화면 하단의 힌트를 함께 참고하세요. 대부분의 경우 이 힌트가 정확합니다.

리눅스에서 삭제된 파일 안전하게 복구하는 방법: TestDisk·PhotoRec 완벽 가이드

이제 본격적인 작업 준비가 끝났습니다. Analyse를 선택해 현재 파티션을 분석하거나, Advanced를 선택해 다른 파일 시스템 복구 도구에 접근할 수 있습니다.

리눅스에서 삭제된 파일 안전하게 복구하는 방법: TestDisk·PhotoRec 완벽 가이드

준비가 되면 Quick Search를 선택해 분실된 파티션 검색을 시작하고 Enter를 누릅니다.

리눅스에서 삭제된 파일 안전하게 복구하는 방법: TestDisk·PhotoRec 완벽 가이드

TestDisk로 파일 복구하기

TestDisk가 분실된 파티션을 검색합니다. 찾지 못하면 Deeper Search를 선택하고 검색이 완료될 때까지 기다리세요. 파티션을 찾았다면 복구를 시도할 수 있습니다.

화살표 키로 파티션을 선택한 후 p를 누르면 해당 파티션에 있는 파일 목록을 확인할 수 있습니다.

리눅스에서 삭제된 파일 안전하게 복구하는 방법: TestDisk·PhotoRec 완벽 가이드

올바른 파티션이라면 q(소문자)를 눌러 이전 메뉴로 돌아간 다음, 좌우 화살표 키를 눌러 파티션 상태를 deleted에서 일반 logical 또는 primary 파티션으로 변경합니다. Enter를 눌러 변경 사항을 확인한 뒤, 파티션 테이블에 변경 사항을 기록하려면 Write를 선택하고 Enter를 누릅니다.

리눅스에서 삭제된 파일 안전하게 복구하는 방법: TestDisk·PhotoRec 완벽 가이드

과정이 완료되면 드라이브를 마운트해 평소처럼 파일을 열람할 수 있어야 합니다.

PhotoRec로 삭제된 파일 복구하기

전체 드라이브나 파티션이 아니라 소수의 파일만 복구하면 된다면 PhotoRec이 더 적합합니다. PhotoRec은 TestDisk의 동반 복구 도구로, 사용하려면 먼저 TestDisk를 설치해야 합니다.

PhotoRec은 ZIP 파일부터 각종 미디어 파일까지 방대한 종류의 파일 확장자를 지원합니다.

PhotoRec 실행하기

PhotoRec을 사용하면 이미지, 문서, FAT 및 ext3 같은 파일 시스템 등 복구할 파일 유형을 직접 선택할 수 있습니다. 원하는 파티션을 선택하면 파일 시스템을 지정하는 옵션이 제공됩니다.

여기서는 ext4 파티션에서 파일을 복구하는 방법을 기준으로 설명하지만, 다른 파일 시스템에서도 절차는 거의 동일하게 적용됩니다.

PhotoRec을 실행하려면 먼저 앞서 안내한 방법대로 TestDisk를 설치한 뒤, 리눅스 터미널에서 다음 명령어를 입력하세요.

sudo photorec

리눅스에서 삭제된 파일 안전하게 복구하는 방법: TestDisk·PhotoRec 완벽 가이드

그러면 PhotoRec이 관리자 권한으로 실행됩니다. 정상적으로 실행되려면 시스템 root 비밀번호를 입력해야 할 수 있습니다. 화면에는 파티션, 연결된 디스크 및 장치 목록이 표시됩니다.

위아래 화살표 키로 메뉴를 탐색해 파일을 복구할 파티션을 선택한 다음, 오른쪽 화살표 키로 Proceed를 선택하고 Enter를 눌러 진행합니다.

리눅스에서 삭제된 파일 안전하게 복구하는 방법: TestDisk·PhotoRec 완벽 가이드

복구할 파일 유형 선택하기

다음 메뉴에서 File Opt를 선택하고 Enter를 누릅니다.

리눅스에서 삭제된 파일 안전하게 복구하는 방법: TestDisk·PhotoRec 완벽 가이드

이 메뉴에서 화살표 키와 Enter 키를 사용해 검색할(또는 제외할) 파일 유형을 지정합니다. X 표시가 된 항목이 복구 대상입니다. b(소문자)를 눌러 설정을 저장한 다음, q를 눌러 이전 메뉴로 돌아갑니다.

리눅스에서 삭제된 파일 안전하게 복구하는 방법: TestDisk·PhotoRec 완벽 가이드

모든 설정이 끝나면 Search를 선택하고 Enter를 누릅니다.

리눅스에서 삭제된 파일 안전하게 복구하는 방법: TestDisk·PhotoRec 완벽 가이드

복구된 파일을 저장할 위치를 선택해야 합니다. 저장할 디렉터리를 고른 후 C(대문자)를 누르면 됩니다.

리눅스에서 삭제된 파일 안전하게 복구하는 방법: TestDisk·PhotoRec 완벽 가이드

PhotoRec이 선택한 파티션 스캔을 시작하고 지정된 파일 유형을 자동으로 복구합니다. 작업이 완료되면 터미널에 복구된 파일 수를 포함한 결과가 표시됩니다.

리눅스에서 파일 소중하게 지키기

위의 단계들을 따르면 리눅스에서 삭제된 파일을 최대한 되살릴 수 있습니다. 신속하게 조치하고 해당 장치를 마운트 해제하면 복구 성공률이 크게 높아진다는 점을 꼭 기억하세요.

파일을 더 체계적으로 관리하고 싶다면, 파일 삭제 위험 없이 리눅스 파일을 이동하거나 이름을 변경하는 방법을 활용해 보세요. 리눅스 초보자라면 리눅스 디렉터리 구조를 이해하는 것이 파일을 빠르게 찾고 적절한 위치에 저장하는 데 큰 도움이 됩니다.