어제까지는 파티션 스키마에 만족했습니다.
Device Boot mounted at
/dev/nvme0n1p1 * /boot/efi
/dev/nvme0n1p2 swap
/dev/nvme0n1p3 / ext4
/dev/nvme0n1p6 /media/Volume ext4
/dev/nvme0n1p5 /home ext4
나는 또한 가상 박스와 함께 Windows 10을 사용하는데, vdi는 /home 어딘가에 있습니다.
이제 나는 vdi의 크기를 확대해야 하며 가능하더라도 내 /home에 100GB vdi 파일을 갖고 싶지 않습니다. 기본적으로 Windows를 부팅할 수 있다는 아이디어에 감사하고 디스크에 100GB 이상의 분할되지 않은 공간이 있기 때문에
- 원시 img 생성:
VBoxManage internalcommands converttoraw Win7.vdi win10.img
- 분석된 출력:
parted win10.img unit B print
Number Start End Size Type File system Flags 1 1048576B 105906175B 104857600B primary ntfs boot 2 105906176B 54022924799B 53917018624B primary ntfs 3 54023684096B 54522806271B 499122176B primary ntfs diag
/dev/nvme0n1p7
gparted를 사용하여 포맷되지 않은 파티션을 생성했습니다.- win10.img에서 두 번째 파티션을 복사했습니다.
sudo dd if=.local/win10.img of=/dev/nvme0n1p7 skip=105906176 count=53917018624 iflag=skip_bytes,count_bytes
이제 로 마운트하면 sudo mount /dev/nvme0n1p7 /media/x
Windows가 적절하게 종료되지 않았으며 ro로 마운트해야 한다고 불평합니다. . ntfsfix
에 견고한 Windows 설치가 있는 것 같습니다 /dev/nvme0n1p7
.
불행히도 grub이 아닌 가상 상자를 사용하여 부팅할 수 없습니다. VirtualBox의 경우 VBoxManage internalcommands createrawvmdk -filename win10.vmdk -rawdisk /dev/nvme0n1 -partitions 7
. vbox를 시작한 후 검은 화면이 나타나고 그게 전부입니다. grub의 경우 다음을 편집했습니다 /etc/grub.d/40_custom
.
#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
menuentry "Windows 10 (loader) (on /dev/nvme0n1p7)" {
insmod part_msdos
insmod ntfs
set root='(hd0,msdos7)'
chainloader +1
}
그런 다음 실행합니다 sudo update-grub
. 표시됩니다 error: not a valid root device
.
grub은 Windows를 직접 시작할 수 없고 전용 Windows 부트로더(체인로더)만 시작한다는 내용을 읽었습니다. 제 생각엔 그런 게 없다는 게 문제인 것 같아요.
내 질문: Windows 부트로더를 어떻게 구하고 설치할 수 있나요? vbox로 파티션을 어떻게 부팅할 수 있나요?
답변1
문제를 해결하지는 못했지만 전체 시스템을 다시 설치했습니다(먼저 Windows 10을 설치한 다음 라이브 Linux에서 Windows 파티션을 축소하고 Arch용 새 파티션을 만든 다음 여기에 Arch를 설치합니다). 사용재정의, Windows나 Arch로 부팅할 수 있습니다. Arch에서 다음을 사용하여 VirtualBox에서 Windows를 부팅할 수 있습니다.원시 디스크.
가장 어려운 문제는 다음과 같습니다.
어떤 파티션을 사용해야 합니까? 없기그만큼윈도우 파티션. 오히려 4가지가 있습니다.
- 기본 데이터 파티션(ntfs, 500MiB)
- EFI 시스템 파티션(fat32, 100MiB)
- Microsoft 예약 파티션(?, 16MiB)
- 기본 데이터 파티션(ntfs, 100GiB)
해결 방법: 4개(
VBoxManage internalcommands createrawvmdk -filename /whatever/you/want.vmdk -rawdisk /dev/nvme0n1 -partitions 1,2,3,4 -relative
)를 모두 사용하세요. 모두 필요한지 확실하지 않지만 작동합니다.Virtual Box가 부팅되지 않습니다. 모든 정보(위에 언급된 모든 파티션)가 있더라도: efi 모드를 활성화합니다(
Settings
->System
->Enable EFI (special OSes only)
).권한 문제: 사용자를
disk
-group: 에 추가하세요sudo usermod -a -G disk $USER
.