실수로 노트북에서 파일을 삭제했습니다. 저는 페도라를 사용하고 있습니다. 이 파일을 복구할 수 있나요?
답변1
바로 설치하지 않는 것이 좋습니다. 기본적으로 여기서 가장 큰 적은 디스크 쓰기입니다. 이제 당신은 어떤 대가를 치르더라도 그것들을 피하고 싶습니다.
가장 좋은 옵션은 편집자가 생성한 자동 백업입니다(있는 경우). 그렇지 않은 경우 .tex 파일의 고유한 문자열을 기억한다면 grep을 사용하여 다음 트릭을 시도할 것입니다.
$ sudo grep -i -a -B100 -A100 'string' /dev/sda1 > file.txt
/dev/sda1
파일이 있는 장치와 'string'
파일의 고유 문자열 로 바꿉니다 . 시간이 좀 걸릴 수 있습니다. 그러나 기본적으로 이 기능은 장치에서 문자열을 검색한 다음 해당 행 앞뒤에 100개의 행을 반환하고 이를 넣습니다 file.txt
. 더 많은 행을 반환해야 하는 경우 필요에 따라 및 옵션을 조정하면 됩니다 -B
. -A
아마도 추가 쓰레기를 많이 돌려받을 수 있지만 텍스트를 다시 가져올 수 있어야 합니다.
행운을 빌어요.
답변2
가능합니다. 귀찮을 뿐입니다.
고쳐 쓰다:이 방법을 시도하기 전에 Steven의답변.
필요할 것이예요테스트 디스크가방, 많이디스크 공간그리고많은시간.
PhotoRec은 TestDisk의 일부이며 거의 모든 디스크에서 파일을 복구할 수 있습니다. PhotoRec은 할 수 있습니다지원하다파일을 찾으세요 .tex
.
먼저 설치하세요테스트 디스크실행하여
yum install testdisk
참고: 복구된 파일을 저장할 수 있는 다른 드라이브에 많은 여유 공간이 필요합니다.
photorec
디스크의 여유 공간에서 실행하여 디스크에서 삭제된 모든 파일을 복구합니다.
sudo photorec
지침을 따르십시오...(복구하려는 동일한 디스크에 파일을 저장하지 마십시오)
프로세스가 완료되면 복구된 모든 파일은 다음을 실행해야 하는 디렉터리에 있어야 합니다.
find -name '*.tex' > filelist
그러면 파일 목록이 출력됩니다.가능한당신이 잃어버린 사람이 되십시오. 파일 이름이 손실되므로 이를 모두 확인해야 합니다.
답변3
많은 텍스트 편집기는 백업 파일을 보관합니다. 정말 운이 좋다면 파일의 이전 버전을 포함하는 yourfile.tex~와 같은 파일이 생길 수도 있습니다.
답변4
노트:삭제된 데이터베이스 파일(MySQL 서버)에 대한 다른 질문에 이 답변을 추가했는데, 이 질문은 닫혀서 이 질문을 가리켰습니다. 다른 유사한 상황에서도 유용할 것이라고 확신합니다(일부 프로세스가 여전히 파일 설명자를 열어두는 한).
프로세스가 아직 실행 중인 경우 파일을 찾아서 /proc/<pid>fd/
복사할 수 있습니다. 먼저 프로세스 그룹으로 보내집니다 SIGSTOP
. 파일을 복사합니다. 한쪽에 새 인스턴스를 구축하고 중지하거나 kill -9
다시 제자리에 배치합니다. InnoDB는 런타임 시 스스로 복구하지만 일부 MyISAM에서는 이 작업을 수동으로 수행해야 합니다.