블록 장치 및 여러 마운트 지점 사용

블록 장치 및 여러 마운트 지점 사용

내가 이해하지 못하는 몇 가지 이상한 점이 있습니다.

ext4 파일 시스템이 포함된 2G block.img 파일이 있습니다. block.img에 2G test.txt 파일이 있습니다. test.txt는 문자 "a"로 구성됩니다. 그런 다음 block.img를 /mnt/first에 설치했습니다. 이 test.txt에 문자 "a"가 있는 것을 볼 수 있습니다. 모든 것이 잘되었습니다.

이상한 일은 여기서 시작됩니다. 동시에 /mnt/second에 block.img를 설치하고 이 텍스트 파일의 모든 "a"를 "b"로 변경했습니다. 두 개의 서로 다른 2G 파일을 볼 수 있습니다. 2G 파티션(4G 사용 공간)에 2개의 2G 파일이 있습니다! 믿을 수 없는(:

그래서 제 말에 약간의 오류가 있어서 아쉽게도 찾을 수가 없네요.

답변1

실제로 문제는 네트워크 파일 시스템이 아니라는 것입니다. 운영 체제는 다른 것들이 파티션의 데이터를 수정하는 것을 원하지 않습니다. 또한 작은 파일과 파티션의 물리적 위치를 캐시하므로 전혀 변경된 것처럼 보이지 않습니다.

파티션 크기가 RAM 크기보다 훨씬 크고 파일도 충분히 크면 최소한 시스템 오류와 마운트 지점 중단, 심지어 커널 패닉이 발생할 수 있습니다.

그래서 모든 것이 괜찮습니다. 놀라운 일은 없습니다. 테스트하는 동안 조금 참을성이 없어서 성급하게 결론을 내렸습니다.

관련 정보