linux anaconda kickstart基础

启动介质的启动流程:

isolinux --> anaconda


光盘介质内的结构:

EFI/ efi相关

LiveOS/ LiveCD相关映像文件。

Packages/ 软件包

images/ 存放各种启动介质映像文件(Image File)。

isolinux/ 启动加载器的使用目录。包括启动加载器的配置文件,内核、initrd等文件。

repodata/ repo数据

CentOS_BuildTag  记录build日期的文件。

GPL GPL授权文件

RPM-GPG-KEY-CentOS-7 GPGKEY文件 

RPM-GPG-KEY-CentOS-Testing-7 GPGKEY文件




anaconda

1.update模式

安装和升级系统

2.kickstart模式

自动安装。

3.rescue模式 

救援模式


stage1:

1.启动安装介质内的isolinux/initrd.img

2.执行initrd.img内的init

解析启动介质事指定的参数

检车硬件设备,加载必要驱动


stage2:

1.执行image/stage2.img

设置安装选项并进行安装与更新计划


/root/anaconda-ks.cfg 使用anaconda方式系统安装时自动生成,可以作为kickstart文件的模板。

内容由3部分组成:

1.命令段:

安装过程中需要使用命令指定的设置。

2.软件包选择段:

以%packages开头,指定系统安装中需要安装的包和包组等。

3.脚本段

%pre 系统安装前执行的脚本。

%post 系统安装后执行的脚本


安装选项,在boot提示符中可以使用的命令

linux COMMAND

askmethod 手工选择安装方式。


dd=DISK 加载驱动


ip=IP|dhcp 指定ip地址,自动获取则填dhcp

netmask=NETMASK 指定子网掩码

gateway=GATEWAY 指定网关

dns=DNS1,DNS2... 指定DNS地址,各DNS之间用,逗号隔开。


ks=http://SERVER/DIR 从http中读取

ks=nfs:SERVER:/DIR 从nfs中读取

ks=hd:DEVICE/DIR/FILE 从本地设备中读取

ks=flie:/DIR/FILE initrd中存在预先打包进去的配置文件。

ksdevice=DEVICE 有多网卡时,指定通过某块网卡获取配置文件。


mediacheck=no 跳过光盘检查。


method=cdrom

method=ftp://DIR

method=hd:DEVICE:DIR 

method=http://DIR

method=nsf:DIR


nonet 不启用网络功能

noprobe 不装载额外的硬件设备驱动。

nousb 不使用usb设备


rescue 进入紧急救援模式。




kickstart

ks.cfg kickstart的配置文件

内容由3部分组成:

1.命令段:

必备命令

1.keyboard us

2.lang en_US

语言列表在/usr/share/sytem-config-language/locate-list中定义。

或使用locale -a查看

3.timezone

4.rootpw

5.authconfig

6.bootloader

7.clearpart



可选命令

1.autopart 自动分区

2.ignoredisk 忽略硬盘

--drives=DISK1,DISK2... 指定忽略的硬盘

--onlyuse=DISK1,DISK2... 白名单

3.autostep 自动跳过可选项,可选项均设定为默认选项。

auth(authconfig)

--enablemd5 用户密码使用md5方式加密

--useshadow --enableshadow 使用shadow密码


bootloader

--location 指定安装位置,默认安装在mbr。

--password=PASSWORD 使用grub的时候是否设置密码。


clearpart

--all 移除所有分区

--linux 移除所有linux分区

--none 不移除任何分区,使用空闲空间。默认选项。

--initlable 磁盘上若无分区表则初始化一个。


driverdisk DISK  指定驱动磁盘

--source=ftp://DIR/dd.img 指定镜像文件的位置。

--sourec=http://DIR/dd.img

--sourec=nfs:HOST:/DIR/dd.img


firewall

--enable --enabled 启用防火墙

--disenable --disabled 禁用防火墙

--turst ETHNUM 信任从哪个网卡上的数据包

--prot PROTO:PORT 指定的协议和端口

--SERVICE 指定的服务

ssh

telnet

smtp

http

ftp


firstboot 设定系统启动后的setup agent。

--enable --enabled 允许setup agent启动。

--disable --disabled 禁止setup agent启动。

--reconfig 启动后令setup agent进入重配置模式。


halt 系统安装完成后关机

poweroff 系统安装完成后关机

reboot 系统安装完成后重启

shutdown 系统安装完成后关机


graphical 图形安装界面

text 文本安装界面


install 安装系统

--url 

upgrade 升级系统



interactive 交互模式


iscsi iscsi设备相关


key 密钥

--skip 跳过提供密钥


part|partition 划分分区

pv 创建pv设备

raid 创建raid设备

--size 指定大小

--grow 能否自动扩展至最大空间

--maxsize 指定最大空间大小

--ondisk=DISK 在指定分区上操作

--fstype=FSTYPE 指定文件系统类型。

--start 开始的柱面

--end 结束的柱面

--encrypted 是否加密

--label=LABELNAME 卷标


volgroup 卷组相关


logvol 逻辑卷相关


network

--device=ETHNUM 指定网卡

--bootproto=hdcp|stati|boottp

--ip=IP

--netmask=NETMASK

--gateway=GATEWAY

--nameserver=DNS1,DNS2...


rootwp PASSWORD root的用户的密码

--iscrypted 使用加密的密码


selinux

--disabled 禁用

--enforcing 强制模式

--permissive 宽容模式,建议使用


skipx 跳过图形界面配置


timezone TIMEZONE 

--utc

可以使用timeconfig命令进行配重。






2.软件包选择段:

以%packages开头,指定系统安装中需要安装的包和包组等。


3.脚本段

%pre 系统安装前执行的脚本。

%post 系统安装后执行的脚本


#ksalidator KSFILE

检查kickstart文件配置是否有错误,需要安装system-config-kickstart软件包。


#system-config-kickstart 图形化编辑kickstart工具。



实例:创建极小安装光盘

1.挂载光盘

#mount /dev/cdrom /mnt/cdrom 


2.复制光盘上的isolinux images

#cp -pr /mnt/cdrom/{isolinux,images} /tmp/test/


3.编辑isolinux.cfg文件

#vim /tmp/test/isolinux/isolinux.cfg

default linux ks=cdrom:/ks.cfg


4.编辑boot.msg

#vim boot.msg

可以自己添加想要显示的信息


5.创建ks.cfg文件

#vim /tmp/test/ks.cfg


6.创建光盘映像文件

##mkisofs -R -b /tmp/test/isolinux/isolinux.bin --no-emul-boot -boot-load-size 4 -boot-info-table -o boot.iso /tmp/iso


你可能感兴趣的:(linux,kickstart,Anaconda)