mini.iso
iPXE 및 NFS를 통해 Ubuntu의 네트워크 부팅을 설정하려고 합니다 . 저는 현재 스크립트 대신 iPXE 명령줄을 통해 모든 것을 단계별로 진행하고 있습니다. NFS가 활성화된 iPXE를 구축했는지 확인했는데, initrd.gz
제대로 작동할 수 있기 때문에 제대로 작동하는 것 같습니다. 하지만 iPXE에 커널이 무엇인지 알려주는 방법을 알 수 없습니다. 파일이 커널일 것이라고 가정했지만 linux
iPXE에 해당 파일을 사용하라고 지시하면 Exec format error (http://ipxe.org/2e008081)
.
더 자세히 설명하면 시스템 설정 방법은 다음과 같습니다.
- mini.iso는 QNAP TurboNAS에 공유 폴더로 탑재되어 NFS를 통해 게스트 액세스가 활성화됩니다.
- 새로운 서버 PXE 부팅, TFTP를 통해 iPXE 체인 로드
<Ctrl-B>
iPXE 명령줄에 들어갔습니다 .initrd nfs://guest@<nfs ip address>/Ubuntu1604Mini/initrd.gz
잘 작동해요kernel nfs://guest@<nfs ip address>/Ubuntu1604Mini/linux
위의 오류로 인해 놀랐습니다.
이 질문을 검색하는 데 어려움을 겪고 있습니다. 다른 모든 항목은 넷 부팅이 아닌 이미지를 가정하는 것 같아서 모든 지침은 디렉토리가 있다고 가정 casper
하지만 casper/vmlinuz
mini.iso의 구조는 매우 다른 것 같기 때문입니다.
이에 대한 도움을 주시면 대단히 감사하겠습니다! 감사해요!
편집하다
관련된 경우 모든 NFS 게스트 액세스는 읽기 전용입니다.
편집 2:
이것은 실제로 UEFI 문제인 것 같습니다. UEFI 환경으로 부팅하기 위해 mini.iso가 설정되지 않은 문서를 발견했습니다. 그래서 저는 이것을 Ubuntu 16.04 Server .ISO를 통해 작동시키려고 전환했지만 여전히 문제가 있습니다. 일부 간단한 웹 검색에서 Ubuntu 16.04의 vmlinuz가 EFI 스텁으로 컴파일되지 않은 것으로 보입니다. EFI/BOOT/BOOTx64.EFI 파일을 찾았지만 iPXE를 사용하여 이 파일을 체인로드하면 TFTP를 통해 Netbook 이미지를 찾으려고 시도하기 시작하므로 이것이 무엇을 하고 있는지, 어떤 인수를 전달할 수 있는지 100% 확신할 수 없습니다.
답변1
nfs의 데비안 라이브 부팅에서도 동일한 문제가 발생했습니다. ipxe 문서는 BIOS를 사용한 부팅 사례를 언급하지만 efi가 아닌 부팅 사례를 언급합니다. 앞서 언급한 솔루션은 efi와 관련이 있습니다.
imgargs 라인에 initrd=initrd_file_name 매개변수를 추가합니다.
이 정보의 출처는 다음과 같습니다.http://forum.ipxe.org/showthread.php?tid=7522
공식 문서에서는 찾을 수 없지만 efi에서는 작동합니다.