2010-06-21 4 views
3

어떻게 든 기본적인 "안전한"삭제, sth를 제공하는 모듈이 있습니까? 리눅스 유틸리티 "닦아내 기"처럼.Python에서 파일/디렉토리를 안전하게 지우려면 어떻게해야합니까?

import securitystuff 

securitystuff.wipe(filename) 

쉽게 검색 할 수없는 회사 소스 코드를 보호해야합니다.

P. 예. "닦아내십시오"는 완벽하지 않습니다. 저널링 파일 시스템에. 그러나 보안 요구가 높지는 않습니다.

답변

3

표준 라이브러리에는 이러한 기능이 없으며 임의 바이트로 파일의 각 바이트를 덮어 쓰는 순진 구현은 너무 어렵지 않습니다.

f = open(path, "wb") 
f.write("*"*os.path.getsize(path)) 
f.close() 
os.unlink(path) 

그러나 스레드 http://mail.python.org/pipermail/python-list/2004-September/899488.html에서 제안이 때문에 많은 이유, 예를 닦아 보장하지 않습니다 디스크 캐시, 디스크 섹터의 ​​재 매핑 등

따라서 가장 쉬운 방법은 파이썬에서 linux wipe으로 전화하는 것입니다.

대체 사용시는 srm

+0

srm 힌트에 감사드립니다! –

관련 문제