내용을 복사하지 않고 삭제된 파일 복구

내용을 복사하지 않고 삭제된 파일 복구

파일을 가리키는 열린 파일 설명자가 있는 한 다음 cp과 같이 다시 가져올 수 있습니다.

# Open for reading
exec 3< file
# Delete
rm file
# Bring it back
cp /proc/self/fd/3 file

이 솔루션은 작은 파일에는 괜찮지만 큰 파일(예: 5GiB 이상)에는 속도가 매우 느립니다. 그럼 내용을 복사하지 않고 다시 가져올 수 있는 방법이 있는지 궁금합니다. 내 말은, 설명자가 닫혀 있지 않으면 데이터는 건드릴 수 없는데 왜 파일 이름을 데이터가 있는 메모리 영역에 연결할 수 없습니까?

이것에 대해 나에게 가르쳐주십시오. Hacky 명령줄 솔루션, 플랫폼/파일 시스템 종속 C API 등 모두 환영합니다. 단지 알고 싶었습니다.가능하다면어떤 방식으로든 어딘가에서, 그리고그렇지 않다면, 나는 알고 싶다.

lsof인터넷 검색은 전혀 도움이 되지 않았고, 내가 찾을 수 있는 것은 파일 사용 및 복구 방법에 대한 복사된 기사뿐이었습니다 cp.

관련 정보