내 자신의 문제에 대한 해결책을 찾습니다. 그렇게 간단하지 않습니다. 경험이없는 우분투 사용자에게는 혼란 스럽습니다. 결국, 나는 이것을하지 않기로 결정합니다. 그러나 누군가가 내가하는 것보다 더 잘 할 수있는 다른 방법이있을 수 있습니다.
새로운 우분투 OS 설치
기본 OS와 함께 Ubuntu OS를 설치하십시오. 제 경우에는 리눅스 민트입니다. 그러나 민트가 우분투를 기반으로하기 때문에 민트와 우분투 사이의 프로세스에 차이가 없습니다.
새로운 OS를 읽을 수있는 가상 박스 용 중간 파일 생성
설치가 완료된 후 새로 설치된 Ubuntu OS가 포함 된 파티션을 읽으려면 VirtualBox 용 매체를 만들어야합니다. 당신이하는 방법은 다음과 같습니다
VBoxManage internalcommands createrawvmdk -filename /path/to/file.vmdk -rawdisk /dev/sdX -partitions Y,Y
X
하드 드라이브는 어디에 있고 파티션 Y
번호는 어디 입니까? 기본 OS 부팅이 포함 된 파티션을 포함하지 마십시오. 메인 OS 부팅이 포함되지 않은 새 OS에는 다른 부팅 매체가 필요하기 때문입니다. 루트로 실행해야 할 수도 있습니다.
새 OS에서 부팅 할 가상 박스 용 매체 만들기
부팅 매체를 만들기 위해 새 OS 부팅 파일에서 ISO 이미지를 만듭니다. 먼저, 우리는 이것을 메인 OS에서해야합니다. 컴퓨터를 다시 시작하고 기본 OS에서 부팅하십시오. 필자의 경우 Linux Mint로 재부팅합니다.
iso 부팅 파일을 만들기위한 임시 폴더를 만들어야합니다. 그래서 일단 민트가 일을 할 준비가되면. 폴더를 만듭니다. 데스크톱에서이 작업을 수행한다고 가정합니다. 우리는 이렇게 할 것입니다 :
데스크탑으로 이동하십시오.
새 폴더를 만들고 이름을 "iso"로 지정하십시오.
해당 iso 폴더를 열고 "boot"라는 새 폴더를 다시 만듭니다.
해당 부트 폴더를 열고 "grub"이라는 새 폴더를 다시 만드십시오.
터미널을 통해이 작업을 수행하는 경우이 줄을 입력하고 Enter 키를 누르면됩니다.
mkdir -p ~/Desktop/iso/boot/grub
터미널은 우리가하고있는 일을 안다면 훌륭한 도구입니다! ;)
폴더가 만들어지면 새 Ubuntu OS 부팅 파일을 해당 폴더에 복사해야합니다. 따라서 Ubuntu OS를 설치 한 파티션을 연 다음에서 모든 파일을에서 /usr/lib/grub/i386-pc/
로 복사하십시오 ~/Desktop/iso/boot/grub
. 모든 파일을에서 (으) /boot/grub/grub.cfg
로 복사하십시오 ~/Desktopiso/boot/grub
.
다시이 단계가 터미널을 통해 수행되면 다음과 같이해야합니다.
cp /usr/lib/grub/i386-pc/* ~/Desktop/iso/boot/grub
cp /boot/grub/grub.cfg ~/Desktop/iso/boot/grub
~/Desktop/iso/boot/grub/grub.cfg
텍스트 편집기 에서 grub.cfg를여십시오 . 경고 실수하지 마십시오. 여기서 편집 할 내용은의 실수가 아닙니다 /boot/grub/grub.cfg
. 마지막으로 언급 한 내용을 편집하면 기본 OS 부팅이 실패합니다.
grup.cfg가 열리면 menuentry
우리가 설치 한 새로운 Ubuntu OS와 관련이없는 것을 삭제하십시오 . 일반적으로 다음과 같습니다.
### Begin /etc/grub.d/your_main_os ###
menuentry 'The text displayed in boot menu' {
----
some code we don't need understand for this
----
}
### End /etc/grub.d/your_main_os ###
우리가 설치 한 새로운 Ubuntu OS와 관련이없는 모든 메뉴 항목을 삭제하십시오. 우리는 VirtualBox에 존재할 필요가 없습니까?
다음으로 모든 파일이 포함 된 폴더를 iso로 변환합니다 :
grub-mkrescue -o boot.iso ~/Desktop/iso
참고 : 이 작업을 수행하는 동안 오류가 발생하면 xorriso
먼저 설치해야합니다 . 이것으로 :
sudo apt-get install xorriso
부팅을위한 ISO 파일이 생성됩니다. 우리가 만든 중간 파일과 같은 폴더에 iso 파일을 넣으면 좋습니다.
가상 머신이 설치된 정확한 Ubuntu OS를 부팅 할 수 있도록 설정
새로 설치된 OS를 읽을 수있는 매체를 만들었으며 VirtualBox 용 부트 로더를 독립적으로 만들었습니다. 마지막으로 Virtual Box에서이를 수행하는 방법을 구성해야합니다.
우리가 어디에 두었습니까 medium.vmdk
? 터미널을 열고 다음을 수행하십시오.
chmod -v 666 medium.vmdk
루트 변경 medium.vmdk
및 boot.iso
파일 권한으로. 우리는 그 파일의 소유자가되어야합니다.
VirtualBox를 엽니 다. 새로운 기계를 만드십시오. 하드 드라이브 옵션에 옵션 use an existing virtual hard drive
이 표시되면medium.vmdk
완료하지만 아직 실행하지 마십시오. 새 기기를 선택한 상태에서 설정을 엽니 다.
저장소 섹션에서 CD 저장소가 없으면 새 저장소를 만듭니다. 그런 다음 boot.iso
CD 저장소에서 만든 마운트 를 만드십시오 .
설정을 닫기 전에 시스템 섹션으로 이동하여 확인하십시오. 포함 된 CD 저장소 boot.iso
는 하드 디스크보다 먼저 읽습니다. 이렇게하면 Virtual Box가 CD에서 부팅하여 새로 설치된 OS를 읽습니다.
끝. 가상 머신과 실제 머신 모두에서 새로운 설치된 OS를 실행할 수 있습니다.
중요 사항
우리는 양방향으로 부팅 할 수 있지만. 내가 찾은 문제가 있습니다.
실제 머신에서 부팅 한 다음 가상 머신에서 부팅하려고하면 오류가 발생합니다. 실제 드라이브 상태는 medium.vmdk
모르게 변경되기 때문입니다. 따라서 새로운 매체를 생성하고 가상 머신에서 부팅 할 수있는 권한을 다시 변경해야합니다. 그러나 새로운을 만들 필요는 없습니다 boot.iso
.
두 시스템의 MAC 주소가 다르기 때문입니다. 네트워크 설정을 구성하려고하면 OS가 혼동됩니다. 필자의 경우, Ubuntu Server를 새 OS로 설치했으며 다른 컴퓨터에서 부팅 할 때마다 "네트워크 구성 대기 중 ..."과 같은 메시지가 약 2 분 동안 표시된 다음 부팅됩니다.
그게 다야. 내 문제에 대한 나의 해결책.