设为首页 收藏本站
查看: 796|回复: 0

[经验分享] 实现redhat的完全自动化安装

[复制链接]

尚未签到

发表于 2018-5-13 06:15:14 | 显示全部楼层 |阅读模式
  这里我们使用红帽提供的kickstart工具来实现,kickstart只是用来生成配置文件的,实际上是anaconda这个程序在工作。实质上我们在安装时候输入的各项参数都被系统记录下来生成一个叫做anaconda.cfg配置文件,最后根据这个配置文件的内容来进行安装,这个文件在全新安装系统之后就保存在/root/anaconda.cfg这里。
  安装和启动kickstart
  kickstart这个工具默认没有安装,我们使用 yum install system-config-kickstart安装
打开配置界面system-config-kickstart,接下来会出现一个图形化的配置界面让你选择安装时候的各项参数,最后两项是安装系统前和安装系统之后可以执行的脚本,如果需要的话,直接写在里面就好了,写的时候不需要指定#!/bin/bash
  kickstart的配置文件
各项参数选择完毕之后选择file-save,默认保存位置在/root/ks.cfg,我们以系统生成的文件为蓝本进行一些简单的修改如下:
platform=x86, AMD64, or Intel EM64T
# System authorization information
auth  --useshadow  --enablemd5
# System bootloader configuration
bootloader --location=mbr
# Clear the Master Boot Record
zerombr yes
# Partition clearing information
clearpart --all --initlabel
# Use text mode install
text       这里是选择以文本的方式来安装
# Firewall configuration
firewall --disabled  不启用防火墙
# Run the Setup Agent on first boot
firstboot --disable
# System keyboard
key --skip 在这里我选择跳过输入序列号的步骤,当然你有的话直接把序列号写在这里key xxx
keyboard us
# System language
lang zh_CN
# Installation logging level
logging --level=info  
# Use network installation
url --url=ftp://192.168.1.101/pub 我们在图形化配置的时候输入ftp服务器这样写:
#192.168.1.101  不需要加ftp
#/pub
# Network information
network --bootproto=dhcp --device=eth0 --onboot=on 我这里有DHCP我选择了启动DHCP,这里也可以指定IP地址等信息如
#network --bootproto=static --ip=192.168.1.101 --netmask=255.255.255.0 --gateway=192.168.1.1 --nameserver=
#192.168.1.1
# Reboot after installation
reboot  安装后我们选择自动重启一下
#Root password
rootpw --iscrypted $1$r6XnV.dM$grrK7vTxFZ5ykGS/kLT231
这里是使用MD5加密的root密码
# SELinux configuration
selinux --disabled 禁用selinux
# System timezone
timezone  Asia/Shanghai
# Install OS instead of upgrade
install 开始一个全新的安装而不是升级
# X Window System configuration information
xconfig  --defaultdesktop=KDE --depth=16 --resolution=1024x768 --startxonboot
# Disk partitioning information
zerombr yes  在这里我自己指定的分区信息如下(因为kickstart只支持基本的分区,而不支持lvm和raid,我们手动编辑):
clearpart --all  清除所有分区信息
part swap --size 1024
part /boot --fstype ext3 --size 100
part pv.01 --size 40960
volgroup vol0 --pesize=32768 pv.01
logvol / --fstype ext3 --name=root --vgname=vol0 --size=29984
logvol /home --fstype ext3 --name=home --vgname=vol0 --size=1984
  指定KS文件的位置:
DSC0000.png

  制作启动引导盘
  配置文件设置好了之后接下来我们来制作一个启动引导盘
打开系统安装光盘,把isolinux这个目录复制出来,假设我复制到/tmp/iso目录下面,首先我们把ks.cfg文件也复制过来,放在isolinux
目录的外面就可以了,当然位置无所谓,把isolinux/isolinux.cfg文件内容做下修改
label linux
  kernel vmlinuz
  append initrd=initrd.img ks=cdrom:/ks.cfg 把ks.cfg文件的位置指定一下,告诉系统引导启动的时候到哪里来找这个文件
