큰 펜 드라이브로 사용하는 외장 인클로저에 랩톱 하드 드라이브가 있습니다. 트위스트를 추가하기 위해 Linux를 설치 했으므로 선택한 배포 방식으로 컴퓨터를 부팅 할 수 있습니다 (예 : 데이터 복구 또는 b0rked 시스템 복구 또는 사전 설치된 Windows를 파괴하지 않고 빌린 랩톱 사용). 문제는 하드웨어 구성에 따라 USB 하드 드라이브가 다른 경로에서 보일 수 있다는 것입니다. grub 구성의 (hda0,0)
경우 grub을 시작한 장치와 관련하여 사용합니다. 에 UUID 항목이 /etc/fstab
있습니다. 또한 rootwait
커널 매개 변수를 지정 하여 장치를 마운트하기 전에 USB 서브 시스템이 정지 될 때까지 기다립니다.
커널로 무엇을 전달해야 root=
합니까? 현재 pendrive에서 한 번 부팅하고 디버그 메시지를 확인 /dev/sdX
하여 커널이 USB 드라이브에 할당 한 장치 를 확인한 다음 재부팅하고 grub 구성을 편집하십시오. Boot from USB hard drive
BIOS에서 활성화 하고 내부 하드 드라이브보다 우선 순위를 높게 설정하는 것 외에는 PC에서 아무것도 변경할 수 없습니다 .
루트 장치 경로에 UUID에 대한 지원을 포함하는 다양한 initrd 생성 스크립트가 있습니다. 불행히도 Gentoo 네이티브 스크립트 (genkernel)는 지원하지 않으며 rootwait
다른 것을 사용하려고 시도 하지 않았습니다 .
부팅 프로세스는 다음과 같습니다 ( Windows에서는 매우 유사 함 ).
- BIOS는 부팅 장치를 선택하고 MBR (grub stage-1)을로드합니다.
- Grub 은 BIOS에서로드 한 장치를
root
사용하여 설정 한 장치에서 구성 및 2 단계 파일을(hd0)
로드합니다. - Grub은 커널을로드하고 시작합니다 (여전히 같은 번호를 사용하므로
(hd0,0)
다시 사용할 수 있습니다 ). - 커널은 모든 내장 장치를 초기화합니다 (
rootwait
지금은 마술입니다). - 커널은 전달 된 파티션을 마운트합니다
root
(grub 매개 변수가 아닌 커널 매개 변수 임). init.d
에서 마운트하는 것을 포함하여 userland 부팅 프로세스를 시작합니다/etc/fstab
.
Part 5는 문제를 일으키는 부분입니다.