设为首页 收藏本站
查看: 1793|回复: 0

[经验分享] pxe实现自动化安装centos系统

[复制链接]

尚未签到

发表于 2019-2-16 11:27:06 | 显示全部楼层 |阅读模式
  实验:pxe实现自动化安装centos7系统

将配置搭建为如下框架:
.
├── initrd.img
├── menu.c32
├── pxelinux.0
├── pxelinux.cfg
│?? └── default
└── vmlinuz
(1)A机器配置
yum info tftp-server httpd  dhcp syslinux       syslinux提供pxelinux.0引导文件
#chkconfig tftp on  开启有xinetd守护的tftp服务  centos6上
#vim  /etc/xinetd.d/tftp    也可以直接改文件
/var/lib/tftpboot   此为tftp服务的共享目录,裸机网卡内置的tftp客户端可以从此获取文件
可以安装tftp客户端进行获取文件测试,tftp 172.18.62.60命令连接服务端,get获取共享目
录的文件;
cd /var/lib/tftpboot
cp /mnt/centos7/isolinux/{initrd.img,vmlinuz} . 复制内核和根文件系统到此目录下
updatedb        更新数据库
locate pxelinux.0   用locate命令查询引导文件
cp   /usr/share/syslinux/pxelinux.0 .   复制syslinux包生成的引导文件pxelinux.0到当前目
录;
cp  /usr/share/syslinux/menu.c32 .      复制syslinux包的menu.c32文件到当前目录作为启
动菜单的背景;
mkdir pxelinux.cfg
cp /mnt/centos7/isolinux/isolinux.cfg pxelinux.cfg/default  复制菜单文件到当前创建的目
录,并改名;
vim   pxelinux.cfg/default  
default menu.c32
timeout 600
menu title PXE INSTALL CentOS
label desktop
menu label ^Install Desktop CentOS 7
kernel vmlinuz
append initrd=initrd.img ks=http://172.18.62.60/ks/ks7-pxe-desktop.cfg
label mimi
menu label install ^Mini CentOS 7
kernel 7/vmlinuz
append initrd=7/initrd.img ks=http://172.18.62.60/ks/ks7-pxe-mini.cfg
label local
menu default
menu label Boot from ^local drive
localboot 0xffff
menu end
systemctl start tftp    开启服务
cd /var/www/html/
mkdir centos/7/ -pv
mkdir ks/
cd ks
放入用工具或自己模板修改做好的ks文件如下:
├── ks7-pxe-desktop.cfg
└── ks7-pxe-mini.cfg
chmod 644 *
mount /dev/sr0 centos/7/    挂载系统到此目录下,ks文件写入此系统安装路径
systemctl start httpd
vim /etc/dhcp/dhcpd.conf
option domain-name "yongstar.tech"; 全局配置
option domain-name-servers 114.114.114.114,8.8.8.8;
default-lease-time 86400;
max-lease-time 864000;
subnet 172.18.0.0 netmask 255.255.0.0 {
range 172.18.62.70 172.18.62.200;
option routers 172.18.0.1;
filename "pxelinux.0";  pxe配置的启动文件名
next-server 172.18.62.60;   tftp的地址
}
systemctl start dhcpd
确保67、69、80端口的打开
(2)要安装系统的机器配置
虚拟机全局配置不能使用本地dhcp获取地址,而要使用搭建的dhcp服务
网络模式要设置为仅主机模式
centos7桌面版安装时内存需要大于1024M
(3)实验升级,实现在centos7上搭建可以同时安装centos6和centos7的系统的架构
cd  /var/www/html/ks
rz  将做好的ks文件导入实现如下:
.
├── ks6-pxe-desktop.cfg
├── ks6-pxe-mini.cfg
├── ks7-pxe-desktop.cfg
└── ks7-pxe-mini.cfg
chmod 644 *
cd ..
mkdir centos/6
mount /dev/sr1 centos/6/    做好centos6的系统仓库
cd /var/lib/tftpboot/
mkdir {6,7}
vim pxelinux.cfg/default
default menu.c32
timeout 600
menu title PXE INSTALL CentOS
label desktop
menu label ^Install Desktop CentOS 7
kernel 7/vmlinuz
append initrd=7/initrd.img ks=http://172.18.62.60/ks/ks7-pxe-desktop.cfg
label desktop
menu label ^Install Desktop CentOS 6
kernel 6/vmlinuz
append initrd=6/initrd.img ks=http://172.18.62.60/ks/ks6-pxe-desktop.cfg
label mimi
menu label install ^Mini CentOS 7
kernel 7/vmlinuz
append initrd=7/initrd.img ks=http://172.18.62.60/ks/ks7-pxe-mini.cfg
label mimi
menu label install ^Mini CentOS 6
kernel 6/vmlinuz
append initrd=6/initrd.img ks=http://172.18.62.60/ks/ks6-pxe-mini.cfg   路径要对,否则
会出现很诡异错误,如内核指令集被禁用等;
label local
menu default
menu label Boot from ^local drive
localboot 0xffff
menu end
mv initrd.img  7/
mv vmlinuz    7/
cp /var/www/html/centos/6/isolinux/{initrd.img,vmlinuz} 6/
形成如下目录:
.
├── 6
│   ├── initrd.img
│   └── vmlinuz
├── 7
│   ├── initrd.img
│   └── vmlinuz
├── menu.c32
├── pxelinux.0
└── pxelinux.cfg
└── default
  实验:centos6实现pxe自动化安装系统

