Cobbler是一个快速网络安装linux的服务,而且在经过调整也可以支持网络安装windows。该工具使用python开发,小巧轻便,使用简单的命令即可完成PXE网络安装环境的配置,同时还可以管理DHCP,DNS,以及yum包镜像。下面一步步来实现吧

实验平台:rhel 6.3 x86_64
  
 
 
  1. cobbler.laoguang.me192.168.1.23
一.环境准备1.1 安装dhcp
   
  
  
  1. yum-yinstalldhcp
1.2 安装其它所需服务如:tftp xinetd httpd ##靠tftp传输文件,tftp依赖xinetd,httpd这个我暂时不清楚
  
 
 
  1. yum-yinstalltftpxinetdhttpd
1.3 关闭selinux iptables
  
 
 
  1. setenforce0
  2. serviceiptablesstop
二.安装cobbler2.1 下载安装cobbler与依赖的包python-yaml下载地址:http://www.kuaipan.cn/file/id_33139203151758501.html ,其它平台的可以去http://rpm.pbone.net/找,这个网站你一定不能忘记
  
 
 
  1. yum-y--nogpgchecklocalinstallcobbler-2.2.2-1.el6.rf.noarch.rpm\
  2. python-yaml-3.09-3.el6.rf.x86_64.rpm
2.2 启动cobbler
  
 
 
  1. servicecobblerdstart
2.3 启动httpd
  
 
 
  1. servicehttpdstart
2.4启用xinetd
  
 
 
  1. servicexinetdstart
2.4 cobbler 检查配置
   
  
  
  1. cobblercheck
   
  
  
  1. --------------------------------------------
  2. Thefollowingarepotentialconfigurationitemsthatyoumaywanttofix:
  3. 1:The'server'fieldin/etc/cobbler/settingsmustbesettosomethingotherthanlocalhost,
  4. orkickstartingfeatureswillnotwork.ThisshouldbearesolvablehostnametheorIPforboot
  5. serverasreachablebyallmachinesthatwilluseit.
  6. 修改/etc/cobbler/settings中server选项为:
  7. server:192.168.1.23
  8. 2:ForPXEtobefunctional,the'next_server'fieldin/etc/cobbler/settingsmustbesetto
  9. somethingotherthan127.0.0.1,andshouldmatchtheIPofthebootserveronthePXEnetwork.

  10. 修改/etc/cobbler/settings中next_server选项为:
  11. next_server:192.168.1.23
  12. 3:Mustenableaselinuxbooleantoenablevitalwebservicescomponents,run:setsebool-Phttpd_
  13. can_network_connecttrue
  14. 关闭selinux
  15. 4:youneedtosetsomeSELinuxcontentrulestoensurecobblerservescontentcorrectlyinyour
  16. SELinuxenvironment,runthefollowing:/usr/sbin/semanagefcontext-a-tpublic_content_t"/var/
  17. lib/tftpboot/.*"&&/usr/sbin/semanagefcontext-a-tpublic_content_t"/var/www/cobbler"/images/.*
  18. 关闭selinux
  19. 5:youneedtosetsomeSELinuxrulesifyouwanttousecobbler-web(anoptionalpackage),runthefollowing:
  20. /usr/sbin/semanagefcontext-a-thttpd_sys_content_rw_t"/var/lib/cobbler/webui_sessions/.*"
  21. 关闭selinux
  22. 6:somenetworkboot-loadersaremissingfrom/var/lib/cobbler/loaders,youmayrun'cobblerget-loaders'
  23. todownloadthem,or,ifyouonlywanttohandlex86/x86_64netbooting,youmayensurethatyouhaveinstalled
  24. a*recent*versionofthesyslinuxpackageinstalledandcanignorethismessageentirely.Filesinthisdirectory,
  25. shouldyouwanttosupportallarchitectures,shouldincludepxelinux.0,menu.c32,elilo.efi,andyaboot.
  26. The'cobblerget-loaders'commandistheeasiestwaytoresolvetheserequirements.
  27. 运行cobblerget-loaders
  28. cobblerget-loaders##前提你能上网,出现***TASKCOMPLETE***代表ok
  29. 7:change'disable'to'no'in/etc/xinetd.d/rsync
  30. 我们不用rysnc同步文件,如果用的话修改/etc/xinetd.d/rsync
  31. vi/etc/xinetd.d/rsync
  32. disable=no
  33. 8:reposyncisnotinstalled,needforcobblerreposync,install/upgradeyum-utils?
  34. 可以不用理会,因为我们不用rsync同步ISO
  35. 9:yumdownloaderisnotinstalled,neededforcobblerrepoaddwith--rpm-listparameter,install/upgradeyum-utils?
  36. 同上
  37. 10:debmirrorpackageisnotinstalled,itwillberequiredtomanagedebiandeploymentsandrepositories
  38. 我们不是debian可以不用理会
  39. 11:ksvalidatorwasnotfound,installpykickstart
  40. 安装pykickstart
  41. yum-yinstallpykickstart
  42. 12:Thedefaultpasswordusedbythesampletemplatesfornewlyinstalledmachines(default_password_crypted
  43. in/etc/cobbler/settings)isstillsetto'cobbler'andshouldbechanged,try:"opensslpasswd-1-salt'random-phrase-here'
  44. 'your-password-here'"togeneratenewone
  45. 修改cobbler的密码,防止其它正常主机由pxe启动后安装系统
  46. opensslpasswd-1-salt51ctolaoguang##生成密码
  47. $1$51cto$nTnuekFUB6sByi97bt7df/##将它复制到setting中
  48. vi /etc/cobbler/settings
  49. default_password_crypted:"$1$51cto$nTnuekFUB6sByi97bt7df/"
  50. -----------------------------------------
