손실된 PDF 파일을 복구하는 방법은 무엇입니까?

손실된 PDF 파일을 복구하는 방법은 무엇입니까?

다음 과정에서 실수로 PDF 파일을 잃어버렸습니다.

  • ext4 파일 시스템에서 pdf 파일을 열기 위해 Ubuntu 18.04의 Wine에서 pdf 소프트웨어 응용 프로그램 PDFXCView를 실행하고 있습니다.

  • 그런 다음 mvpdf 파일을 다른 곳에 두었습니다.

  • 그런 다음 PDFXCView에서 열린 PDF 파일을 편집했습니다. 편집된 파일을 저장하려고 하면 "다른 이름으로 저장..."을 선택하여 파일의 현재 경로를 찾아 덮어쓰려고 해야 합니다. 그러나 PDFXCView는 파일을 덮어쓸 수 없으며 파일을 사라지게 한 다음 중단합니다.

다음은 몇 가지 시도입니다.

  1. 도움이 되셨다면 누락된 PDF 파일의 경로명을 기억해두었습니다.

  2. dd해당 파티션에 사용할 만큼 큰 추가 하드 드라이브가 없기 때문에 파일 시스템의 파티션을 백업할 수 없습니다 .

  3. 나는 debugfs그것을 기반으로 노력한다.https://unix.stackexchange.com/a/80285,

     $ sudo debugfs -w /dev/sda4
     debugfs: lsdel
    
     Inode  Owner  Mode    Size      Blocks   Time deleted
    22549259   1000 100600    141      1/     1 Sat Apr  2 09:14:06 2016
    1 deleted inodes found.
    
    debugfs:  logdump -i 22549259
    22549259: File not found by ext2_lookup    
    

    파일이 2016년에 삭제된 것이 아니라 그냥 손실되었기 때문에 올바른 inode를 찾았는지 확실하지 않습니다.

  4. 나는 보았다https://unix.stackexchange.com/a/98700/사용하는 것은 어떻습니까?

    grep -a -C 500 'known pattern' /dev/sda | tee /tmp/recover
    

    알려진 패턴이 포함된 텍스트 파일을 복구합니다.

    얼마 전 나는 pdf를 사용하여 여러 개의 작은 pdf 파일을 연결하여 누락된 pdf 파일을 만들었고 pdftk여전히 이러한 작은 파일을 가지고 있습니다. 더 작은 PDF 파일에서 cat smaller.pdf | less읽을 수 있는 PDF 형식의 특정 문자열이 포함된 더 작은 PDF 파일의 바이너리 콘텐츠를 볼 수 있습니다.

    /URI (http://flask.pocoo.org/docs/1.0/api/#flask.Flask.logger)
    

    그래서 나는 다음을 시도한다:

    sudo grep -a -C 500 'http://flask.pocoo.org/docs/1.0' /dev/sda4 >  /tmp/test/recover
    

    이러한 작은 파일과 누락된 파일에는 문자열이 포함되어 있고 -C 500파일의 시작과 끝을 지정하는 것이 너무 임의적이기 때문입니다. 유용한 결과를 얻을 수 있을지 모르겠습니다.

PDF 파일을 복구하기 위해 어떤 방법을 시도할 수 있는지 알고 싶습니다.

감사해요!

답변1

가능하다면 반드시 데이터가 보관되어 있는 파티션부터 시작하세요. (메인 시스템 파티션이 아니라면 한 달 후에도 얼마나 복구 가능한지 놀라실 것입니다.) 그럼 계속해foremostmagicrescue( 처음에도 말씀드렸지만 foremost성능은 그럭저럭인데 영수증이 준비되어있어요pdf

sudo apt update && sudo apt install foremost
sudo foremost -v -t pdf -i [PATH] -o ~/pdfrecovery/

# -t - Filetype [in our case pdf]
# -i - Input file [can be as wide as /dev/sdX or more detailed]
# -o - Output Directory

방금 내 드라이브 중 하나에서 몇 초 동안 실행 /dev/sdX하고 370개의 PDF 파일을 추출했습니다. 파일에는 원래 이름이 없으며 다음과 같이 표시됩니다. 14348984.pdf따라서 이 -i플래그는 매우 중요합니다.

행운을 빌어요.


고쳐 쓰다

두 번째 옵션은 알려진 경로를 처리할 때 testdisk귀하 photorec의 경우 더 쉬울 수도 있습니다. testdisk그리고 photorec조심하지 않으면 디스크가 손상될 수 있다는 경고가 표시되지만(변경 사항을 적용할지 묻는 여러 대화 상자를 확인하게 되지만) 속도를 늦추면 더 적절할 수 있습니다. 더 빠르게 표시됩니다. 손실된 파일에 해당하는 노드가 있는 멋진 폴더 트리 구조를 얻게 됩니다. 2시간 이내에 파일을 찾을 수 없다면 foremost댓글을 남겨주시면 두 번째 방법을 알려드리겠습니다 testdisk.

업데이트 2

방금 테스트했을 때 삭제된 특정 파일을 찾는 데 testdisk문제가 있었습니다 . foremost폴더 트리와 파일 이름 구조를 완벽하게 유지하여 각 파일을 생성하는 데 소요되는 시간을 제한합니다 *.pdf. 이 두 가지 방법은 매우 다르며, 파일이 매우 중요한 경우 두 가지 방법을 모두 사용하여 동일한 파일을 testdisk찾아서 foremost손상되지 않은 완전한 파일을 얻습니다.

관련 정보