DHCP+TFTP+PXE自动网络引导安装Linux操作系统

发表于:2013-3-14 09:42

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:v伱嗼屬    来源:51Testing软件测试网采编

  原理:

  1)客户端PXE网卡启动

  2)从DHCP服务器获得IP

  3)从TFTP服务器上下载pxelinux.0、default

  4)根据配置文件default指定的vmlinuz、initrd.img启动系统内核,并下载指定的ks.cfg文件

  5)跟据ks.cfg去(HTTP/FTP/NFS)服务器下载RPM包并安装系统

  6)完成安装

  ● DHCP:

  1. [root@rhel6 ~]# cat /etc/dhcp/dhcpd.conf     
  2. ddns-update-style none;  
  3. option routers 192.168.1.119;  
  4. option subnet-mask 255.255.255.0;  
  5. option domain-name "xfcy.org";   
  6. option domain-name-servers 192.168.1.119;  
  7. default-lease-time 21600;  
  8. max-lease-time 43200;  
  9. subnet 192.168.1.0 netmask 255.255.255.0 { 
  10.     range 192.168.1.101 192.168.1.200;   
  11. #   TFTP Server 
  12.     filename "pxelinux.0"
  13.     next-server rhel6.xfcy.org; 
  14.     
  15.     host vm.xfcy.org { 
  16.         hardware ethernet 00:0c:29:c0:a7:99
  17.         fixed-address 192.168.1.19
  18.     } 
  19. [root@rhel6 tftpboot]# /etc/init.d/dhcpd restart 
  20. Shutting down dhcpd:                   [  OK  ] 
  21. Starting dhcpd:                        [  OK  ]

  ● TFPT:

  1. [root@rhel6 ~]# rpm -qa | egrep 'tftp|xinetd' 
  2. tftp-0.49-7.el6.x86_64 
  3. xinetd-2.3.14-33.el6.x86_64 
  4. tftp-server-0.49-7.el6.x86_64 
  5. [root@rhel6 ~]# cat /etc/xinetd.d/tftp  
  6. # default: off 
  7. service tftp 
  8.         socket_type             = dgram 
  9.         protocol                = udp 
  10.         wait                    = yes 
  11.         user                    = root 
  12.         server                  = /usr/sbin/in.tftpd 
  13.         server_args             = -s /var/lib/tftpboot 
  14.         disable                 = no 
  15.         per_source              = 11 
  16.         cps                     = 100 2 
  17.         flags                   = IPv4 
  18. [root@rhel6 ~]# chkconfig xinetd on 
  19. [root@rhel6 ~]# /etc/init.d/xinetd restart 
  20. Stopping xinetd:                          [  OK  ] 
  21. Starting xinetd:                          [  OK  ] 
  22. [root@rhel6 ~]# netstat -lnup | grep :69   
  23. udp   0   0 0.0.0.0:69   0.0.0.0:*        2751/xinetd 
  24. [root@rhel6 ~]# yum -y install syslinux 
  25. [root@rhel6 ~]# mkdir -p /var/lib/tftpboot/pxelinux.cfg/ 
  26. [root@rhel6 ~]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/ 
  27. [root@rhel6 ~]# cp /media/isolinux/initrd.img /var/lib/tftpboot/ 
  28. [root@rhel6 ~]# cp /media/isolinux/vmlinuz /var/lib/tftpboot/ 
  29. [root@rhel6 ~]# cp /media/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default 
  30. [root@rhel6 ~]# ls -R /var/lib/tftpboot/  
  31. /var/lib/tftpboot/: 
  32. boot.msg initrd.img  pxelinux.0  pxelinux.cfg  vmlinuz 
  33. /var/lib/tftpboot/pxelinux.cfg: 
  34. default 
  35. [root@rhel6 ~]# vi /var/lib/tftpboot/pxelinux.cfg/default  
  36. default rhel6_nfs 
  37. prompt 1                                #显示"boot: " 提示进行选择以下lable 
  38. timeout 100                             #10s 的超时后进入default所定义的lable 
  39. display boot.msg                        #以boot.msg进行文本提示(与以下的*.msg文件结合,非必选项) 
  40.     F1 boot.msg   
  41.     F2 options.msg   
  42.     F3 general.msg   
  43.     F4 param.msg   
  44.     F5 rescue.msg
  45.   
  46. #可通过以下3种方式下载ks.cfg文件,通过default定义lable或在timeout时间之内选择lable即可 
  47. label rhel6_nfs                         #通过NFS方式
  48.     kernel vmlinuz 
  49.     append ksdevice=eth0 load_ramdisk=1 initrd=initrd.img network ks=nfs:192.168.1.119:/var/ftp/pub/ks.cfg 
  50. label rhel6_ftp                         #通过FTP方式
  51.     kernel vmlinuz 
  52.     append ksdevice=eth0 load_ramdisk=1 initrd=initrd.img network ks=ftp://192.168.1.119/pub/ks.cfg 
  53. label rhel6_http                        #通过HTTP方式
  54.     kernel vmlinuz 
  55.     append ksdevice=eth0 load_ramdisk=1 initrd=initrd.img network ks=http://192.168.1.119/pub/ks.cfg 
  56. label rescue                            #用于rescue模式 
  57.  kernel vmlinuz  
  58.  append load_ramdisk=1 initrd=initrd.img rescue

21/212>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号