Computer >> 컴퓨터 >  >> 소프트웨어 >> 가상 머신

USB 드라이브에서 VirtualBox 부팅:단계별 가이드

VirtualBox에서 USB 드라이브로 부팅하는 방법 - 튜토리얼

업데이트 날짜:2024년 2월 12일

VirtualBox에서는 새 가상 머신을 생성할 때 일반적으로 게스트 운영 체제를 시작하기 위한 "두 가지" 옵션이 있습니다. ISO 이미지(CD/DVD 드라이브와 동일)에서 부팅하거나 가상 하드 디스크에서 부팅할 수 있습니다. 하지만 실제로 USB 드라이브에 운영 체제가 있고 이를 시작 미디어로 사용하고 싶다면 어떻게 해야 할까요?

이 작업을 수행하려는 데에는 여러 가지 이유가 있습니다. 예를 들어, 운영 체제는 ISO와 같은 간단하고 친숙한 형식으로 사용 가능하지 않을 수 있습니다. 또는 소스 ISO가 없고 최종 아티팩트, 파티션 테이블 및 외부 드라이브의 데이터만 있을 수도 있습니다. 오늘의 튜토리얼에서는 기존(부팅 가능한) USB 드라이브에서 부팅하고 거기에 있는 모든 운영 체제를 실행하는 방법을 보여 드리겠습니다. 우리는 선택한 플랫폼으로 Linux를 사용할 것입니다. 나를 따르라.

원시 디스크 옵션 및 주의 사항

VirtualBox는 "원시" 장치에서 부팅하는 옵션을 지원합니다. 즉, 기존 내부 또는 외부 저장 장치를 원시 장치로 구성한 다음 부팅할 수 있습니다. 이는 이중 부팅 또는 다중 부팅 설정을 포함한 모든 운영 체제일 수 있습니다. 기술적으로는 운영 체제 드라이브(Windows에서는 C:\가 있는 파티션일 수 있음)를 매핑하고 실행할 수도 있습니다. 그리고 여기에는 원시 장치를 사용하는 데 큰 위험이 있습니다. 디스크를 잘못 구성하는 것은 너무나 쉽습니다. 문자 하나가 잘못되면 기존 디스크와 여기에 저장된 모든 데이터가 잠재적으로 복구 불가능하게 파괴될 수 있습니다. 따라서 원시 장치 기능을 시도할 때는 매우 주의해야 합니다. 이런 식으로 노트북을 망가뜨린 친구가 있습니다. 진짜. 당신은 경고를 받았습니다. 이제 계속 진행하겠습니다.

디스크 파일 생성 및 원시 장치에 매핑

다음 명령은 원시 디스크를 생성합니다:

sudo VBoxManage createmedium disk --filename=[file.vmdk] --format=VMDK --variant=RawDisk --property RawDrive=[장치]

여기에는 무엇이 있나요?

가장 중요한 두 가지 요소는 다음과 같습니다:

  • 파일 이름 - VirtualBox가 원시 장치를 인식하는 데 사용되는 파일(VDMK 형식)입니다.
  • RawDrive - 파일 이름에 매핑하려는 실제 원시 장치입니다.

디스크에 있는 파일의 위치는 실제로 중요하지 않습니다. 그러나 올바른 원시 장치를 식별하는 것이 중요합니다. Linux에서는 fdisk를 사용하여 장치 목록을 확인할 수 있습니다. 하드 디스크 표기법과 올바른 크기를 알고 있어야 합니다. 간단한 fdisk -l로 시작하여 모든 로컬 장치를 볼 수 있습니다. 그러면 루프백 장치(예:스냅)도 표시됩니다. 그런 다음 스토리지 토폴로지에 대한 기본적인 이해를 얻은 후에는 목록의 범위를 좁힐 수 있습니다. 예를 들면:

sudo fdisk -l /dev/nvme*

디스크 /dev/nvme0n1:931.51 GiB, 1000204886016바이트, 1953525168 섹터
디스크 모델:삼성 SSD 980 1TB
단위:1 * 512 =512바이트 섹터
섹터 크기(논리적/물리적):512바이트 / 512바이트
I/O 크기(최소/최적):16384바이트 / 131072바이트
디스크 라벨 유형:gpt
디스크 식별자:C096EC37-7278-4E24-98C6-6A3906628E91

장치 시작 끝 섹터 크기 유형
/dev/nvme0n1p1 2048 1050623 1048576 512M EFI 시스템
/dev/nvme0n1p2 1050624 4550655 3500032 1.7G Linux 파일 시스템
/dev/nvme0n1p3 4550656 1953523711 1948973056 929.3G Linux 파일 시스템

그리고 마찬가지로:

sudo fdisk -l /dev/sdb
디스크 /dev/sdb:14.91 GiB, 16008609792바이트, 31266816 섹터
디스크 모델:크루저 스위치
단위:1 * 512 =512바이트 섹터
섹터 크기(논리적/물리적):512바이트 / 512바이트
I/O 크기(최소/최적):512바이트 / 512바이트
디스크 라벨 유형:gpt
디스크 식별자:A674DC54-3E17-4C42-8B62-90E4DCE4AEB3
...