(1)A机器配置
yum install httpd tftp-server dhcp syslinux
chkconfig httpd on
chkconfig dhcpd on
chkconfig --list
chkconfig tftp on
cd /etc/dhcp/
cat dhcpd.conf  发现没有内容
cp /usr/share/doc/dhcp*/dhcpd.conf.sample dhcpd.conf    拷贝配置文件示例
vim dhcpd.conf
subnet 172.18.0.0 netmask 255.255.0.0 {
range 172.18.62.10 172.18.62.50;
filename "pxelinux.0";
next-server 172.18.62.50;
}
service dhcpd start
ss -nul
cd /var/www/html/
mkdir centos/6 -pv
mount /dev/sr0 centos/6/
mkdir ksdir
cd ksdir/
rz  导入应答文件
vim ks7-pxe-desktop.cfg     安装centos7系统,加入此3行可以保证全自动
eula --agreed
systemctl set-default multi-user.target
systemctl disable initial-setup-graphical.service
mv ks6-mini_\(2\).cfg ks6-pxe-mini.cfg
mv ks6-desktop.cfg ks6-pxe-desktop.cfg
chmod 644 *
cd /var/lib/tftpboot/
yum install mlocate
updatedb
locate pxelinux.0
cp /usr/share/syslinux/pxelinux.0 .
cp /mnt/centos6/isolinux/{initrd.img,vmlinuz} .
cp /mnt/centos6/isolinux/{boot.msg,vesamenu.c32} .  复制菜单布局文件
mkdir   pxelinux.cfg
cp /mnt/centos6/isolinux/isolinux.cfg pxelinux.cfg/default
vim pxelinux.cfg/default
default vesamenu.c32
#prompt 1
timeout 600
display boot.msg
menu background splash.jpg
menu title PXE INSTALL CentOS 6.9!
menu color border 0 #ffffffff #00000000
menu color sel 7 #ffffffff #ff000000
menu color title 0 #ffffffff #00000000
menu color tabmsg 0 #ffffffff #00000000
menu color unsel 0 #ffffffff #00000000
menu color hotsel 0 #ff000000 #ffffffff
menu color hotkey 7 #ffffffff #ff000000
menu color scrollbar 0 #ffffffff #00000000
label desktop
menu label ^Install an Desktop system
menu default
kernel vmlinuz
append initrd=initrd.img ks=http://172.18.62.50/ksdir/ks6-pxe-desktop.cfg
label mini
menu label Install ^Mini system
kernel vmlinuz
append initrd=initrd.img ks=http://172.18.62.50/ksdir/ks6-pxe-mini.cfg
label local
menu label Boot from ^local drive
localboot 0xffff
cp /mnt/centos6/isolinux/splash.jpg .
ss -nutl    确保67、69、80端口打开
(2)要安装系统的机器配置
虚拟机全局配置不能使用本地dhcp获取地址,而要使用搭建的dhcp服务
网络模式要设置为仅主机模式
centos6桌面版安装时内存不需要需要大于1024M
注意:磁盘选择的大小和ks内的设置分区关系密切



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-673096-1-1.html 上篇帖子: CentOS7搭建IF.svnadmin 下篇帖子: 在centos上cobbler实现pxe的自动化安装
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表