강좌
클라우드/리눅스에 관한 강좌입니다.
리눅스 분류

손상된 bzip2압축파일의 복구유틸리티 bzip2recover 사용법

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

손상된 bzip2압축파일의 복구유틸리티 bzip2recover 사용법

 





bzip2recoverbzip2로 압축된 파일이 손상되었을 경우에 복구를 하기위한 명령어입니다.

 

 

 

 
물리적인 문제가 있을 경우에는 100%복구는 불가능하지만 손상되지 않는 부분을 복구하여 별도파일로 저장해 줍니다.

 

 

 

 bzip2는 압축시에 900KB단위로 압축을 합니다.

 

 

 

  이런 900KB 단위의 압축단위는 각각 독립적인 것으로 다루어 집니다.

 

 

 

 이런 압축단위로 압축이 되는 까닭으로 손상되지않은 부분을 복구해 낼 수 있는 것입니다.

 

 

 

 

 

그리고 복구되는 파일은 "rec0001file.bz2",  "rec0002file.bz2"  등과  같은 여러개의 파일에 기록하게 됩니다.

 

 

 

 아래의 간단한 예를 보시면 이해하실 수 있을 것입니다.

 

 

 

  또한 bzip2recover는 아무런 옵션없이 "bzip2recover 파일명"과 같이 사용합니다.

 

 

 

 



명령어위치 : /usr/bin/bzip2recover

 

사용형식 :  bzip2recover 파일명

 

아래의 예는 bzip2로 압축된 textfile3.bz2파일이 손상되었다는 가정하에서 bzip2recover로 복구를 한 것입니다.

 

 

 

 

[root@host3 dir]# ls -l
합계 456
-rwx-----x    1 bible1   bible2     100541  9
24 20:12 textfile1.bz2
-rwx-----x    1 bible1   bible2     354659  9
24 20:12 textfile3.bz2
[root@host3 dir]#
[root@host3 dir]# bzip2recover textfile3.bz2
bzip2recover 1.0.2: extracts blocks from damaged .bz2 files.
bzip2recover: searching for block boundaries ...
   block 1 runs from 80 to 193198
   block 2 runs from 193247 to 385917
   block 3 runs from 385966 to 577105
   block 4 runs from 577154 to 767919
   block 5 runs from 767968 to 960114
   block 6 runs from 960163 to 1151231
   block 7 runs from 1151280 to 1343094
   block 8 runs from 1343143 to 1535175
   block 9 runs from 1535224 to 1726373
   block 10 runs from 1726422 to 1917659
   block 11 runs from 1917708 to 2108146
   block 12 runs from 2108195 to 2299077
   block 13 runs from 2299126 to 2489747
   block 14 runs from 2489796 to 2680805
   block 15 runs from 2680854 to 2837187
bzip2recover: splitting into blocks
   writing block 1 to `rec00001textfile3.bz2' ...
   writing block 2 to `rec00002textfile3.bz2' ...
   writing block 3 to `rec00003textfile3.bz2' ...
   writing block 4 to `rec00004textfile3.bz2' ...
   writing block 5 to `rec00005textfile3.bz2' ...
   writing block 6 to `rec00006textfile3.bz2' ...
   writing block 7 to `rec00007textfile3.bz2' ...
   writing block 8 to `rec00008textfile3.bz2' ...
   writing block 9 to `rec00009textfile3.bz2' ...
   writing block 10 to `rec00010textfile3.bz2' ...
   writing block 11 to `rec00011textfile3.bz2' ...
   writing block 12 to `rec00012textfile3.bz2' ...
   writing block 13 to `rec00013textfile3.bz2' ...
   writing block 14 to `rec00014textfile3.bz2' ...
   writing block 15 to `rec00015textfile3.bz2' ...
bzip2recover: finished
[root@host3 dir]#

 

이제 복구가 끝났습니다.

 

 

 

  의외로 간단한 실행에 비해 아래를 보시면 전체파일을 복구가능한 부분을 모두 복구한 것입니다.

 

 

 

  

 

[root@host3 dir]# ls -l
합계 812
-rw-r--r--    1 root     root        24160  9
24 23:01 rec00001textfile3.bz2
-rw-r--r--    1 root     root        24104  9
24 23:01 rec00002textfile3.bz2
-rw-r--r--    1 root     root        23913  9
24 23:01 rec00003textfile3.bz2
-rw-r--r--    1 root     root        23866  9
24 23:01 rec00004textfile3.bz2
-rw-r--r--    1 root     root        24039  9
24 23:01 rec00005textfile3.bz2
-rw-r--r--    1 root     root        23904  9
24 23:01 rec00006textfile3.bz2
-rw-r--r--    1 root     root        23997  9
24 23:01 rec00007textfile3.bz2
-rw-r--r--    1 root     root        24025  9
24 23:01 rec00008textfile3.bz2
-rw-r--r--    1 root     root        23914  9
24 23:01 rec00009textfile3.bz2
-rw-r--r--    1 root     root        23925  9
24 23:01 rec00010textfile3.bz2
-rw-r--r--    1 root     root        23825  9
24 23:01 rec00011textfile3.bz2
-rw-r--r--    1 root     root        23881  9
24 23:01 rec00012textfile3.bz2
-rw-r--r--    1 root     root        23848  9
24 23:01 rec00013textfile3.bz2
-rw-r--r--    1 root     root        23897  9
24 23:01 rec00014textfile3.bz2
-rw-r--r--    1 root     root        19562  9
24 23:01 rec00015textfile3.bz2
-rwx-----x    1 bible1   bible2     100541  9
24 20:12 textfile1.bz2
-rwx-----x    1 bible1   bible2     354659  9
24 20:12 textfile3.bz2
[root@host3 dir]#

 

이렇게 복구된 각각의 파일은 개별적으로 활용하거나 사용하실 있습니다.

 

 

 

 

 

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,138 명
  • 현재 강좌수 :  36,196 개
  • 현재 접속자 :  822 명