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)
11235정성태6/29/201722536Math: 20. Matlab/Octave로 Gram-Schmidt 정규 직교 집합 구하는 방법
11234정성태6/29/201720493오류 유형: 404. SharePoint 2013 설치 과정에서 "The username is invalid The account must be a valid domain account" 오류 발생
11233정성태6/28/201720398오류 유형: 403. SharePoint Server 2013을 Windows Server 2016에 설치할 때 .NET 4.5 설치 오류 발생
11232정성태6/28/201721140Windows: 144. Windows Server 2016에 Windows Identity Extensions을 설치하는 방법
11231정성태6/28/201720286디버깅 기술: 86. windbg의 mscordacwks DLL 로드 문제 - 세 번째 이야기 [1]
11230정성태6/28/201719926제니퍼 .NET: 26. 제니퍼 닷넷 적용 사례 (6) - 잦은 Recycle 문제
11229정성태6/27/201721692오류 유형: 402. Windows Server Backup 관리 콘솔이 없어진 경우
11228정성태6/26/201718345개발 환경 구성: 320. Visual Basic .NET 프로젝트에서 내장 Manifest 자원을 EXE 파일로부터 제거하는 방법파일 다운로드1
11227정성태6/19/201727659개발 환경 구성: 319. windbg에서 python 스크립트 실행하는 방법 - pykd [6]
11226정성태6/19/201717927오류 유형: 401. Microsoft Edge를 실행했는데 입력 반응이 없는 경우
11225정성태6/19/201717178오류 유형: 400. Outlook - The required file ExSec32.dll cannot be found in your path. Install Microsoft Outlook again.
11224정성태6/13/201719726.NET Framework: 661. Json.NET의 DeserializeObject 수행 시 속성 이름을 동적으로 바꾸는 방법파일 다운로드1
11223정성태6/12/201718885개발 환경 구성: 318. WCF Service Application과 WCFTestClient.exe
11222정성태6/10/201723380오류 유형: 399. WCF - A property with the name 'UriTemplateMatchResults' already exists.파일 다운로드1
11221정성태6/10/201720520오류 유형: 398. Fakes - Assembly 'Jennifer5.Fakes' with identity '[...].Fakes, [...]' uses '[...]' which has a higher version than referenced assembly '[...]' with identity '[...]'
11220정성태6/10/201724851.NET Framework: 660. Shallow Copy와 Deep Copy [1]파일 다운로드2
11219정성태6/7/201719671.NET Framework: 659. 닷넷 - TypeForwardedFrom / TypeForwardedTo 특성의 사용법
11218정성태6/1/201722752개발 환경 구성: 317. Hyper-V 내의 VM에서 다시 Hyper-V를 설치: Nested Virtualization
11217정성태6/1/201719248오류 유형: 397. initerrlog: Could not open error log file 'C:\...\MSSQL12.MSSQLSERVER\MSSQL\Log\ERRORLOG'
11216정성태6/1/201720507오류 유형: 396. Activation context generation failed
11215정성태6/1/201723007오류 유형: 395. 관리 콘솔을 실행하면 "This app has been blocked for your protection" 오류 발생 [1]
11214정성태6/1/201719841오류 유형: 394. MSDTC 서비스 시작 시 -1073737712(0xC0001010) 오류와 함께 종료되는 문제 [1]
11213정성태5/26/201725776오류 유형: 393. TFS - The underlying connection was closed: Could not establish trust relationship for the SSL/TLS secure channel.
11212정성태5/26/201724981오류 유형: 392. Windows Server 2016에 KB4019472 업데이트가 실패하는 경우
11211정성태5/26/201723580오류 유형: 391. BeginInvoke에 전달한 람다 함수에 CS1660 에러가 발생하는 경우
11210정성태5/25/201723861기타: 65. ActiveX 없는 전자 메일에 사용된 "개인정보 보호를 위해 암호화된 보안메일"의 암호화 방법
... 106  107  108  109  [110]  111  112  113  114  115  116  117  118  119  120  ...