exfat에 쓰기가 로드 간에 지속되지 않습니까?

exfat에 쓰기가 로드 간에 지속되지 않습니까?

나...

  • 음악을 저장하기 위해 Samsung Galaxy S4용 microSD 카드를 구입했습니다.
  • S4에 넣고 카드(exFat)를 포맷하세요.
  • 퓨즈-exfat 및 exfat-utils를 설치하고 내 컴퓨터에 카드를 삽입했습니다(Fedora 21, Gnome 3.14).
  • 음악을 카드에 복사합니다.
    • 디렉토리 구조: Cards/Music/Artists/Albums/SongTitle.ogg
  • 파일 열기 - 잘 재생됩니다.
  • 카드 언로드
  • 카드 꺼내기
  • 카드를 컴퓨터에 다시 삽입하세요.
  • 많은 파일과 폴더가 더 이상 나타나지 않는 것으로 나타났습니다.

    • 모든 아티스트 폴더가 나타납니다.
    • 일부 앨범 폴더가 표시되지 않습니다
    • 대부분의 노래 파일은 나타나지 않습니다.
    • 파일과 폴더 모두 사라지는 별도의 지점이 있는 것 같습니다(예: 알파벳의 시작 부분이 성공적으로 복사됨). 하지만 폴더는 파일보다 더 멀리 있습니다.

답변1

카드를 꺼내기 전에 제거에 대해 언급하지 않았습니다. 질문을 작성할 때 이것이 누락되지 않았다면 그것이 문제입니다.

모든 유형의 디스크에 쓰는 것은버퍼링됨: 운영 체제는 쓰기를 위해 데이터를 메모리에 축적한 다음 편리하다고 판단하면 디스크에 씁니다. 애플리케이션이 파일을 쓰는 순서대로 데이터가 반드시 디스크에 기록되는 것은 아닙니다.

이는 일반적으로 애플리케이션에 완전히 투명합니다. 애플리케이션이 디스크에서 데이터를 다시 읽을 때 해당 데이터가 버퍼에서 아직 대기 중인 경우 해당 데이터를 검색합니다.

그러나 디스크가 갑자기 배출되면 기록되지 않은 모든 버퍼가 손실됩니다. 디스크를 다시 삽입하면 운영 체제에서 디스크가 동일한 디스크인지 알 수 없고 그 동안 다른 컴퓨터에서 디스크가 수정되지 않았기 때문에 디스크가 다시 돌아오지 않습니다. (어쨌든 OS가 디스크가 사라진 것을 감지하면 버퍼 내용을 어떤 용도로도 사용할 수 없기 때문에 메모리 버퍼를 다른 용도로 다시 사용합니다.)

디스크를 꺼내기 전에 운영 체제에 더 이상 디스크를 사용하지 않는다는 사실을 알려야 합니다. 이것은 ... 불리운다제거(파일 시스템을 사용하여 시스템을 부팅하는 반대 작업을 호출합니다.설치하다). 시스템에 파일 시스템을 마운트 해제하라고 지시하면 디스크의 데이터가 최신 상태가 되도록 모든 버퍼를 플러시합니다. 일반적인 데스크탑 환경에서는 디스크를 삽입하자마자 자동으로 마운트됩니다. 디스크를 제거하기 전에 시스템에 제거를 지시해야 합니다. 디스크가 제거되면 시스템을 제거하기에는 너무 늦습니다. 많은 파일 관리자에는 "마운트 해제" 또는 "꺼내기" 버튼이 표시되며 파일 관리자가 작업이 완료되었음을 알릴 때까지 기다립니다(남은 데이터 양에 따라 몇 초 정도 걸릴 수 있음). 카드.

이것은 exfat, btw와는 아무런 관련이 없으며 모든 파일 시스템 및 미디어에서 발생합니다.

카드 쓰기가 자동으로 이루어지도록 구성할 수 있습니다. 속도가 훨씬 느려질 수 있고 쓰기 횟수가 늘어나면 값싼 플래시 미디어가 빨리 마모되기 때문에 이렇게 하지 마세요(플래시 미디어는 블록을 다시 쓸 수 있는 횟수가 제한되어 있고 업데이트를 위해 블록을 반복적으로 다시 씁니다). 소량은 한꺼번에 많은 양의 데이터를 쓰는 것보다 효율성이 떨어집니다.

관련 정보