基于Kickstart自动化安装CentOS实践 (original) (raw)

发表于 2015-05-20

前言

因为需要在浪潮的x86服务器中集中部署CentOS搭建基于Hadoop的大数据平台,平时接触SLES(SuSE Linux Enterprise Server)较多并且已经实现基于Autoyast方式使用光盘或者PXE网络自动化安装(后续会分享具体实现方法)。这次主要通过学习Kisckstart实现最简单的光盘方式自动化安装CentOS,而网上的大多数教程并不完全适用于自身的环境,本文将不再赘述Kickstart相关概念,细节可参考扩展阅读。

Kickstart是最为通用的Linux自动化安装方法之一


更新历史

2015年05月20日 - 初稿

阅读原文 - https://wsgzao.github.io/post/kickstart/

扩展阅读


环境准备

定制系统

CentOS-6.4-x86_64

官方下载地址 - http://wiki.centos.org/Download

安装软件包

代理上网小技巧,export http_proxy=ip:port

1 yum -y install createrepo mkisofs

制作流程

目录结构

拷贝CentOS原始镜像内容,不做任何精简

1234 mkdir /mnt/centosmount /dev/sr0 /mnt/centosmkdir /tmp/isocp -r /mnt/centos/* /tmp/iso

增加Kickstart配置文件

文件路径和安装方式可自由定义

123456789101112 cd /tmp/iso/isolinuxvi isolinux.cfglabel linux menu label ^Install or upgrade an existing system menu default kernel vmlinuz append initrd=initrd.img ks=cdrom:/isolinux/ks.cfgvi ks.cfg
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116 installtextcdromlang zh_CN.UTF-8keyboard usrootpw chinaumsfirewall --disabledselinux --disabledfirstboot --disableauthconfig --enableshadow --passalgo=sha512timezone --isUtc Asia/Shanghaibootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet"zerombr yesclearpart --all --initlabelpart /boot --fstype=ext4 --size=200 --ondisk=sdapart swap --size=20000 --ondisk=sdapart / --fstype=ext4 --grow --size=1 --ondisk=sdareboot --eject%packages@base@core@chinese-support@server-policytelnet%postservice NetworkManager stopchkconfig NetworkManager offservice network restart%end

生成依赖关系和ISO文件

注意路径和命令的准确性

123 cd /tmp/isocreaterepo -g repodata/*comps.xml . mkisofs -o /tmp/CentOS-6.4_64_auto.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -joliet-long -R -J -v -T /tmp/iso/

测试和建议

推荐两篇参考文献,建议先在虚拟机上反复测试验证再到物理机部署

Linux Kickstart 自动安装 - http://liaoph.com/linux-kickstart/
Centos6.4定制自动化安装盘 - http://www.wpython.com/444.html

GitHub源码 - https://github.com/wsgzao/autoinstall/