오늘 나는 내 컬렉션에서 약 1TB의 아주 오래된 영화를 잃어버린 것을 발견했습니다. 어떻게 된 일인지는 모르겠지만,무닌무슨 일이 일어났는지 보여줍니다. 나는 그것이 내 잘못이라고 확신합니다. (저는 그 시간에 깨어 있었습니다. 하지만 100% 확신할 수는 없습니다.) 그런 일이 다시 발생하지 않도록 하려면 어떻게 해야 합니까? 나 자신(또는 프로그램/스크립트)이 x GB 이상의 데이터를 삭제하는 것을 방지하려면 어떻게 해야 합니까? 어떤 제안이라도 환영합니다.
답변1
성공적으로 제거한 사람으로서/Windows
하위 디렉토리를달리기Windows 시스템 및 다음 내용을 삭제했습니다./bin
Windows 시스템 에서달리기linux boxen (죽지 않았어!)... 느낌 알아요. (하지만 Windows 작업을 어떻게 했는지는 모르겠습니다. 불가능합니다. Windows는 사용 중인 파일을 잠급니다.)
여러 옵션:
포함된 하위 디렉터리에서 쓰기 기능을 제거합니다.
chmod a-w /my_movie_dir
사용
chattr
&lsattr
설정/확인불변깃발.chattr +i
"Earth vs The Flying Saucers.m4v"
'산'해당 드라이브/파티션은읽기 전용기본적으로(참조'fstab'), 다음을 수행해야 합니다.
mount -o rw,remount /my_movie_dir
나쁜 짓을 하려고.
답변2
여기서 가장 좋은 옵션은 rm(또는 항목을 삭제하는 데 사용하는 모든 이름)의 이름을 바꾸고 이를 새 rm 스크립트로 래핑하는 것입니다. 최선의 선택이란 최선의 선택을 의미하는 것이 아니지만, 이것을 하는 것에 대해 생각하는 것은 재미있습니다. 삭제에 좀 더 주의를 기울이고 싶을 수도 있습니다.
rm의 이름을 rm-real로 변경한 후 빠르게 테스트해 보았습니다.
#!/bin/bash
/bin/rm $1
그리고 그것은 작동합니다. rm의 몇 가지 기능을 사용하고 전체 기능을 위해 rm-real을 사용하기 위해 약간의 메모를 직접 에코하거나 인수를 올바르게 가져오는 연습을 수행할 수 있습니다.
편집: 실제로 가장 좋은 옵션은 좋은 백업입니다. rm을 변경하는 것은 재미있지만 댓글에서 언급했듯이 약간 불안정합니다.