Auparavant, j'ai configuré le démarrage PXE des LiveCD d'Ubuntu en extrayant l'ISO vers un montage NFS et en copiant vmlinuz.efi et initrd.gz de casper dans le répertoire tftpboot avec un peu de magie de script iPXE.
Cela a fonctionné parfaitement pour 16.04, 16.10 et 17.10 (Artful).
Avec 18.04, je trouve d'abord que vmlinuz.efi n'existe plus dans casper, mais vmlinuz existe. Donc, j'essaye encore avec un changement de nom ...
Et maintenant, il ne termine toujours pas le démarrage. J'obtiens le "mode d'urgence". La saisie de 'journalctl -xb' (comme suggéré par l'invite du mode d'urgence) et la navigation conduisent à ce qui suit:
Unit sys-fs-fuse-connections has begun starting up.
ubuntu systemd[1]: Failed to set up mount unit: Device or resource busy
ubuntu systemd[1]: Failed to set up mount unit: Device or resource busy
sys-kernel-config.mount: Mount process finished, but there is no mount.
sys-kernel-config.mount: Failed with result 'protocol'.
Failed to mount Kernel Configuration File System.
Aidez-moi!
Ajouté le 30-04-2018:
Code de script utilisé pour extraire l'ISO pour le montage PXE (TARGET défini sur le nom de l'image, par exemple bionique):
set -e
# Look for bionic.iso as the ISO I am going to extract.
TARGET=invalid.iso
[ -f bionic.iso ] && TARGET=bionic
echo TARGET=$TARGET
# Mount the ISO to the /tmp directory
sudo rm -rf /var/nfs/$TARGET/*
sudo rm -rf /tmp/$TARGET
mkdir /tmp/$TARGET
sudo mount -o loop ~/$TARGET.iso /tmp/$TARGET
# Clear up the NFS directory where things will be copied (and copy them)
sudo rm -rf /var/nfs/$TARGET
sudo mkdir /var/nfs/$TARGET
sudo rsync -avH /tmp/$TARGET/ /var/nfs/$TARGET
# I've not had luck with iPXE changing filesystems to find
# vmlinuz, vmlinuz.efi, or initrd.gz... so I copy those files
# specifically to the tftp directory structure so the boot loader
# can load them.
sudo rm -rf /var/lib/tftpboot/$TARGET
sudo mkdir /var/lib/tftpboot/$TARGET
sudo cp /tmp/$TARGET/casper/vmlinuz* /var/lib/tftpboot/$TARGET/.
sudo cp /tmp/$TARGET/casper/initrd.lz /var/lib/tftpboot/$TARGET/.
# Cleanup: unmount the ISO and remove the temp directory
sudo umount /tmp/$TARGET/
sudo rm -rf /tmp/$TARGET/
echo Done.