none
Windows 10 OS에서 FSCTL_DISMOUNT_VOLUME 과 Flush 관련 질문입니다. RRS feed

  • 질문

  • 안녕하세요~

    가상 드라이브를 만들고,

    분리 및 제거를 할수 있는 툴이 있습니다.

    분리를 할때는

    DeviceIoControl를 사용하여

    1. FSCTL_LOCK_VOLUME

    2. FSCTL_DISMOUNT_VOLUME

    3. FSCTL_UNLOCK_VOLUME

    를 거쳐서 분리를 하게됩니다.

    동일한 로직이 Windows 8.1까지는 별 문제가 없었으나,

    Windows 10에서 간헐적으로 문제가 발생합니다.

    테스트된 Windows 10 버전은 빌드 10240 입니다.

    문제가 발생할때 이벤트 로그 중 시스템을 확인하면 아래와 같은 문구가 나옵니다.

    ////////////////////////////////////////////////////////////////////////////////////////

    원본 : Ntfs, 이벤트 ID : 140

    내용 : 트랜잭션 로그에 데이터를 플러시하지 못했습니다. 볼륨 ID:Z,

    장치이름: 에서 손상이 발생할 수 있습니다.

    ({디스크 없음} 드라이브에 디스크가 없습니다. %hs 드라이브에 디스크를 넣으십시오.)

    ////////////////////////////////////////////////////////////////////////////////////////

    FSCTL_LOCK_VOLUME, FSCTL_DISMOUNT_VOLUME, FSCTL_UNLOCK_VOLUME

    세가지 작업을할때 특별히 리턴값에서 문제가 생기는 것은 없습니다.

    FSCTL_DISMOUNT_VOLUME 작업이 제대로 됐으면 Flush도 잘 됐을것 같은데

    위와 같은 문제가 왜 발생하는지 모르겠습니다.

    해결방법이나 살펴봐야할 것들이 있다면

    도움 부탁드립니다.

    고맙습니다.


    2015년 7월 28일 화요일 오전 8:32

답변

  • 다음 웹 문서에 의하면 The system failed to flush data to the transaction log. 라는 문제는 디스크가 갑자기 사라진 경우에 발생한다고 합니다.
    FSCTL_DISMOUNT_VOLUME 가 너무 빨리 되어서 140 NTFS 이벤트가 발생한 것은 아닌지 확인해 보시기 바랍니다.

    http://www.experts-exchange.com/Security/Operating_Systems_Security/Q_26182013.html
    Keep geting lots of "The system failed to flush data to the transaction log. Corruption may occur" errors in Windows 7 Pro

    The system failed to flush data to the transaction log. Corruption may occur.
    This issue may occur if the disk is "surprise removed." For example, this behavior may occur if you remove the disk without using the Safely Remove Hardware icon in the notification area to stop the disk first. This issue may occur even though the disk uses an interface that supports surprise removal, such as a universal serial bus (USB) interface or an IEEE 1394 interface.
    http://support.microsoft.com/kb/938940/en-us

    • 답변으로 표시됨 SMPark82 2015년 8월 13일 목요일 오전 1:22
    2015년 7월 28일 화요일 오전 10:23