通过PXE远程引导系统

    技术2022-05-20  31

    服务器托管在外地,系统出了大问题无法正常启动,虽然有远程控制卡可以操作,可以看到屏幕,而且通过控制卡提供的程序可以加载iso,但是本地连过去的网络太慢,很多时间是干着急,这时就想到用PXE引导,尝试了一下还是很方便的。

     

    首先需要确认和准备几件事:

    网卡支持PXE,有些服务器只支持内置的网卡引导,这时候就得注意这个网卡在交换机上如何访问到。可以远程控制目标机器的启动过程,KVM,DRAC或Console线都可以同网段内有另外一台机器可以操作,最好是在自己的内网内操作,否则会不安全可引导用的vmlinuz和initrd,可以从一些安装盘或live cd上找到提供服务器的机器需要安装好 syslinux, dhcp服务器和tftp服务器

    修改tftp服务器的配置,它通过xinetd启动,编译 /etc/xinetd.d/tftp:

    service tftp { socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/in.tftpd server_args = -u nobody -s /tftpboot disable = no per_source = 11 cps = 100 2 flags = IPv4 }

    启动tftp服务器:

    chkconfig tftp on

    编辑 /etc/dhcpd.conf:

    ignore client-updates; allow booting; allow bootp; subnet 192.168.1.0 netmask 255.255.255.0 { option routers 192.168.1.1; option subnet-mask 255.255.255.0; option time-offset -18000; range dynamic-bootp 192.168.1.10 192.168.1.100; default-lease-time 21600; max-lease-time 43200; next-server 192.168.1.1; filename "/pxelinux.0"; }  

    启动dhcpd:

    /etc/init.d/dhcpd start

    安装引导文件:

    cp /usr/lib/syslinux/pxelinux.0 /tftpboot/ cp /path/to/vmlinuz /tftpboot/ cp /path/to/initrd /tftpboot/ mkdir /tftpboot/pxelinux.cfg

    最后编辑 /tftpboot/pxelinux.cfg/default

    default linux label linux kernel vmlinuz append initrd=initrd  

     

    之后远程控制要引导的机器,控制它使用适当的网卡启动,通过DHCP获得IP引导就可以了。


    最新回复(0)