服务器之家

服务器之家 > 正文

利用Kickstart自动化安装CentOS的教程

时间:2019-09-11 16:59     来源/作者:开源中文社区

前言

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

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

环境准备
定制系统

    CentOS-6.4-x86_64

官方下载地址 - http://wiki.centos.org/Download
安装软件包

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

   

复制代码

代码如下:

yum -y install createrepo mkisofs

 

制作流程
目录结构

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

   

复制代码

代码如下:

mkdir /mnt/centos
mount /dev/sr0 /mnt/centos
mkdir /tmp/iso
cp -r /mnt/centos/* /tmp/iso

 

增加Kickstart配置文件

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

   

复制代码

代码如下:

cd /tmp/iso/isolinux
#修改引导,注意ks=部分
vi isolinux.cfg
label linux
menu label ^Install or upgrade an existing system
menu default
kernel vmlinuz
append initrd=initrd.img ks=cdrom:/isolinux/ks.cfg
#手动增加Kickstart配置文件
vi ks.cfg</p> <p> #Kickstart file automatically generated by anaconda.
#version=DEVEL
#Install OS instead of upgrade
#表示是安装,而不是升级
install
#Use text mode install
#文本方式安装
text
#Use network installation
#使用网络安装
#url --url=ftp://ip/centos
#Local installation Use CDROM installation media
#使用光盘安装
cdrom
#Installation Number configuration
#如果是RedHat的系统,会要求输入key,这里配置为跳过,如果不配置安装时会停在那里要求用户输入key
#key –skip
#System language
#语言环境
#lang en_US.UTF-8
lang zh_CN.UTF-8
#System keyboard
#键盘类型
keyboard us
#Network information
#网络配置
#network --device eth0 --bootproto dhcp --onboot yes
#Root password
#root密码
rootpw chinaums
#Firewall configuration
#禁用防火墙
firewall --disabled
#SELinux configuration
#禁用selinux
selinux --disabled
#Run the Setup Agent on first boot
#禁用第一次启动时设置系统的向导
firstboot --disable
#System authorization information
#用户认证配置,useshadow表示使用本地认证,--passalgo表示密码加密算法
authconfig --enableshadow --passalgo=sha512
#System timezone
#设置时区为上海
timezone --isUtc Asia/Shanghai
#System bootloader configuration
#指明bootloader的安装位置,指明驱动器的排序,指明操作系统安装完成之后,向内核传递的参数
bootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet"
#Clear the Master Boot Record
#清除MBR引导记录
zerombr yes
#Partition clearing information
#清除硬盘上的所有数据
clearpart --all --initlabel
#Disk partitioning information
#自定义分区
#创建一个200M大小的分区挂载/boot类型为ext4
part /boot --fstype=ext4 --size=200 --ondisk=sda
#创建一个20000M大小的SWAP分区
part swap --size=20000 --ondisk=sda
#创建/目录
part / --fstype=ext4 --grow --size=1 --ondisk=sda
#Reboot after installation
#设置完成之后重启
reboot --eject
#This packages is for CentOS 6.4
#为CentOS 6.4定制的软件包
%packages
@base
@core
@chinese-support
#增加安装后运行脚本 
%post
#config service 
#自定义服务
service NetworkManager stop
chkconfig NetworkManager off
#eject cdrom
#安装完成弹出光碟 
#eject
#reboot
#执行完毕后重启 
#reboot -f 
#结束自动化部署
%end

 

生成依赖关系和ISO文件

    注意路径和命令的准确性

   

复制代码

代码如下:

cd /tmp/iso
createrepo -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/
标签:

相关文章

热门资讯

玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分 2019-06-21
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情 2019-06-22
抖音撒撒累累是什么歌 撒撒累累张艺兴歌曲名字
抖音撒撒累累是什么歌 撒撒累累张艺兴歌曲名字 2019-06-05
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-07-24
叠猫猫队长可以退出吗 叠猫猫队长怎么换队伍
叠猫猫队长可以退出吗 叠猫猫队长怎么换队伍 2019-06-05
返回顶部