Skip to content

withoz/DiskMigrator

Repository files navigation

DiskMigrator

Windows 디스크 클론 · 이미지 백업 · 복원 도구. 실행 중인 시스템 디스크까지 섹터 단위로 복제하고, 결과물이 다른 하드웨어에서도 부팅되도록 마이그레이션합니다. 대상이 원본보다 작아도 됩니다(자동 축소).

.NET 8 · WPF · MIT · 사용설명서 (컴퓨터 초보자용)


⚠️ 경고

대상 디스크의 모든 데이터가 영구 삭제됩니다. 되돌릴 수 없습니다. 사용 전 중요한 데이터를 백업하고, 대상 디스크의 모델·용량을 두 번 확인하십시오. 아무런 보증 없이 "있는 그대로" 제공됩니다(LICENSE).


주요 기능

  • 실행 중인 시스템 디스크 클론 — VSS 스냅샷으로 그 시점에 정지된 이미지를 복제
  • 이미지 백업/복원 — 디스크를 동적 .vhdx 파일 하나로 떠 두고(실사용량만 차지, 탐색기 마운트 가능) 나중에 그대로 되살림. 복원은 VHDX BAT를 읽어 기록된 블록만 쓰는 스마트 복원(증분 사슬은 부모까지 합집합)
  • 증분 백업 — 기존 백업 파일을 다시 고르면 바뀐 블록만 작은 새 파일(차등 VHDX 자식)에 저장. 기존 백업 무수정·시점별 복원 가능, 복원은 최신 파일 하나만 고르면 자동 병합
  • 자동 축소 리사이즈 — 대상이 원본(이미지)보다 작아도 가장 큰 NTFS 파티션을 필요한 만큼 자동으로 줄여 맞춤(원본·이미지 무수정 — 차등 VHDX 자식에 Windows 축소기 적용). 디스크만 고르면 앱이 판단
  • 다른 하드웨어에서 부팅 — Universal Restore, 부팅 구성 검사·자동 복구, BIOS→UEFI 자동 변환(옵션)
  • 스마트 클론 — NTFS 빈 영역을 건너뛰고 사용 블록만 복사
  • 유연한 크기 조정 — 더 큰 대상은 마지막 파티션 확장·중간 파티션 확대, 더 작은 대상은 맞춤(제자리)·자동 축소
  • 복제 후 검증 — 복제 중 기록한 해시로 대상을 대조(불량 섹터 재시도·리포트)
  • 파티션 배치 시각화 — 변경 전/후 배치를 막대 그래프로 미리 보기
  • 부팅 USB(비상용) — Windows 내장 재료만으로(ADK 등 추가 설치 없음) DiskMigrator가 자동 실행되는 WinPE 부팅 USB를 제작 — 윈도우가 아예 안 켜지는 PC에서 백업·복원·부팅 복구 가능
  • 영어/한국어 이중언어 — 기본 영어, 한국어 전환 가능(엔진 메시지까지 전면 이중언어)

안전장치

시스템/부팅/페이지파일 디스크·원본과 같은 디스크·용량 부족·관리자 권한 없음은 절대 차단하고, 기존 데이터가 있는 대상은 모델명 직접 입력을 요구하며, 쓰기 직전 디스크를 다시 열거해 같은 물리 디스크인지 재확인합니다. 시스템 디스크는 WMI가 아니라 커널에 직접 물어 판별합니다.

새 하드웨어에서 부팅 (핵심)

클론을 다른 PC에 꽂으면 저장소 드라이버·부팅 구성 차이로 부팅이 실패할 수 있습니다. DiskMigrator는 이를 예방·검사·복구합니다:

  • Universal Restore — 표준 인박스 저장소 드라이버(storahci·stornvme 등)를 부팅 시작으로 설정해 0x7B (INACCESSIBLE_BOOT_DEVICE)를 예방(regf 하이브를 직접 편집, 드라이브 문자가 없어도 적용)
  • 부팅 검사·자동 복구 — 실제 부팅 없이 결함을 걸러내고, BCD 장치 참조 불일치(0xc000000e)를 자동 복구
  • BIOS→UEFI 자동 변환(옵션) — MBR 원본을 GPT/UEFI로 바꿔 NVMe·UEFI 전용 PC에서도 부팅(되돌릴 수 없어 기본 꺼짐)

실기 검증: Universal Restore로 클론한 시스템 디스크를 다른 PC(ASRock B360M)에 옮겨 부팅 성공. 레거시 MBR 원본은 UEFI 변환으로 NVMe 부팅까지 확인. C: 시스템을 .vhdx로 백업 → 다른 M.2에 복원 → 실부팅 성공까지 전 과정 검증.

다운로드 & 실행

릴리스 페이지에서 받으세요:

  • DiskMigrator-Setup-vX.X.X.exe — 설치 프로그램
  • DiskMigrator-vX.X.X.exe — 무설치 단일 실행 파일(.NET 미설치 PC에서도 실행)

관리자 권한이 필요합니다(우클릭 → 관리자 권한으로 실행). 코드 서명이 없어 SmartScreen 경고가 뜨면 "추가 정보 → 실행".

빌드

# 요구: .NET 8 SDK 이상
dotnet build
dotnet test     # 실제 디스크를 건드리지 않습니다
dotnet publish src/DiskMigrator.App -c Release -o publish

구조

src/DiskMigrator.Core/     플랫폼 독립 — 안전 규칙·클론 엔진·GPT/BCD·레지스트리 하이브
src/DiskMigrator.Windows/  Win32 P/Invoke — 원시 디스크·VSS·부팅 복구·UEFI 변환
src/DiskMigrator.App/      WPF (MVVM)
tests/                     실제 디스크 없이 엔진 검증 (248개)
tools/                     읽기 전용 진단 + VHD 통합 테스트(가상 디스크에만 씀)

핵심 설계는 IBlockDevice 추상화입니다 — 클론 엔진이 이 인터페이스만 알기 때문에, 파일·메모리 기반 가짜 장치로 불량 섹터·취소·검증 실패까지 전부 테스트할 수 있습니다.

버전별 변경 내역은 CHANGELOG.md를 참조하십시오.

라이선스

MIT로 배포합니다. 사용하는 오픈소스 라이브러리는 모두 허용적 라이선스(MIT 또는 Apache-2.0)입니다 — 전체 고지는 THIRD-PARTY-NOTICES.md 참조.

About

Windows disk full-clone tool (.NET 8 / WPF). Sector-level clone incl. running system disk via VSS. v0.x — not yet verified for booting cloned system disks.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages