添加 Ubuntu/Debian 到 RHEL/CentOS 7的 PXE 网络启动环境
本教程将指引你添加Ubuntu 14.10 Server, Ubuntu 14.04 Server和Debian 7 Wheezy发行版到RHEL/CentOS 7的PXE网络启动环境中。
添加Ubuntu和Debian到PXE网络
虽然对于本教程,我只会演示怎样来添加64位网络安装镜像,但对于Ubuntu或者Debian的32位系统,或者其它架构的镜像,操作步骤也基本相同。同时,就我而言,我会解释添加Ubuntu 32位源的方法,但不会演示配置。
从PXE服务器安装 Ubuntu或者Debian要求你的客户机必须激活网络连接,最好是使用DHCP通过NAT来进行动态分配地址。以便安装器拉取所需的包并完成安装过程。
前置阅读
- 在RHEL/CentOS 7中为多种Linux发行版安装PXE网络启动服务器 http://www.linuxidc.com/Linux/2015-02/113587.htm
- 利用Kickstart实现无人值守安装RHEL6.0系统 http://www.linuxidc.com/Linux/2013-09/89765.htm
- SUSE Linux 11 pxe+DHCP+tftp+ftp 无人值守安装 http://www.linuxidc.com/Linux/2013-06/85481.htm
- 自建DHCP TFTP服务 用PXE启动实现无人值守安装CentOS6 http://www.linuxidc.com/Linux/2014-07/104881.htm
- 使用PXE+DHCP+Apache+Kickstart无人值守安装CentOS5.8 x86_64 http://www.linuxidc.com/Linux/2012-12/76913.htm
- Kickstart 全自动化安装 CentOS 6.3 http://www.linuxidc.com/Linux/2012-12/75570.htm
- Kickstart 自动化安装Linux笔记 http://www.linuxidc.com/Linux/2012-11/73853.htm
- PXE/Kickstart实现远程自动安装RedHat Linux http://www.linuxidc.com/Linux/2012-11/73361.htm
步骤 1: 添加Ubuntu 14.10和Ubuntu 14.04服务器到PXE菜单
1. 要将Ubuntu 14.10和Ubuntu 14.04添加网络安装源到PXE菜单可以通过两种方式实现:其一是通过下载Ubuntu CD ISO镜像并挂载到PXE服务器机器上,以便可以读取Ubuntu网络启动文件,其二是通过直接下载Ubuntu网络启动归档包并将其解压缩到系统中。下面,我将进一步讨论这两种方法:
使用Ubuntu 14.10和Ubuntu 14.04 CD ISO镜像
为了能使用此方法,你的PXE服务器需要有一台可工作的CD/DVD驱动器(LCTT 译注:也可以不用,参考下面内容)。在一台专用的计算机上,转到Ubuntu 14.10下载和Ubuntu 14.04 下载页,获取64位服务器安装镜像,将它烧录到CD,并将CD镜像放到PXE服务器DVD/CD驱动器,然后使用以下命令挂载到系统。
- # mount /dev/cdrom /mnt
如果你的PXE服务器没有CD/DVD驱动器,你可以使用wget命令下载Ubuntu 14.10 和Ubuntu 14.04的ISO镜像到本地,然后通过下面的命令(下载并挂载CD)挂载到服务器上上述相同位置。
在Ubuntu 14.10上
- ------------------32位------------------
- # wget http://releases.ubuntu.com/14.10/ubuntu-14.10-server-i386.iso
- # mount -o loop /path/to/ubuntu-14.10-server-i386.iso /mnt
- ------------------64位------------------
- # wget http://releases.ubuntu.com/14.10/ubuntu-14.10-server-amd64.iso
- # mount -o loop /path/to/ubuntu-14.10-server-amd64.iso /mnt
在Ubuntu 14.04上
- ------------------32位------------------
- # wget http://releases.ubuntu.com/14.04/ubuntu-14.04.1-server-i386.iso
- # mount -o loop /path/to/ubuntu-14.04.1-server-i386.iso /mnt
- ------------------64位------------------
- # wget http://releases.ubuntu.com/14.04/ubuntu-14.04.1-server-amd64.iso
- # mount -o loop /path/to/ubuntu-14.04.1-server-amd64.iso /mnt
使用Ubuntu 14.10和Ubuntu 14.04网络启动镜像
对于该方法,使用以下命令下载Ubuntu网络启动镜像到PXE服务器。
在Ubuntu 14.04上
- ------------------32位------------------
- # cd
- # wget http://archive.ubuntu.com/ubuntu/dists/utopic/main/installer-i386/current/images/netboot/netboot.tar.gz
- ------------------64位------------------
- # cd
- # http://archive.ubuntu.com/ubuntu/dists/utopic/main/installer-amd64/current/images/netboot/netboot.tar.gz
在Ubuntu 14.04上
- ------------------32位------------------
- # cd
- # wget http://archive.ubuntu.com/ubuntu/dists/trusty-updates/main/installer-i386/current/images/netboot/netboot.tar.gz
- ------------------64位------------------
- # cd
- # wget http://archive.ubuntu.com/ubuntu/dists/trusty-updates/main/installer-amd64/current/images/netboot/netboot.tar.gz
对于其它处理器架构,请访问下面的Ubuntu 14.10和Ubuntu 14.04网络启动官方页面,选择你的架构类型并下载所需文件。
2. 在下载完ISO镜像或网络启动安装器归档包后,通过执行以下命令拷贝整个ubuntu-installer文件夹到PXE tftp服务器位置。
A). 对于两种CD ISO镜像(32位或64位),在挂载特定架构的CD到PXE服务器/mnt系统路径后,请使用以下命令。
- # cp -fr /mnt/install/netboot/ubuntu-installer/ /var/lib/tftpboot/
B). 对于网络启动归档,根据特定的Ubuntu架构,请运行以下命令。
- # cd
- # tar xfz netboot.tar.gz
- # cp -rf ubuntu-installer/ /var/lib/tftpboot/
如果你想要在PXE服务器上同时使用两种Ubuntu服务器架构,先请下载,然后根据不同的情况挂载或解压缩32位架构,然后拷贝ubuntu-installer目录到/var/lib/tftpboot,然后卸载CD或删除网络启动归档以及解压缩的文件和文件夹。对于64位架构,请重复上述步骤,以便让最终的tftp路径形成以下结构。
- /var/lib/tftpboot/ubuntu-installer/amd64
- /var/lib/tftpboot/ubuntu-installer/i386
3. 在接下来的步骤,通过执行以下命令添加Ubuntu 14.10和Ubuntu 14.04菜单标签到PXE服务器默认配置文件中。
重要:我不可能同时演示两个Ubuntu版本的操作,出于演示的目的,我添加了Ubuntu 14.04菜单标签到PXE服务器,下述同样的操作也可应用到Ubuntu 14.10,只需对版本号稍作修改,仅仅只要根据你的Ubuntu版本修改版本号和到OS架构的路径。
在你最喜爱的文本编辑器的帮助下,打开PXE默认配置文件,而我偏好nano编辑器。
- # nano /var/lib/tftpboot/pxelinux.cfg/default
接下来,添加以下配置到PXE菜单。
对于Ubuntu 14.04 32位
- label 1
- menu label ^1)InstallUbuntu14.04 x32
- kernel ubuntu-installer/i386/linux
- append vga=788 initrd=ubuntu-installer/i386/initrd.gz -- quiet
- label 2
- menu label ^2)Ubuntu14.04RescueMode x32
- kernel ubuntu-installer/i386/linux
- append vga=788 initrd=ubuntu-installer/i386/initrd.gz rescue/enable=true-- quiet
对于Ubuntu 14.04 64位
- label 5
- menu label ^5)InstallUbuntu14.04 x64
- kernel ubuntu-installer/amd64/linux
- append vga=788 initrd=ubuntu-installer/amd64/initrd.gz -- quiet
- label 5
- menu label ^6)Ubuntu14.04RescueMode
- kernel ubuntu-installer/amd64/linux
- append vga=788 initrd=ubuntu-installer/amd64/initrd.gz rescue/enable=true-- quiet
添加Ubuntu到PXE启动
注:如果你想要包含其它Ubuntu架构,请遵循以上相同的操作,并相应替换PXE默认菜单配置文件中的标签号和ubuntu-installer/$architecture_name/目录。
4. 在配置完PXE菜单配置文件后,根据采用的方法清除源文件,并继续进行客户端PXE安装以测试配置是否正确。
- ----------------------对于CD/DVD方法----------------------
- # umount /mnt
- ----------------------对于网络启动方法----------------------
- # cd && rm -rf ubuntu-installer/netboot.tar.gz pxelinux.* version.info
下面是Ubuntu 14.04PXE客户端安装测试的截图。
从PXE菜单选择Ubuntu
选择Ubuntu安装语言
选择Ubuntu救援模式
Ubuntu救援模式Shell