Windows/Linux 디스크 전환

Windows/Linux 디스크 전환

저는 드라이브 2개, 소형 SSD, 1TB HDD를 갖춘 노트북(ASUS harman/kardon)을 가지고 있습니다. SSD에는 Windows가 설치되어 있었고 HDD에는 Linux를 설치했습니다.

나는 거의 독점적으로 Linux 파티션을 사용하기 때문에 간단히 Linux 파티션을 다른 드라이브로 전환하고 Windows를 HDD에 넣을 수 있는 방법이 있습니까(Windows 라이센스를 잃고 싶지 않습니다).

Linux 이미지를 그대로 유지하고 싶습니다. 창을 처음부터 복원해야 해도 괜찮습니다.

나는 추가 공간이 필요할 수 있다는 점을 이해하며 두 파티션을 모두 수용할 수 있을 만큼 충분히 큰 외부 드라이브를 가지고 있습니다.

그렇다면 둘 다 다시 시작하지 않고도 Linux를 SSD로, Windows를 HDD로 교체할 수 있습니까?

시도 1

Windows 파티션을 위한 공간을 확보하기 위해 HDD의 Linux 파티션을 축소했습니다. 그런 다음 Windows 설치 디스크를 만들어 HDD에 Windows를 설치했습니다. 불행하게도 이 설치 디스크는 다른 Windows 설치를 선택합니다. 또한 "지금 설치" 버튼만 표시되는데, 이는 어디에 설치될지 모르기 때문에 매우 쓸모가 없습니다.

SSD를 물리적으로 제거하고 HDD의 Linux 항목을 다른 곳에 저장한 다음 Windows 설치를 실행하고 제어해야 하는 것 같습니다(어쨌든 어떤 사용자가 운영 체제 제어가 필요합니까?). 다른 아이디어가 있나요? Windows를 특정 위치에 강제로 설치하는 방법이 있습니까?

업데이트

HDD에 파티션을 만들고 그 위에 윈도우를 설치했습니다. 그런 다음 SSD를 다시 포맷하고(부팅 파티션은 그대로 유지) rsync를 사용하여(링크된 질문에서) 기존 드라이브의 모든 데이터를 새 드라이브에 복사했습니다.

그런 다음 을 실행했지만 sudo grub-install <SSD>부팅 시 grub은 HDD의 설치만 선택합니다(항상 가지고 있는 Windows 부팅 관리자도 포함). 한 단계가 누락되었나요? 새로운 '설치'에서 부팅할 때 grub-install을 실행해야 합니까? 그렇다면 어떻게 부팅합니까?

편집하다:새로운 '설치'로 chroot해야 할 것 같습니다. 그러나 이렇게 하면 grub을 설치하려는 디스크(/dev/nvme0n1)가 손실됩니다. Grub이 부팅되고 이 디스크가 존재할 때(그럴 것이라는 것을 알고 있습니다) 작동하도록 설정하는 방법이 있습니까?

답변1

그래서 마침내 이 작업을 수행할 수 있었고 확실히 많은 작업이 필요했지만 완료되었으며 잘 실행되고 있는 것 같습니다(그리고 훨씬 더 빠릅니다). 남은 것은 아직 HDD에 남아있는 스왑을 처리하는 일 뿐이다.

1 단계:

Linux 라이브 디스크를 만들고 부팅한 다음 HDD를 축소하여 Windows 설치를 위한 충분한 공간을 확보합니다(파티션 크기는 최종적으로 조정되므로 정확한 크기에 대해 걱정하지 마십시오). 저는 gparted를 좋아하기 때문에 Linux 라이브 디스크를 사용했는데, 해당 드라이브가 마운트되어 있고 크기를 조정할 수 없었기 때문에 실행 중인 Linux 시스템에서는 이 작업을 수행할 수 없었습니다.

참고 - Windows를 설치한 후에는 Windows 파티션을 이동할 수 없습니다. 나는 당신이 할 수 있다고 가정했습니다. 이는 Linux 파티션이 HDD의 시작 부분에 있으면(제가 사용했던 것처럼) 해당 공간이 낭비된다는 의미입니다. 모든 것을 드라이브 끝으로 옮긴 다음 Windows 파티션을 처음에 두는 것이 좋습니다. Windows 파티션은 언제든지 확장할 수 있기 때문입니다(그러나 시간이 꽤 걸립니다).

2 단계:

Windows 부팅 디스크 만들기 - 완료 가능윈도우 사이트에서. 이상적으로는 문제가 발생하여 다시 시작해야 할 경우 새 Linux 디스크를 만들 필요가 없으므로 두 번째 플래시 드라이브에 두는 것이 좋습니다.

3단계:

창을 설치하고 "지금 설치"를 클릭한 다음 파티션을 선택할 수 있을 때까지 진행하고 HDD 크기를 조정할 때 생성한 파티션을 선택합니다(포맷할 필요도 없으며 창은 여유 공간이 있는 상태에서 작업을 수행합니다). 드라이브). 창문이 그 일을 하게 하세요. 새 Windows 설치에 처음 로그인하면 라이센스 키를 확인합니다.

4단계:

원래 Windows 설치에서 원하는 모든 것을 복사하십시오.

5단계:

라이브 디스크(HDD에 설치된 디스크가 아님)에서 Linux로 다시 부팅합니다. SSD를 파괴하고 ext4 파티션을 만듭니다. 처음부터 FAT32 파티션을 건드리지 마십시오. 이는 부팅 파티션이므로 중요합니다.

6단계:

모든 것을 새 드라이브로 재동기화하세요. 여기에는 이전 디스크와 새 디스크를 마운트하고 모든 것을 동기화하는 작업이 포함됩니다(/proc/devices와 같은 일부 작업은 실패할 수 있지만 괜찮지만 루트인지 확인하세요). 이것은 다음과 같습니다:

mount /dev/sda2 oldDisk/ #the existing linux partition
mount /dev/nvme0n1p2 newDisk/ #The new, empty partition on SSD
rsync -avz oldDisk/ newDisk

7단계:

원래 Linux 설치로 다시 부팅합니다(라이브 플래시 드라이브에서도 작동할 수 있음).

mount /dev/nvme0n1p2 /mnt #Mount the new drive somewhere
mount --bind /dev /mnt/dev/
grub-install --boot-device=/mnt /dev/nvme0n1 #note this is the whole device, not just the patition (akin to /dev/sda)
update-grub #so the new stuff is picked up.

이 설명되어 있습니다여기.

그것이 전부여야 합니다. 그 이후로 Linux 설치를 정리했습니다. Windows 부팅 관리자는 마침내 자체적으로 만족스러워 보입니다(몇 번의 재부팅 주기이면 충분하다고 생각합니다).

아직 정리하지 않은 이전 Linux 설치가 남아 있습니다. 또한 Windows 부팅 관리자가 누락된 Windows 설치로 인해 약간 엉망이 되었기 때문에 Windows 부팅 관리자를 정리하는 방법을 모르지만 적어도 부팅됩니다.

관련 정보