mirror of
https://github.com/ibm-s390-linux/s390-tools.git
synced 2026-08-05 02:14:52 +00:00
netboot: Scripts for building a PXE-style netboot image for KVM
A set of scripts and a short documentation describing how to build a network boot image simulating a PXELINUX-style boot process. Starting with QEMU 2.10 it is possible to boot a KVM guest over a network interface using DHCP/BOOTP. The boot process is triggered by the network boot firmware that is part of QEMU and follows the usual network boot pattern: a DHCP request is issued by the client and answered by a DHCP/BOOTP server. The DHCP reply will contain a TFPT server identification and a bootfile name. The client will retrieve the bootfile from the TFTP server, load it into memory and IPL it. A very common way of setting up a boot server has been defined by PXELINUX, an open source implementation of PXE. With PXELINUX the bootfile is a small network boot loader that will retrieve a potentially client-specific configuration file containing further instructions for the final boot process (kernel, ramdisk,...). The set of sample scripts contained in the netboot directory provide directions for a Linux distributor or a boot server administrator on how to build a network boot image usable for a simplified PXELINUX-style network boot setup for s390. Note that the sample scripts are implementing only a subset of PXELINUX functionality, specifically the config file parsing. In order to get full functionality, a more specialized boot loader program like petitboot or pxe-kexec must be used in the ramdisk. Further, a sample Dockerfile is provided along with instructions on how to build the network boot image in a Docker container. Signed-off-by: Viktor Mihajlovski <mihajlov@linux.vnet.ibm.com> Signed-off-by: Michael Holzheu <holzheu@linux.vnet.ibm.com>
This commit is contained in:
committed by
Michael Holzheu
parent
d029030308
commit
f3f16a7ca4
@@ -0,0 +1,21 @@
|
||||
#
|
||||
# Sample Dockerfile to build PXE-style boot image for KVM on s390
|
||||
#
|
||||
|
||||
FROM s390x/ubuntu:16.04
|
||||
|
||||
RUN apt-get update && apt-get install -y \
|
||||
linux-image-4.4.0-78-generic \
|
||||
make \
|
||||
wget \
|
||||
bzip2 \
|
||||
linux-headers-4.4.0-78-generic \
|
||||
gcc \
|
||||
kexec-tools \
|
||||
file
|
||||
|
||||
RUN mkdir /netboot
|
||||
|
||||
COPY . /netboot
|
||||
|
||||
RUN cd /netboot && make -f Makefile.pxelinux.0 KERNEL_VERSION=4.4.0-78-generic
|
||||
Reference in New Issue
Block a user