2.5 重启cobbler
  
 
 
  1. servicecobblerdrestart
三.cobbler的配置 3.1 导入欲安装的系统的镜像文件将redhat 6.3 x86_64 的ISO挂载/cdrom
  
 
 
  1. mount/dev/cdrom/cdrom
导入需要的安装文件到cobbler的/var/www/cobbler/ks_mirrors下,并生成一profile,此过程需要一段时间,耐心等待
  
 
 
  1. cobblerimport--path=/cdrom--name=RedHat-6.3-x86_64
3.2 配置dhcp服务,让cobbler来管理
  
 
 
  1. vi/etc/cobbler/settings
  2. manage_dhcp:1
3.3 修改/etc/cobbler/dhcp.template模板文件中的配置,其它的默认即可
  
 
 
  1. vi/etc/cobbler/dhcp.template
  2. subnet192.168.1.0netmask255.255.255.0{##根据需要修改
  3. optionrouters192.168.1.1;##路由ip
  4. #optiondomain-name-servers192.168.1.1;##dns的ip,我没使用
  5. optionsubnet-mask255.255.255.0;##掩码
  6. rangedynamic-bootp192.168.1.100192.168.1.254;##dhcp分配的ip范围
  7. filename"/pxelinux.0";
  8. default-lease-time21600;##dhcp的默认释放时间
  9. max-lease-time43200;##最大时间
  10. next-server$next_server;##pxe使用的ip,$next_server在setting中定义的你忘了吗
  11. }
3.4 同步cobbler配置
  
 
 
  1. cobblersync
cobbler会自动进行初始化工作,移除已经存在的启动项,然后根据模板拷贝loader文件。之后再生成pxe的配置文件,生成dhcp的配置文件,最后再重启dhcp服务。关键查看dhcp,tftp有没有启动成功。四.测试安装系统 4.1 新建个虚拟机,网络记的是brige哦,新建的虚拟机网络默认是nat的,我就因为这个怎么都安装不上,启动虚拟机,调整启动顺序从网络启动(我用的是vmware,如果你没有挂cd的iso,也虚拟机是新建的直接启动应该是可以的)如下图

650) this.width=650;" src="https://www.itdaan.com/imgs/9/1/3/6/95/2fdf6749b99b2165f4313a608beb4efd.jpe" border="0" alt="" data-pinit="registered">

650) this.width=650;" src="https://www.itdaan.com/imgs/4/1/1/6/97/e28a8978a2921ee6f8dbb2c190ba69fe.jpe" border="0" alt="" data-pinit="registered">

五.定制自己的kickstart文件定制自己的kickstart文件而不是使用默认的,kickstart文件cobbler放在了/var/lib/cobbler/kickstarts/中,查看cobbler默认使用的哪个
   
  
  
  1. vi/etc/cobbler/settings
  2. default_kickstart:/var/lib/cobbler/kickstarts/default.ks##看到了吧,用的是default.ks
5.1 自定义kickstart文件。如果你对kickstart文件理解透彻,直接修改或新建即可,如果还是很精通就用gui工具吧
    
   
   
  1. yum-yinstallsystem-config-kickstart
安装完毕后打开软件
    
   
   
  1. system-config-kickstart
根据自己的需要修改即可,修改完毕后保存,修改settings中的设置,重启cobbler即可本文参考:http://os.51cto.com/art/201109/288604.htm

本文出自 “Free Linux, Share Linux” 博客,请务必保留此出处http://laoguang.blog.51cto.com/6013350/1097874

更多相关文章

  1. linux下如何导出.txt文件?
  2. Linux的五个文件查找命令:find,locate,whereis,which,type
  3. Re:从零开始的Linux之路(文件权限)
  4. Linux 删除文件夹和文件的命令
  5. Linux比较两个文件之间的不同
  6. 詹金斯死了,但是pid文件存在
  7. Linux下的文件时间
  8. Linux下非root用户能创建新文件,却不能拷贝文件的问题
  9. Linux用户和组的操作(一) 用户文件/etc/passwd

随机推荐

  1. ISSUE:Mysql将Enum转换为Int
  2. 关于MySQL数据库操作
  3. MySQL中varchar最大长度是多少?
  4. mysql 第二十四篇文章~相关分片功能的测
  5. mySQL错误: The used table type doesn't
  6. 无法连接远程MySQL数据库的解决方案
  7. 使用mysql和PHP从本地主机连接到远程数据
  8. 在MySQL解释计划中“选择优化的表”的意
  9. 我是初学者,使用mysql时候总是出现comman
  10. SQL内连接不显示数据