MondoRescue supports image deployment using Pre eXecution Environment (PXE) Multiple parameters are available at restore time for PXE support: broadcast Network broadcast to setup on the device (e.g. 192.168.1.255) dhcp The LAN interface is automatically setup from DHCP (replaces ipaddr, netmask, broadcast, gateway) gateway The default gateway to setup (e.g. 192.168.1.254) hwaddr MAC address of the device to use to restore through (optional) ipaddr IP Address to setup on the device (e.g. 192.168.1.1) ipdev Device name (e.g. eth2) ipmode Force the mode to use (DHCP|STATIC) - Useful to force DHCP w/o PXE iproute Additional static route (uses "route add" syntax with : separator) (e.g. iproute="-net:192.168.8.0:netmask:255.255.255.0:dev:eth3) mountpoint Mount point on the Remote Network server to use (if NFS, should be in /etc/exports of the NFS server) netfsmount Server and mountpoint on which the ISO is available (optional) (if SSHFS the server part can be of the form user@server) netfsopt Contains options passed to the mount command (optional) netfspath Local path on the remote server where image is located (optional) netmask Netmask to setup on the device (e.g. 255.255.255.0) proto Protocol to use for mounting the remote share (default is NFS, sshfs and smbfs are also available) ramdisk_size Size of the RAM disk where the initrd is exploded server IP address of the Remote Network server To use it, on your deployment server, add the following line to your conf file: label mondo kernel vmlinuz-mondo append initrd=initrd-mondo load_ramdisk=1 prompt_ramdisk=0 ramdisk_size=131072 rw root=/dev/ram iso devfs=nomount exec-shield=0 selinux=0 [other relevant kernel boot option] pxe [proto=nfs|sshfs|smbfs] [prefix=machine] [ipconf=(ipdev:ipadr:netmask:broadcast:gateway|ipdev:dhcp)] [hwaddr=M:A:C:A:D:R] [netfsmount=server:mountpoint] [netfsopt=-o option][netfspath=local_path] [ping=#] [iproute=-net:netdest:[netmask:Nm]gw:GW] ... The [] mean this parameter is optional The () mean that you have a choice with the '|' meaning 'or' The initrd and kernel file come from the first bootable media created by mondoarchive. To get them, please issue: # mount /path/to/mondorescue-1.iso /mnt/cdrom -o loop # cp -a /mnt/cdrom/vmlinuz /var/tftpboot/vmlinuz-mondo # cp -a /mnt/cdrom/initrd.img /var/tftpboot/initrd-mondo # umount /mnt/cdrom Thus the PXE ROM will boot mondo's kernel and mondo's initrd in memory and will append all the right configuration options (as you find in isolinux.cfg on the first bootable media) to which you need to add the keyword pxe. (You need to have backup your data using the NFS option of mondoarchive) If you used the -p option of mondoarchive, you may specify the real name of mondo images to use during restore. To do that use prefix=machine on the initrd line, after the pxe keyword, to load the ISO images saved with -p machine. Without prefix keyword, the name of the images used during archiving with the -p option will be used (they may differ). If -p wasn't used then the name mondorescue-1.iso, ... will be used. During boot mondorestore will start your NFS configuration and mount mondo's content from the network rather than from a physical media. You may alter the IP configuration stored from the original machine by passing the ipconf option describing respectively the IP address, netmask, broadcast and default gateway you want to setup for the machine, separated by ':'. Or alternatively, you may specify the dhcp keyword so that a DHCP request is made to get those information. In the 2 cases, you have to mention on which physical interface those parameters should apply. On some configurations, you may also want to increase the number of ping queries made before the NFS mount, which is of 3 by default, using the ping option and give the number you want. If you have a different NFS server for the deployment than for the archiving, you can also precise it through the netfsmount option. The structure on both server under the mountpoint has to be the same. CAVEAT: the limit to the number of char on the append line is 255. Use symlinks to reduce the size of your path if needed. NOTE: If you don't have selinux=0 on the boot line, you may have issues restoring extended attributes on your filesystem and thus be unable to log on at next reboot after restore. Linux deployments with PXE is documented at http://syslinux.zytor.com/pxe.php Please report any problem around that tool to bruno_at_mondorescue.org $Id: README.pxe 3606 2016-09-20 21:47:51Z bruno $ 2015-08-29 adds support for ipmode 2013-07-25 adds support for iproute 2011-10-09 adds support for hwaddr 2009-12-05 nfsopt added tp allow for custom options at mount time 2009-09-09 Changed to netfs for multi protocol support (nfs, sshfs, ...) 2009-05-07 nfspath added to allow redeployment from another NFS directory 2006-06-10 nfsmount added to allow redeployment from another NFS server 2006-06-02 ipdev added to allow redeployment on another interface 2005-12-18 new ipconf and ping option 2005-12-14 detailed explanations on where to find initrd and kernel