在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
前言 因为需要在浪潮的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/ |
请发表评论