SUSE Linux 12SP5 安装和配置PXE服务器

zypper in tftp xinetd dhcp nfs-kernel-server


vi /etc/dhcpd.conf

option domain-name "gbca.cn";
option domain-name-servers 202.96.64.68, 114.114.114.114;
option routers 192.168.11.99;
ddns-update-style none;
default-lease-time 14400;

option arch code 93 = unsigned integer 16; # RFC4578
subnet 192.168.11.0 netmask 255.255.255.0 {
 next-server 192.168.11.131;
 range 192.168.11.200 192.168.11.220;
  default-lease-time 14400;
  max-lease-time 172800;

 if option arch = 00:07 or option arch = 00:09 {
   filename "/EFI/x86/grub.efi";
 }
 else if option arch = 00:0b {
   filename "/EFI/aarch64/bootaa64.efi";
 }
 else  {
   filename "/BIOS/x86/pxelinux.0";
 }

}

执行 systemctl restart dhcpd 重启动 DHCP 服务器。注意括号。

vi /etc/xinetd.d/tftp 文件内容如果没有就增加,如已经存在了 不用更改退出就可以。
service tftp
{
        socket_type     = dgram
        protocol        = udp
        wait            = yes
        flags           = IPv6 IPv4
        user            = root
        server          = /usr/sbin/in.tftpd
        server_args     = -u tftp -s /srv/tftpboot
#       per_source              = 11
#       cps                     = 100 2
        disable         = no
}


准备结构
在 /srv/tftpboot 中创建一个结构以支持各种选项。

mkdir -p /srv/tftpboot/BIOS/x86
mkdir -p /srv/tftpboot/EFI/x86/boot
mkdir -p /srv/tftpboot/EFI/aarch64/boot  //ARM架构
mkdir -p /srv/install/x86/sles12/sp5/cd1

mount /dev/cdrom /srv/install/x86/sles12/sp5/cd1 这种方式不行,引导后停住了,继续讯问文件位置

用于 x86 的 BIOS 文件
将 pxelinux.0 复制到 TFTP 文件夹并为配置文件准备一个子文件夹。

cp /usr/share/syslinux/pxelinux.0 /srv/tftpboot/BIOS/x86/
mkdir /srv/tftpboot/BIOS/x86/pxelinux.cfg

vi /srv/tftpboot/BIOS/x86/pxelinux.cfg/default
default install

# hard disk
label harddisk
 localboot -2
# install
label install
 kernel linux
 append initrd=initrd install=nfs://192.168.11.131:/srv/install/x86/sles12/sp5/cd1/SLE-12-SP5-Server-DVD-x86_64-GM-DVD1.iso

display message
implicit 0
prompt 1
timeout 5

将 x86 BIOS 和 UEFI 引导所需的 kernelinitrd 和 message 文件复制到相应的位置。

root # cd /srv/install/x86/OS_version/SP_version/cd1/boot/x86_64/loader/

root # cp -a linux initrd message /srv/tftpboot/BIOS/x86/

执行 systemctl restart nfsserver 重启动 nfs 服务器

配置以上就可以使用了。

标签
菜单分类