이 경우 fdisk는 디스크 모델 정보도 인쇄하는데 이는 매우 유용합니다. 이렇게 하면 대부분 피하고 싶은 내부 하드 디스크와 USB로 연결된 외부 썸 드라이브를 식별하고 구별하는 것이 훨씬 쉬워집니다. 일부 배포판에서는 장치 정보를 볼 수 있는 GUI 방식도 제공합니다:

USB 드라이브에서 VirtualBox 부팅:단계별 가이드

예를 들어, 썸 드라이브가 /dev/sdb(Linux의 경우)에 매핑된 경우 다음과 같이 원시 장치 매핑 명령을 실행할 수 있습니다:

sudo VBoxManage createmedium disk --filename=./Rdisk.vmdk --format=VMDK --variant=RawDisk --property RawDrive=/dev/sdb

여기서는 USB 드라이브를 올바르게 식별해야 하기 때문에 각별히 주의해야 합니다. 잘못된 장치를 매핑하면 나중에 문제가 발생하고 데이터가 손실될 수 있습니다.

sudo VBoxManage createmedium disk --filename=./Rdisk.vmdk --format=VMDK --variant=RawDisk --property RawDrive=/dev/sdb
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
매체가 생성되었습니다. UUID:041a84a8-9d9a-4ae3-a4a1-5393a24f6f7d

명령이 완료되면 VirtualBox를 시작하세요.

사용 가능한 저장 장치 목록에 새 디스크 추가

다음 단계는 새로 생성된 디스크를 연결하는 것입니다. VirtualBox의 하드 디스크 선택기 도구를 통해 이 작업을 수행할 수 있습니다. 도구> 미디어> 추가를 클릭하고 VMDK 파일을 찾아 추가합니다. 하지만 기다려라. 이 작업을 수행하려면 올바른 권한이 있어야 합니다. 실제로 디스크를 추가하더라도 가상 머신이 여전히 실행되지 않을 수 있으며 다양한 오류가 발생할 수 있습니다. 이 문제는 곧 다루겠습니다. 지금은 권한이 정확하다고 가정하겠습니다.

USB 드라이브에서 VirtualBox 부팅:단계별 가이드

USB 드라이브에서 VirtualBox 부팅:단계별 가이드

USB 드라이브에서 VirtualBox 부팅:단계별 가이드

디스크를 추가한 후 가상 머신 설정을 열고 스토리지를 클릭하세요. 기본적으로 하나의 디스크(VDI)에 SATA 컨트롤러가 이미 할당되어 있을 가능성이 높습니다. 이를 선택한 다음 파란색 + 아이콘을 클릭하여 디스크를 추가하고 VMDK 파일을 선택합니다. SATA 컨트롤러가 없으면 먼저 녹색 + 아이콘을 클릭하고 SATA 컨트롤러를 추가한 다음 녹색 + 아이콘을 클릭하고 디스크를 추가합니다. 아래 예에서 "최종" 설정에는 두 개의 할당된 디스크, 즉 Windows 11 디스크(VDI 형식)와 Rdisk.vmdk(VMDK 형식)가 포함되어 있습니다. ISO 파일로 부팅하지 않을 것이므로 기본 가상 광학 드라이브를 제거했습니다.

USB 드라이브에서 VirtualBox 부팅:단계별 가이드

USB 드라이브에서 VirtualBox 부팅:단계별 가이드

제가 하고 싶었던 작업은 다음과 같습니다. 설치 환경을 사용자 정의할 수도 있는 뛰어난 작은 도구인 Rufus를 사용하여 Windows 11 설치 미디어를 만들었습니다. 즉, Windows 설치 중에 일반적으로 표시되는 말도 안되는 항목 중 일부를 제거할 수 있습니다. 그러나 Rufus는 미디어와 구성을 외부 장치에만 기록합니다. ISO 파일은 생성되지 않습니다.

따라서 Rufus가 제 역할을 했는지 테스트하려면 어딘가에서 USB 장치를 부팅하고 어떤 결과가 나오는지 확인해야 했습니다. 물리적 상자에서 그렇게 할 수 있지만 항상 쉬운 옵션은 아닙니다. 특히 디스크를 포맷하고 거기에 시스템을 설치해야 하는 경우에는 더욱 그렇습니다. 대신, 가상 머신은 테스트를 위한 완벽한 대안이지만 가상 CD(ISO 파일)가 아닌 USB 드라이브에서 부팅해야 합니다.

따라서 위의 예에서 내 가상 머신에는 (빈) Windows 디스크와 설치 중에만 사용할 연결된 원시 장치가 있습니다. 기술적으로 여러 개의 부팅 가능한 디스크를 가상 머신에 연결할 수 있으며, 그런 다음 머신의 BIOS에서 올바른 순서로 부팅되는지 확인해야 합니다.

