멀티 부팅 USB 드라이브

참고:참 토론(논의에서 이야기:멀티 부팅 USB 드라이브#범위와 제목)

멀티부팅 USB 플래시 드라이브 부팅할 수 있는 여러 ISO 에서 파일을 하나의 장치입니다. ISO 파일을 장치에 복사하고 먼저 압축을 풀지 않고 직접 부팅 할 수 있습니다. 사용할 수있는 방법은 여러 가지가 있지만 모든 ISO 이미지에서 작동하지 않을 수 있습니다.

GRUB 을 사용하고 루프백 기기

이 문서 또는 섹션이 필요,언어 wiki syntax 또는 스타일을 개선합니다. 참조 용 도움말:스타일을 참조하십시오.

이유:여러 스타일의 문제점(논의에서 이야기:멀티 부팅 USB 드라이브#)

이점:

  • 단 하나의 파티션이 필요
  • 모든 파일 ISO 에서 발견되는 디렉터리
  • 추가하고 제거하 ISO 파일은 간단

단점:

  • 하지 않는 모든 ISO 이미지의 호환성
  • 원래 부팅 메뉴에 대한 ISO 파일은 다음과 같
  • 그것은 찾기 어려울 수 있습니다 작업 부팅 항목

준비

이유:부트 로더에 필요한 추가 공간은 얼마입니까? (Talk 에서 토론하십시오:Multiboot USB drive#)

USB 드라이브의 GRUB 가 지원하는 하나 이상의 파티션과 파일 시스템을 만듭니다. 분할 및 파일 시스템#파일 시스템 만들기를 참조하십시오. 드라이브에 저장할 ISO 파일의 총 크기를 기준으로 크기를 선택하고 부트 로더에 대한 추가 공간을 계획하십시오.

설치 GRUB

간단한 설치

산 파일시스템 위치하고 있는 USB 드라이브:

# mount /dev/sdXY /mnt

디렉터리를 만들/boot:

# mkdir /mnt/boot

설치 GRUB USB 드라이브에서 사용:

# grub-install --target=i386-pc --recheck --boot-directory=/mnt/boot /dev/sdX

경우에 당신이 원하는 부팅 Iso UEFI 모드를 설치해야 합 grub 에 대한 대상 UEFI:

# grub-install --target=x86_64-efi --removable --boot-directory=/mnt/boot --efi-directory=/mnt

UEFI 의 경우 파티션은 MBR 파티션 테이블의 첫 번째 파티션이어야하며 FAT32 로 포맷해야합니다.

하이브리드 UEFI GPT+BIOS GPT/MBR 부팅

이 구성은 유용한을 만들기 위한 보편적인 USB 열쇠,부팅할 수 있다.우선 당신은 당신의 장치에 GPT 파티션 테이블을 만들어야합니다. 최소 3 개의 파티션이 필요합니다.

  1. BIOS 부팅 파티션(gdisk 유형 코드EF02). 이 파티션 1MiB 크기
  2. EFI 시스템 파티션(gdisk 유형 코드EF00FAT32 파일시스템). 이 파티션은 50MiB 만큼 작을 수 있습니다.
  3. 데이터 파티션(GRUB 에서 지원하는 파일 시스템 사용). 이 파티션은 드라이브의 나머지 공간을 차지할 수 있습니다.

이유:무언가가 충분하지 않을 수 있으므로 작성해야합니까? (논의에서 이야기:멀티 부팅 USB 드라이브#)

다음을 만들어야 합니다 하이브리 MBR 파티션 테이블로 설정은 부트 플래그에서 보호 MBR 파티션이 충분하지 않을 수도 있습니다.

하이브리 MBR 파티션 테이블 작성 예제를 사용하여 gdisk:

하는 것을 잊지 마 파티션을 포맷:

# mkfs.fat -F32 /dev/sdX2# mkfs.ext4 /dev/sdX3

설치할 수 있습 GRUB 모두 지원하는 EFI+GPT 및 BIOS+GPT/MBR. GRUB 구성(–boot-directory)은 동일한 장소에 보관할 수 있습니다.

먼저 EFI 시스템 파티션과 USB 드라이브의 데이터 파티션을 마운트해야합니다.

이 예제는 다음과 같습니다:

# mount /dev/sdX3 /mnt# mkdir -p /mnt/boot/EFI# mount /dev/sdX2 /mnt/boot/EFI

한 다음,설치할 수 있습니다 GRUB UEFI 과:

대부분의 경우EFI_MOUNTPOINT는 마운트 된 USB 디스크의/mnt/boot/EFI하위 디렉토리에 해당합니다.

# grub-install --target=x86_64-efi --recheck --removable --efi-directory=/EFI_MOUNTPOINT --boot-directory=/DATA_MOUNTPOINT/boot

고 BIOS 과:

# grub-install --target=i386-pc --recheck --boot-directory=/DATA_MOUNTPOINT/boot /dev/sdX

추가로 대체,설치할 수도 있습니다 GRUB 에 MBR-부트 데이터 파티션:

# grub-install --target=i386-pc --recheck --boot-directory=/DATA_MOUNTPOINT/boot /dev/sdX3

GRUB 구성

템플릿을 사용하여

있 git 프로젝트 제공하는 일부 기존의 GRUB 구성 파일,그리고 좋은 일반적인grub.cfg될 수 있는 로드하는 데 사용되는 다른 부트 항목에서 수요, 을 보여주는 경우에만 지정된 ISO 파일 또는 폴더를 포함한 그들은 현재에서 드라이브입니다.

Multiboot USB:https://github.com/aguslr/multibootusb

GLIM(GRUB2Live ISO Multiboot): https://github.com/thias/glim

수동으로 구성

목적을 위해 멀티 부팅 USB 드라이브를 쉽게 편집grub.cfg/etc/grub.d/40_custom/mnt/boot/grub/custom.cfg/mnt/boot/grub/grub.cfg를 사용하여 grub-mkconfig.

그대로 사용하는 것이 좋습니다 지속적인 대신 이름의/dev/sdxY식별 파티션에서는 USB 드라이브 이미지 파일이 있는 변수를 정의한 편의를 개최합니다. ISO 이미지가 GRUB 와 동일한 파티션에 있으면 다음을 사용하여 부팅시 UUID 를 읽습니다.

/mnt/boot/grub/grub.cfg
#경로 파티션을 들고 ISO 이미지(사용 UUID)프로브는 u$root--설정=rootuuidset imgdevpath="/dev/디스크/의 uuid/$rootuuid"

또는 지정 UUID 명시적으로.

/mnt/boot/grub/grub.cfg
#경로 파티션을 들고 ISO 이미지(사용 UUID)를 설정 imgdevpath="/dev/디스크/의 uuid/UUID_value"

또는 장치를 사용하는 대신 레이블 UUID:

/mnt/boot/grub/grub.cfg
#경로 파티션을 들고 ISO 이미지(라벨 사용)설정 imgdevpath="/dev/디스크/의 레이블/label_value"

필요한 UUID 또는 레이블을 사용하여 찾을 수 있습니다lsblk -f. USB 장치의 Arch ISO 와 동일한 레이블을 사용하지 마십시오.그렇지 않으면 부팅 프로세스가 실패합니다.

구성을 완료,부트에 대한 항목이 각 ISO 이미지 추가 할 수 있는 아래에 이 헤더,다음 섹션을 참조하십시오에 대한 예입니다.

부팅 항목

가 ISO 이미지가 저장된boot/iso/디렉토리에서 같은 파일시스템 어디에 GRUB 설치된 것입니다. 그렇지 않으면 그것은 필요한 것 앞의 경로 ISO 가진 파일 장치를 식별할 때 사용하는loopbackloopback loop (hd1,2)$isofile. 이러한 장치 식별은 지속적이지 않으므로이 섹션의 예제에서는 사용되지 않습니다.

이와 같이 영구 블록 장치 이름 지정을 사용할 수 있습니다. ISO 파일 시스템 UUID 에 따라 UUID 를 교체하십시오.

팁:커널 매개 변수 목록은 커널의 명령 줄 매개 변수 설명서를 참조하십시오. 부팅 항목의 자세한 예는 GRUB 업스트림 설명서 또는 부팅하려는 배포판의 설명서를 참조하십시오.

아치 리눅스 월간 릴리스

또한 archiso 를 참조하십시오.

README 를 참조하십시오.커널 명령 줄에서 지원되는 archiso 옵션 용 bootparams.

memtest86+

memtest86+는 월간 ISO 에 포함됩니다.

archboot

또한 archboot 를 참조하십시오.

Syslinux 및 memdisk 를 사용하여

memdisk 모듈을 사용하면 ISO 이미지가 메모리에로드되고 해당 부트 로더가로드됩니다. 이 USB 드라이브를 부팅 할 시스템에 이미지 파일 및 실행중인 운영 체제에 충분한 양의 메모리가 있는지 확인하십시오.

준비

있는지 확인하는 USB 드라이브가 제대로 분할되고 있는 것입니다 파티션으로 파일 시스템이 지원하여 상용 부트,예를 들어 또는 fat32ext4. 그런 다음이 파티션에 Syslinux 를 설치,BIOS 에 Syslinux#설치를 참조하십시오.

memdisk 모듈 설치

Syslinux 설치 중에 memdisk 모듈이 설치되지 않았으므로 수동으로 설치해야합니다. Mount 파티션 상용 부트로 설치된/mnt/복사 memdisk 모듈을 같은 디렉토리에 상용 부트로 설치된

# cp /usr/lib/syslinux/bios/memdisk /mnt/boot/syslinux/

구성

후 복사하 ISO USB 드라이브에 파일을 편집 상용 부트로 구성 파일 작성 메뉴 항목에 대한 ISO 이미지입니다. 기본 항목은 다음과 같습니다.

boot/syslinux/syslinux.cfg
레이블 SOME_LABEL LINUX memdisk INITRD/path/to/image.iso 추가 iso

자세한 구성 옵션은 Syslinux wiki 의 memdisk 를 참조하십시오.

주의 32 비트 시스템

부팅하면 32 비트 시스템에서는 이미지보다 더 큰 128MiB,그것이 증가하는 데 필요한 최대의 메모리 사용량 vmalloc. 이것은 추가하여 수행됩vmalloc=valueMvalue크기보다 큰 ISO 이미지에 MiB.

예를 들어 부팅하면 32 비트 시스템에서 아치에 설치하 ISO,pressTabBoot Arch Linux (i686)vmalloc=768M니다. 이 단계를 건너뛰는 것입니다에 따라 다음과 같은 오류를 부팅하는 동안.

modprobe: ERROR: could not insert 'phram': Input/output error

자동화된 도구

  • GRUB2 라이브 ISO 멀티 부팅(은)—세트의 GRUB 구성 파일을 설정하 VFAT 포맷 USB 메모리 스틱 GNU/리눅스 배포판 ISO 으로 이미지 멀티부팅 USB 드라이브입니다.

https://github.com/thias/glim||패키지되지 않았습니까? 검색에 AUR

  • liveusb-builder—스크립트를 만들 멀티 부팅 USB 스틱을 위한 GNU/리눅스 배포판

https://github.com/mytbk/liveusb-builder||liveusb-builder-gitAUR

  • MultiBootUSB—크로스 플랫폼 Python 소프트웨어와 함께 CLI and GUI 인터페이스할 수 있는 설치하고 제거하는 여러브 리눅스는 이미지에 대 USB 스틱입니다.

https://github.com/mbusb/multibootusb||multibootusbAUR

  • 멀티시스템—그래픽 수 있는 도구를 설치,관리 및 제거하고 여러 ISO 영상 USB 장치입니다.

http://liveusb.info/dotclear/||multisystemAUR

  • Ventoy—ISO/WIM/IMG/VHD(x)/EFI 파일 용 부팅 가능한 USB 드라이브를 만드는 오픈 소스 도구입니다. 당신은 또 다시 디스크를 포맷 할 필요가 없습니다,당신은 단지 USB 드라이브에 파일을 복사하고 직접 부팅해야합니다.

https://www.ventoy.net//ventoy-binAUR

참조

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 항목은 *(으)로 표시합니다