cifs/Samba 파일을 편집할 때 "파일 변경됨" 오류 억제/우회

cifs/Samba 파일을 편집할 때 "파일 변경됨" 오류 억제/우회

[원래 이 문제에 대해 vi/vim stackexchange에 게시했지만 핵심 문제는 편집자가 불평하는 것보다 파일 시스템에 더 있다는 것이 점점 더 분명해졌습니다.]

요약 - CIFS의 파일은 백그라운드에서 "변경"을 마운트하고 파일에 쓰려고 하면 Vim에서 경고합니다. Vim에서 잠재적인 "수정" 소음을 진정하거나 제거하는 데 도움이 필요합니다.

배경:

  • Windows 10 호스트의 VirtualBox에서 실행되는 Linux 게스트 가상 머신(Arch/Manjaro-i3 64비트)이 있습니다.
  • 호스트에는 둘 사이에 공유할 NTFS로 포맷된 파티션이 있습니다.
  • 공유 파티션은 표준 Windows 10 공유를 통해 공유되며 Linux 클라이언트의 /etc/fstab에 cifs 드라이브로 마운트됩니다.
  • 저는 게스트 시스템에서 파일을 편집하기 위해 vim 8.1을 사용하고 있습니다.

질문:

  • 대부분 (분명히 무작위로) 나는 vim에서 편집하는 파일에 쓰기를 시도합니다.
경고: 이 파일은 읽은 이후 변경되었습니다!
  • 나는 두 번의 쓰기 사이에 디스크의 내용이 변경되지 않았다는 것을 알고 있습니다.

잘못된 경고를 방지하고 해당 경고의 출처를 확인하는 방법을 더 잘 이해하고 싶습니다.

기본적으로 파일 수정은 디스크에 쓰는 즉시 실행됩니다. Samba 인프라가 의심되지만 이를 어떻게 판단해야 할지 모르겠습니다. strace 로그를 살펴봤지만 데이터를 잘 이해하지 못합니다.

의심하다문제는 vim이 파일에 타임스탬프를 표시한다고 생각하는 시점과 Samba가 마침내 쓰기에 의해 기록된 타임스탬프를 확인하는 시점 사이에 약간의 지연이 있으므로 vim은 파일이 만료되었을 수 있다고 생각한다는 것입니다.

하지만 잘 모르겠습니다... 그게 사실이라면, 저는 아직 그것을 알아낼 만큼 능숙하지 않습니다.

제안?

답변1

이 디스크에 대해서는 Windows 자동 디스크 최적화 프로그램을 끄는 것이 좋습니다. Linux는 로깅할 때 디스크의 위치를 ​​확인하지만 Windows는 그렇지 않습니다. 따라서 위치가 약간 변경되었지만 Linux에서는 이미 다릅니다.

그러면 문제가 해결될 것입니다!

https://www.top-password.com/blog/disable-automatic-drive-optimization-defrag-in-windows-10/

관련 정보