가능한 오류

새 원시 디스크를 생성하면 해당 권한은 Linux에서 0600 및 소유권 루트:루트가 됩니다. 즉, VirtualBox에서 파일을 사용하는 것은 물론이고 이 파일에 액세스할 수도 없습니다. 다른 사용자를 위해 rwx를 추가하거나 소유권을 변경하여(더 좋음) 권한을 변경해야 합니다. 다음과 같습니다:

sudo chown roger:roger file.vdmk

아니면 아마도:

sudo chown roger:vboxusers file.vdmk

하지만 이것만으로는 충분하지 않습니다. VERR_ACCESS_DENIED 오류가 발생할 가능성이 높습니다:

USB 드라이브에서 VirtualBox 부팅:단계별 가이드

매체 'path-to-your-vmdk-file'(VERR_ACCESS_DENIED)에 대한 파일에 액세스하는 데 권한 문제가 있습니다.

결과 코드:VBOX_E_FILE_ERROR(0X80BB0004)
구성요소:MediumWrap
인터페이스:IMedium {ad47ad09-787b-44ab-b343-a082a3f2dfb1}
수신자:IVirtualBox {7682d5eb-f00e-44f1-8ca2-99d08b1cd607}
수신자 RC:VBOX_E_OBJECT_NOT_FOUND (0X80BB0001)

그 이유는 사용자가 올바르게 설정되고 vboxusers 그룹의 구성원인 경우에도 사용자가 원시 장치(디스크 그룹)에 액세스하도록 별도로 허용해야 하기 때문입니다. 다음 방법으로 이를 수행할 수 있습니다:

sudo usermod -a -G 디스크 $USER

그런 다음 로그아웃했다가 다시 로그인하면 변경 사항이 적용됩니다. 로그아웃하지 않고 이를 수행하는 방법도 있지만 이것이 대부분의 사람들에게 가장 간단한 방법입니다. Windows와 Linux 모두에서 이 전체 문제에 대한 대안은 관리자 권한으로 VirtualBox를 시작하는 것입니다. 그러나 이는 일반적으로 현명한 생각이 아닙니다. 모든 오류를 포함하여 귀하가 수행하는 모든 작업에는 높은 수준의 권한이 반영되기 때문입니다.

부팅 및 테스트

이제 다양한 문제를 모두 분류했으므로 모든 것이 제대로 작동하는지 살펴보겠습니다. 실제로 Rufus가 작업을 수행하고 있음을 나타내는 맞춤형 부팅 화면을 볼 수 있었습니다. 그리고 설정 단계에서 실제로 원시 장치(USB 드라이브)인 작은 하드 디스크와 실제로 설치 대상 장치인 더 큰 100GB의 빈 가상 디스크를 모두 볼 수 있었습니다.

USB 드라이브에서 VirtualBox 부팅:단계별 가이드

USB 드라이브에서 VirtualBox 부팅:단계별 가이드

두 개의 드라이브:드라이브 0은 두 개의 파티션이 있는 16GB USB 드라이브입니다. 이를 설치 대상으로 사용하지 않습니다(따라서 VirtualBox에서 원시 장치를 사용할 위험이 있음). 드라이브 1은 파티션 테이블이 없는 100GB의 빈 가상 디스크입니다. 하지만 사용 가능한 옵션이 두 개 이상인 경우에는 매우 주의해야 합니다.

결론

이제 이 튜토리얼을 마스터했으므로 본격적으로 플레이를 시작할 수 있습니다. 다중 디스크 설정을 테스트하고 다양한 외부(및 내부) 장치에 이미 존재하는 운영 체제를 부팅해 볼 수 있습니다. 멀티부팅 USB 장치를 생성하고 물리적 하드웨어에서 본격적으로 시도하기 전에 VirtualBox에서 올바르게 작동하는지 확인할 수도 있습니다. 이러한 모든 경우에는 원시 디스크 기능이 물리적 호스트와 가상 게스트 사이의 격리 경계를 허물기 때문에 주의가 필요합니다.

이것이 도움이 되었기를 바랍니다. VirtualBox에서 원시 장치를 사용하는 첫 번째 단계는 올바른 저장 매체를 올바르게 식별하는 것입니다. 어떻게 해야 할지 모르거나 확실하지 않다면 지금 당장 중단하세요. 그런 다음 이 단계가 완료되면 vmdk 파일을 생성하고 이를 올바른 장치에 매핑해야 합니다. 다음으로 몇 가지 권한 문제가 있을 수 있으며 마지막으로 디스크를 연결하고 USB 드라이브에서 가상 머신을 부팅할 수 있습니다. 오늘은 이것이 전부입니다. VirtualBox에 관해 다른 질문이 있는 경우 한두 줄씩 알려주십시오. 그러면 여기 저기에 또 다른 신선하고 원시적인 가이드를 만들 수 있습니다. 나중에 봐요.

건배.