这些天我亲戚来我家,家里只有一个老旧的联想昭阳笔记本,装的Ubuntu系统,玩不了游戏.我告诉我亲戚只有windows系统才能玩游戏,然后让他自己重装系统(其实就没指望他能弄好),没想到他在格式化硬盘那一步把整个硬盘格式化了-.-
一般来说我们重装系统都是使用一个U盘,安装好系统安装程序,然后从U盘启动安装.那么问题来了,如何给一个没有系统的笔记本装系统,也没有U盘?我最后想到的是PXE
PXE简介
PXE的全称是预启动执行环境(preboot execute environment),也就是人们常说的网络装机.
PXE的优点:
- 规模化:同时装配多台主机
- 自动化:自动装系统,以及配置各种服务
- 远程实现:不需要光盘,U盘等物理安装介质
PXE的工作模式:
- PXE client集成在网卡的启动芯片中
- 当计算机引导时,从网卡芯片中把PXE client调入内容执行,获取PXE server配置,显示菜单,根据用户选择将远程引导程序下载到本机运行
PXE所需要的组件:
- DHCP服务:分配IP地址,定位引导程序
- TFTP服务:提供引导程序的下载
- HTTP(或FTP/NFS)服务:提供系统安装文件的下载
PXE的工作过程:
PXE Client从自己的PXE网卡启动,向本网络中的DHCP服务器索取IP
DHCP服务器返回分配给客户机的IP以及PXE文件的放置位置(该文件一般是放在一台TFTP服务器上)
PXE Client向本网络中的TFTP服务器索取pxelinux.0文件
PXE Client取得pxelinux.0文件后之执行该文件
根据pxelinux.0的执行结果,通过TFTP服务器加载内核和文件系统
进入安装画面,此时可以通过选择HTTP,FTP,NFS方式之一进行安装
cobbler简介
Cobbler是一个Linux服务器安装的服务,可以通过网络启动(PXE)的方式来快速安装,重装物理服务器和虚拟机,同时还可以管理DHCP,DNS等.Cobbler由python开发
cobbler官网:http://cobbler.github.io
cobbler集成的服务:
PXE服务支持
DHCP服务管理
DNS服务管理(可选bind,dnsmasq)
电源管理
Kickstart服务支持
YUM仓库管理
TFTP(PXE启动时需要)
Apache(提供kickstart的安装源,并提供定制化的kickstart配置)
可以看出,cobbler将各种服务集成在一起,而其自己本身是不做事的…它存在的意义就是让原本复杂的安装步骤变得简便
cobbler使用
具体步骤不想发了…官网和网上的博客上都有,这里说一下几个注意事项
PXE client和PXE server只需要在同一子网下就行了,原本我以为PXE server必须是网关…但这里有一个问题:如果PXE server不是网关,那么同一子网就有两个DHCP服务器了,要是PXE client从路由器那获得IP,那岂不获得不了tftp服务器位置了?
cobbler仅支持Linux服务器的安装!!!我…开始的时候装deepin失败了,后来装ubuntu桌面版又失败了,最后装ubuntu服务器版才成功,查了文档才发现只能装服务器的Linux版本???不过听说经过修改后,可以安装桌面版甚至是windows…
如果cobbler import xxx报这个错,就很可能是选择的镜像不对了….
No distros imported, bailing out
参考文档
David_Tang的博客(CentOS 6.4下PXE+Kickstart无人值守安装操作系统):http://www.cnblogs.com/mchina/p/centos-pxe-kickstart-auto-install-os.html
惨绿少年的博客(使用cobbler批量安装操作系统(基于Centos7.x )):https://blog.csdn.net/admin_root1/article/details/78911718
cobbler官网的文档:http://cobbler.github.io/manuals/quickstart/