Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (seongtaejeong at gmail.com)
홈페이지
첨부 파일
 

(시리즈 글이 3개 있습니다.)
오류 유형: 325. 파일 삭제 시 오류 - Error 0x80070091: The directory is not empty.
; https://www.sysnet.pe.kr/2/0/10938

Windows: 169. 부팅 시점에 실행되는 chkdsk 결과를 확인하는 방법
; https://www.sysnet.pe.kr/2/0/12188

오류 유형: 970. 파일 복사 시 "Data error (cyclic redundancy check). (0x80070017)" 에러
; https://www.sysnet.pe.kr/2/0/13978




파일 복사 시 "Data error (cyclic redundancy check). (0x80070017)" 에러

Hyper-V 가상 머신을 다른 디스크로 이동하려고 시도했더니 이런 오류가 발생합니다.

An error occurred while attempting to export the virtual machine.

Failed to copy file during export.

Failed to copy file from 'd:\VMs\ubuntutest\Virtual Hard Disks\ubuntutest.vhdx' to 'e:\VMs\ubuntutest\Virtual Hard Disks\ubuntutest.vhdx': Data error (cyclic redundancy check). (0x80070017).

robocopy 명령어로 해당 vhdx 파일을 복사하려고 했을 때도 동일한 오류가 발생했는데요,

C:\> robocopy "d:\vms\ubuntutest" "e:\vms\ubuntutest" /S
...[생략]...
  5.2%      New File              79.6 g        ubuntutest.vhdx
2025/07/25 10:08:52 ERROR 23 (0x00000017) Copying File d:\vms\ubuntutest\Virtual Hard Disks\ubuntutest.vhdx
Data error (cyclic redundancy check).
Waiting 30 seconds... Retrying...

검색해 보면, 물리 디스크에 bad sector가 있다고 하면서 chkdsk를 권장합니다.

There was an error during move operation: Data error (cyclic redundancy check) (0x80070017)
; https://charbelnemnom.com/there-was-an-error-during-move-operation-data-error-cyclic-redundancy-check-0x80070017/

실제로 저 역시 bad cluster가 나왔고,

C:\> chkdsk /r d:
...[생략]...
Stage 4: Looking for bad clusters in user file data ...
Windows replaced bad clusters in file 37 of name \VMs\centostest\Virtual Hard Disks\centostest_A9A21FFD-0943-4937-A14C-031AA8E27DD2.avhdx.
Windows replaced bad clusters in file 49 of name \VMs\ubuntutest\Virtual Hard Disks\ubuntutest.vhdx.
  102640 files processed.
File data verification completed.
 Phase duration (User file recovery): 2.17 hours.
An unspecified error occurred (75736e6a726e6c2e 519).

보는 바와 같이 2개의 파일에서 bad cluster가 발견됐는데요, 저렇게 시행 후 1개는 복구됐지만, 다른 하나는 복구되지 않았습니다. 아마도 마지막의 "An unspecified error occurred"라는 메시지가 복구를 하지 못해 나오는 것 같습니다.




그런데, 뭐랄까... chkdsk가 bad sector를 표시하는 작업에 문제가 있는 듯합니다. 왜냐하면, 지속적으로 해당 디스크를 사용하는 동안 Reading 작업이 오래 걸려 "Active time"이 100%로, Resource Monitor에서는 "Disk Queue Length"가 꽉 차는 현상이 자주 발생합니다.

왠지, bad sector 표시가 제대로 되지 않아 그 부분을 다시 읽으려고 시도하는 것이 아닌가 싶은데요, 그래서 다른 도구로 다시 검사를 해봤습니다.

HDDScan
; https://hddscan.com/

느낌일진 모르겠지만. ^^; 저걸 수행한 다음부터는 그나마 디스크가 정상적으로 동작하는 것 같습니다. (2012년에 구매한 Western Digital HDD였는데, 거의 13년을 사용했으니 이젠 보낼 때도 된 듯합니다. ^^ bad block 수가 1,419,102 개라고 나오는군요.)




참고로, 운영체제가 설치된 드라이브에 chkdsk를 실행하는 경우라면 재부팅 시점에 동작하도록 설정해야 합니다.

