h0945466 发表于 2018-11-22 11:03:57

手把手CentOS6 + DNSMasq + apache + kickstart 网络安装 CentOS7

  下载了CentOS 7 的ISO镜像 ,笔记本的光驱坏掉了,U盘也不好用,还是用网络安装比较方便。

  之前都是用dhcpd来配DNS,xinetd来启tftp服务,不过太麻烦了,这次直接用dnsmasq取代了上面的两个软件。
  说一下环境,apache和dnsmasq都是用系统自带的,安装服务器的IP地址是192.168.0.254
  下面说一下步骤:

[*]  挂载ISO镜像
  mkdir /var/www/html/centos7
  mount -o loop CentOS-7.0-1406-x86_64-DVD.iso   /var/www/html/centos7

[*]  通过rpm包获取pxelinux.0文件
  cd /var/www/html/centos7/Packages/
  rpm -ivh syslinux-4.05-8.el7.x86_64.rpm
  经试验,CentOS6是可以安装CentOS7上的syslinux包的
  这个时候,pxelinux.0这个文件就会安装在/usr/share/syslinux目录下,待会儿用的到
[*]  拷贝tftp所需的其他文件
  mkdir -p /tftpboot/pxelinux.cfg/
  cp -r /var/www/html/centos7/isolinux/*   /tftpboot/
  cp /usr/share/syslinux/pxelinux.0 /tftpboot/
  cp /tftpboot/isolinux.cfg/tftpboot/pxelinux.cfg/default
[*]  修改安装界面配置文件
  vim/tftpboot/pxelinux.cfg/default
  找到如下行:
  

  label linux
  menu label ^Install CentOS 7
  kernel vmlinuz
  append initrd=initrd.img inst.stage2=hd:LABEL=CentOS\x207\x20x86_64 quiet
  将inst.stage2=hd:LABEL=CentOS\x207\x20x86_64修改为
  inst.stage2=http://192.168.0.254/centos7 inst.repo=http://192.168.0.254/centos7
  意思是指定安装第二步所需要的文件和安装源在http服务器上取。
  如果想用kickstart进行安装,还可以再加点内容inst.ks=http://192.168.0.254/ks/xiaosu.cfg
[*]这部分的内容是,指定ks文件的网络路径,当然,你需要提前生成ks文件,并放到/var/www/html/ks目录下,并改名为xiaosu.cfg。 关于kickstart文件,可以通过工具生成,不过手动安装CentOS7完成之后,会自动在/root/目录下自动生成文件initial-setup-ks.cfg,你可以先通过网络手动装一个,也就是不用inst.ks参数,只用inst.stage2=http://192.168.0.254/centos7 inst.repo=
http://192.168.0.254/centos7参数,安装完成之后,根据自己的需求修改一下/root/initial-setup-ks.cfg就行了。 修改dnsmasq的配置文件修改dnsmasq只要四行就行,比之前的dhcpd简单的多。dhcp-range=192.168.0.50,192.168.0.150,12hdhcp-boot=pxelinux.0enable-tftptftp-root=/tftpboot启动服务service dnsmasq restartservice httpd start  这个时候,把另外开机,BIOS里面选PXE启动,就能看到安装界面了,不过注意的是,不要选择Test this media & install CentOS 7 ,而是选择Install CentOS 7这个选项。
  然后就可以安装了!



页: [1]
查看完整版本: 手把手CentOS6 + DNSMasq + apache + kickstart 网络安装 CentOS7