制作成一个引导光盘
mkisofs -o boot.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -R -J -v -T iso/
好了,可以测试一下,开个虚拟机放入引导盘,直接回车,该干什么干什么吧,等下系统会自动启动等待你登录,是不是方便多了啊!
  kickstart分区语法
  kickstart使用很简单和很方便,唯一的不足是只能进行基本的磁盘本区,不能够构建lvm或者是raid,但是我们可以通过手动修改的方式来添加,语法如下:
  part/partition  (install模式必须)
    建立新分区;
    part  <mntpoint>|swap|pv.id|rdid.id  options
    mntpoint:挂载点,是在创建普通分区时指定新分区挂载位置的项;挂载点需要格式正确
    swap: 创建swap分区;
    raid.id:  表示创建的分区类型为raid型;必须用id号进行唯一区别;
    pv.id:  表示所创建的分区类型为LVM型;必须用唯一id号进行区别;
    --size=  设置分区的最小值,默认单位为M,但是不能写单位;
    --grow  让分区自动增长利用可用的磁盘空间,或是增长到设置的maxsize值;
    --maxsize 设置分区自动增长(grow)时的最大容量值,以M为单位,但不能写单位;
    --onpart=/--usepart=     设置使用原有的分区;
    --noformat    设置不格式化指定的分区,在跟—onpart一同使用时,可以避免删除原有分区上的数据,在新安装的系统中保留使用数据;
    --asprimary    强制制定该分区为主分区;若指定失败,分区会失败,导致安装停止;
    --fstype=    新增普通分区时指定分区的类型,可以为ext2、ext3、ext4、swap、vfat及hfs;
    --ondisk=/--ondrive=     设定该分区创建在一个具体的磁盘上;
    --start   指定分区以磁盘上那个磁道开始;需要跟--ondisk参数一块使用;
    --end    指定分区以磁盘上那个磁道结束;需要跟上述两个参数一起使用;
    --recommended:让系统自行决定分区的大小;在创建swap分区时,若RAM<2G,则分区大小为2*RAM;若RAM>=2G时,分区大小为RAM+2G;
    --bytes-pre-inode=    指定分区格式化时inode的大小;默认值为4096
    --fsoptions=    指定创建fstab文件时该分区挂载参数项;
    例:
    part  /boot  --fstype=“ext3” --size=100
    part  swap  --fstype=“swap” –size=512  
    part  /  --bytes-pre-inode=4096  --fstype=“ext4”--size=10000
    part  /data    --onpart=/dev/sdb1  --noformat
    part  raid.100  --size=2000
    part  pv.100     --size=1000
raid  (可选)
    设置RAID。
    raid 挂载点  --level=<level>  --device=<mddevices_name>  <raid组成分区>
    挂载点:    选取根/时,注意尽量避免/boot在RAID内,除非为RAID1;
    --level=     设置RAID级别
    --device=  RAID设备名称,如md0,md1...
    --byte-pre-inode=    设置该RAID分区上inode大小;若分区文件系统类型不支持该参数,会静默忽略参数;
    --spares=  设置RAID的热备盘
    --fstype=  设置文件系统类型
    --fsoptions=  设置挂载该文件系统时自定义的一些参数,参数写入fstab文件;
    --useexisting  使用现有的RAID设备并且重新格式化原设备
    --noformat     在使用现有的RAID设备时不格式化原有RAID设备
    例:完整创建一个RAID1设备示例;
    part  raid.10  --size=1000  --ondisk=/dev/sdb
    part  raid.11  --size=1000  --ondisk=/dev/sdc
    raid  /data  --level=1  --device=md0  raid.10  raid.11
volgroup  (可选)
    创建一个LVM卷组VG;
    volgroup  vg_name  partition  [options]
    --useexiting   使用现有的VG并且重新格式化
    --noformat    使用现有的VG时不做格式化
    --pesize          设置PE(physical extents)块大小
    例:
    part pv.11  --size=2000
    volgroup  myvg  pv.11
logvol  (可选)
    创建一个LVM逻辑卷LV;
    logvel  mnt_point  --vgname=vg_name  --size=lv_size  --name=lv_name  [options]
    --useexiting  使用现有的LV并且重新格式化
    --noformat   使用现有的LV时不做格式化
    --fstype=      指定RAID分区类型
    --fsoptions=  设置挂载该文件系统时自定义的一些参数,参数写入fstab文件;
    --byte-pre-inode=    设置该RAID分区上inode大小;
    --precent=    设定LV大小为VG可用空间的比例;
    例:
    part pv.20  --size=5000
    volgroup  mvvg  pv.20
    logvol    /data  --vgname=myvg  --size=3000  --name=mydata
  kickstart自动化安装时制作raid的范例:
DSC0001.png

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-459267-1-1.html 上篇帖子: redhat 构建YUM服务(基于ftp) 下篇帖子: linux(redhat,centos)系统安装Firefox5的问题
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表