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

   前言

  因为需要在浪潮的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> #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/

时间: 2024-10-31 20:53:34

利用Kickstart自动化安装CentOS的教程的相关文章

基于Kickstart自动化安装CentOS实践

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

《构建高可用Linux服务器 第3版》—— 1.1 使用PXE+DHCP+Apache+Kickstart无人值守安装CentOS 5.8 x86_64

1.1 使用PXE+DHCP+Apache+Kickstart无人值守安装CentOS 5.8 x86_64 CentOS 5.8 x86_64的安装方法挺多的,最常见的有光盘安装.Kickstart无人值守安装.优盘安装及ISO硬盘安装等.现阶段的工作由于需要大规模将CentOS 5.8 x86_64系统应用于集群环境,所以这种无人值守安装的方法主要用于在公司内网批量安装新服务器系统,这种方法极大地简化了用光盘重复安装CentOS 5.8 x86_64的过程,再加上通过应用分布式自动化运维工具

linux中Kickstart自动化安装教程

在 RHEL,CentOS,Fedora 等系统中,安装系统使用的程序名叫 anaconda,它属于 FedoraProject,由 Python 开发,能够提供图形或者文本界面用于系统安装. Anaconda 安装程序最大的优点是:它可以用一个称之为 Kickstart 的特性进行非交互式脚本安装.Kickstart 脚本是一个用来指定安装要求详情的简单 ASCII 文本文件.该脚本可用常规文本编辑器编写,或用 Kickstart 配置程序来生成. Kickstart 脚本通常有三个不同的部分

kickstart自动化安装linux

参考了51cto博客各路大神的文章,结合自己实践过程,虽中间经历了些困难挫折,最终还是成功完成配置,实现了自动化安装linux. (重点参考灰度的BLOG, http://rrliang.blog.51cto.com/4214966/1040863) 安装环境,虚拟机VirtualBox虚拟2台机器,一台做kickstart服务器,一台做客户端 服务器系统为CentOS 6.3 X86_64, 安装光盘为CentOS 6.3 X86_64 DVD 网卡全部配置为"内部网络" 首先,需要

Centos 5.5 X86_64实战KickStart自动化安装

原理和概念: 1.1 什么是PXE 严格来说,PXE 并不是一种安装方式,而是一种引导的方式.进行 PXE 安装的必要条件是要安装的计算机中包含一个 PXE 支持的网卡(NIC),即网卡中必须要有 PXE Client.PXE (Pre-boot Execution Environment)协议使计算机可以通过网络启动.协议分为 client 和 server 端,PXE client 在网卡的 ROM 中,当计算机引导时,BIOS 把 PXE client 调入内存执行,由 PXE clien

Redhat 6.3利用kickstart无人值守安装

方法:FTP+TFTP+DHCP+Kickstart+PXE+NFS 准备两台虚拟机,一台作为服务器(RHEL6,IP为192.168.10.1),另一台作为RHEL6被安装端,设置网络引导安装. 一.安装所需要的服务及修改相应配置文件: 1.配置yum本地安装源: su - root mkdir /mnt/cdrom mount -t iso9660 /dev/sr0 /mnt/cdrom cd /etc/yum.repos.d 查看目录是否有.repo后缀文件,没有则创建一个.repo文件,

kickstart无人值守安装CentOS6.5

在本次实验进行之前,首先我们要把公司的网络环境进行介绍. 注意这个网络拓扑图,也是生产环境的一个实例.同时服务器192.168.1.214已关闭iptables.Selinux. 看如下拓扑图: kickstart完全配置后的网络拓扑如下: 目前路由器使用的是软路由ROS,因为centos的无人值守安装需要DHCP服务器的配合使用,并且还需要对DHCP服务进行特殊配置. 而一般路由器根本就不支持此特殊功能,所以我们需要关闭路由器ROS的DHCP功能.只让路由器ROS当作网关使用,当然ROS的其他

CentOS下Cobbler的安装和配置教程

  Cobbler是一个快速网络安装linux的服务,而且在经过调整也可以支持网络安装windows.该工具使用python开发,小巧轻便(才15k行python代码),使用简单的命令即可完成PXE网络安装环境的配置,同时还可以管理DHCP.DNS.以及yum仓库.构造系统ISO镜像. Cobbler支持命令行管理,web界面管理,还提供了API接口,可以方便二次开发使用. Cobbler客户端Koan支持虚拟机安装和操作系统重新安装,使重装系统更便捷. cobbler提供的功能 使用 Cobb

Centos自动化安装之包的自定义笔记

在定制好Centos系统后,可能因为公司需求后续会增加工具包.这时候我们应该怎么单独提供该工具包以及安装所需的依赖包呢.下面列举几种情况   1.安装工具包时提示缺少依赖     上图是安装工具包时提示缺少的依赖包:   2.这时我们需要利用yum命令找出上面缺失的依赖包安装上即可. # yum provides libc.so.6   #从libc.so.6文件去搜寻软件,有点类似 rpm -qf 的功能   通过上面命令系统会列出libc.so.6所需的包glibc.     3.下载包