如何将 LiveCD 转换为 vmlinuz 并将 initrd 转换为 PXE 引导加载缓慢

如何将 LiveCD 转换为 vmlinuz 并将 initrd 转换为 PXE 引导加载缓慢

我需要为 LIVECD(不是 ubuntu netboot 小 cd,而是用于从命令行启动的桌面 livecd)制作紧急 PXE 引导程序。这可行吗:

# Create a cpio archive of just the ISO and append it to the initrd image. 
( echo "ubuntu-13.10-desktop-amd64.iso" | cpio -H newc --quiet -o ) |  gzip -9 |   cat ubuntu-13.10-desktop-amd64.iso_EXTRACTED/casper/initrd0.img - > tftpboot/initrd0.img

# Kernel image.
cp ubuntu-13.10-desktop-amd64.iso_EXTRACTED/isolinux/vmlinuz0 tftpboot/vmlinuz0

# pxelinux bootloader part:
LABEL pxeboot
    KERNEL vmlinuz0
    APPEND initrd=initrd0.img root=/ubuntu-13.10-desktop-amd64.iso             rootfstype=iso9660 rootflags=loop
ONERROR LOCALBOOT 0

我究竟做错了什么?

答案1

该配置通过 TFTP 等慢速协议加载整个图像。

  • 尝试使用 NFS 协议的其他选项。

    apt-get install nfs-kernel-server
    
    mkdir /mnt/ubuntu
    mount -o loop ubuntu-13.10-desktop-amd64.iso /mnt/ubuntu-desktop-cd
    
  • 通过 NFS 共享

    sudo nano /etc/exports
    

    添加此行

    /mnt/ubuntu-desktop-cd 192.168.0.0/24(ro,insecure,no_root_squash,async,no_subtree_check)
    
  • 启动 NFS 服务

    service nfs-kernel-server restart
    
  • 在行中APPEND,将rootrootfstype和替换rootfstype为:

    netboot=nfs nfsroot=192.168.0.10:/mnt/ubuntu-desktop-cd
    

笔记:我只是使用这些 IP 作为示例。

192.168.0.10 是 NFS 服务器的 IP

192.168.0.0/24 是本地网络范围。

https://help.ubuntu.com/community/Installation/LocalNet#A_variation:_Booting_the_.22Live_CD.22_image

相关内容