리눅스 화일시스템의 성격상 일단 삭제한 화일을 복구한다는 건
굉장히 어려운 것으로 알려져 있습니다. 최근에 와서는 삭제복구
유틸리티들이 여러가지 나오고 있지만 막상 시스템에서 작업을
하다가 중요한 화일을 자기도 모르게 삭제했을 때 당장 쓸 수
있는 방법은 거의 없는 것이 사실이죠. 아마 많은 분들이 이미
당하신 일일 겁니다. 저도 실제로 곤경에 처해서 황당해 하다가
이 팁을 발견하게 되었습니다. 알고보면 아주 간단합니다. 저도
외국사람이 알려준 방법을 그대로 쓴 것인데 아래 그 요령을
기술합니다.
1) /sbin/debugfs /dev/hda7
2) debug: lsdel
1 deleted inodes found.
Inode Owner Mode Size Blocks Time deleted
25 0 100644 5 1/ 1 Fri Mar 30 19:37:53 2001
3) debug: dump <25> /root/testing.dump
1) 우선 슈퍼유저가 되어야 debugfs 를 쓸 수 있습니다.
2) 지금 어떤 화일을 삭제했는데 그것이 /dev/hda7 파티션상에 있던
화일이라고 하면 1번과 같은 명령을 내립니다.
3) 그럼 "debug : " 프롬프트가 나타나는데 거기에서 lsdel이라는 명령을
내립니다. (이것은 delete한 것을 ls하라는 것입니다.)
4) 그러면 그 아래 나오는 것과 같은 결과값이 나오는데 만일 삭제한
화일이 여럿이라면 이를 추정해서 살리는 것 외에는 다른 방법이
없습니다. 대충 화일의 사이즈를 알 수 있다면 살리는 데 큰 문제는
없습니다.
5) 어떤 inode 번호에 해당하는 것을 살려야 겠다고 결정하면
3번과 같은 명령을 내려 덤프시킵니다. 이 때 덤프해서 저장할 화일은
반드시 원래 삭제된 화일이 있던 곳과는 다른 파티션으로 옮겨서
저장해야 합니다. 혹시 다른 화일을 복구한 것이라면 자칫하면 원래
복구해야 할 화일을 덮어쓰는 경우가 있을 수 있으니까요.
제 경우는 아주 중요한 화일을 다른 것들과 함께 삭제해 버리고 나서
그 중요한 화일이 사라진 것을 알게 되어 바로 이 방법을 써서 성공적으로
복구할 수 있었습니다. 다행히 문제의 화일 사이즈가 삭제한 화일중에서
가장 컸기 때문에 쉽게 복구할 수 있었지요. 혹시 비슷한 어려움에 빠진
분들에게 도움이 되기 바랍니다.
'IT-개발,DB' 카테고리의 다른 글
[개발/DB] mysql의 최대 성능 향상 방법 (0) | 2012.10.23 |
---|---|
[개발/DB] mySQL 영문 메뉴얼 (0) | 2012.10.23 |
[개발/MFC] 64bit IE 에서 작동되는 BHO 개발 (0) | 2012.10.18 |
[개발/IE] IE8 session, cookie 공유 현상 (0) | 2012.10.04 |
[IT/컴퓨터] 인터넷 익스플로러 속도향상 플러그인 (0) | 2012.09.26 |
댓글