부팅 시점에 실행되는 chkdsk 결과를 확인하는 방법
; https://www.sysnet.pe.kr/2/0/12188






[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]







[최초 등록일: ]
[최종 수정일: 7/30/2025]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... 106  107  108  109  110  111  112  113  114  115  116  117  118  [119]  120  ...
NoWriterDateCnt.TitleFile(s)
11010정성태8/6/201624981기타: 58. Outlook에 설정한 SMTP/POP3(예:천리안 메일) 계정 암호를 잊어버린 경우
11009정성태8/3/201630229개발 환경 구성: 289. 2016-08-02부터 시작된 윈도우 10 1주년 업데이트에서 Bash Shell 사용 [8]
11008정성태8/1/201624740오류 유형: 345. 2의 30승 이상의 원소를 갖는 경우 버그가 발생하는 이진 검색(Binary Search) 코드
11007정성태8/1/201626209오류 유형: 344. RDP ActiveX 컨트롤로 특정 PC에 연결할 수 없을 때, 오류 상황을 해결하기 위한 팁파일 다운로드1
11006정성태7/22/201629672개발 환경 구성: 288. SSL 인증서를 Azure Cloud Service에 적용하는 방법
11005정성태7/22/201628403개발 환경 구성: 287. Let's Encrypt 인증서 업데이트 주기: 90일
11004정성태7/22/201622849오류 유형: 343. Invalid service definition or service configuration. Please see the Error List for more details.
11003정성태7/20/201630615VS.NET IDE: 110. Visual Studio 2015에서 .NET Core 응용 프로그램 개발 [1]
11002정성태7/20/201623955개발 환경 구성: 286. Microsoft Azure 서비스의 구독은 반드시 IE로!
11001정성태7/19/201635028.NET Framework: 599. .NET Core/SDK 설치 및 기본 사용법 [6]
11000정성태7/16/201623647오류 유형: 342. Microsoft Visual Studio 2010 Tools for Office Runtime (x86 and x64) 설치 시 오류
10999정성태7/16/201623773오류 유형: 341. .NET Framework 4.5.2가 설치 안 되는 경우
10998정성태7/16/201623472.NET Framework: 598. C# - Excel 시트에 윈도우 폼 기능을 추가하는 방법 [1]파일 다운로드1
10997정성태7/16/201624511오류 유형: 340. HTTP Error 500.23 - Internal Server Error파일 다운로드1
10996정성태7/14/201629387Windows: 118. 유선 접속 상태에서 재부팅하면 무선 연결이 자동 연결 안되는 문제 [4]파일 다운로드1
10995정성태6/27/201622547VS.NET IDE: 109. Visual Studio 유료 버전 사용자의 주기적인 온라인 인증을 없애는 방법
10994정성태6/23/201621820개발 환경 구성: 285. 알고스팟(https://algospot.com)을 위한 Visual C++ 답안 작성 요령파일 다운로드1
10993정성태6/23/201623226.NET Framework: 597. 닷넷 메타데이터에 struct/class(값/참조 형식)의 구분이 있을까요?
10992정성태6/13/201619500오류 유형: 339. vbs 스크립트 실행 시 항상 실행 여부를 묻는 질문 창이 뜬다면?
10991정성태6/13/201625400오류 유형: 338. octave-gui 실행 시 "octave-gui.exe has stopped working" 오류
10990정성태6/13/201626850오류 유형: 337. missing type specifier - [type] assumed. Note: C++ does not support default-[type]
10989정성태6/7/201623233.NET Framework: 596. C# - WCF wsDualHttpBinding의 ClientBaseAddress 속성 - 두 번째 이야기
10988정성태6/3/201624687기타: 57. Outlook blocked access to the following potentially unsafe attachments
10987정성태6/2/201625460.NET Framework: 595. XLL 파일에 포함된 .NET 어셈블리를 추출하는 방법
10986정성태6/1/201626170.NET Framework: 594. C# - WCF wsDualHttpBinding의 ClientBaseAddress 속성
10985정성태6/1/201624333오류 유형: 336. An error occurred while ejecting 'DVD RW drive ...'
... 106  107  108  109  110  111  112  113  114  115  116  117  118  [119]  120  ...