kickstart文件详解
kickstart+cobbler系列文章:http://www.cnblogs.com/f-ck-need-u/p/7048359.html
kickstart自动应答文件选项非常多,以下只说明CentOS 6下几个常用的可能用到的选项。另外,CentOS 6和CentOS 7的选项有不小区别,所以请注意使用,可以查看官方安装文档。
以下是CentOS 6上kickstart选项说明:在最后还给出了一个kickstart文件的示例。
#文件由三部分组成
#一是选项指令段,用于自动应答图形界面安装时除包选择外的所有手动操作
#二是package选择段,使用%packages引导该功能
#三是脚本段,该段可有可无,分为两种:
# (1) %pre 预安装脚本段,在安装系统之前就执行的脚本,该段很少使用,因为可用的命令太少
# (2) %post 后安装脚本段,在系统安装完成后执行的脚本 # kickstart选项指令段的说明: 【必须的选项】: .auth或者authconfig :验证选项
--useshadow或者--enableshadow启用shadow文件来验证
--passalgo=sha512使用sha512算法
.bootloader: 指定如何安装引导程序,要求必须已选择分区、已选择引导程序、已选择软件包,如果没选择将会停止而不会询问
--location=mbr 指定引导程序的位置,默认为mbr,还可以指定none或者包含bootloader的引导块所在分区
--driveorder=sda 指定grub安装在哪个分区以及指定寻找顺序,--driverorder=sda sdc sdb
--append="crashkernel=auto rhgb quiet" 指定内核参数
.keyboard:指定键盘类型,一般使用美式键盘"keyboard us",新版的kickstart的格式有所变化,但也支持"keyboard us"这样的老格式
.lang:指定语言,如"lang en_US.UTF-8".rootpw:设置root用户的密码
--iscrypted:使用加密密码,可以使用MD5,SHA-,sha-512等。
如:rootpw --iscrypted $$kxEBpy0HqHiY2Tsx$FTAqbjHs6x0VruChfYKxVeKLlxPuY0LXK7RxAVdu3uUivGclMUEz.i4ARlsMpqe1bf379uEgWOSFqGtZxqrwg.
其中SHA-512位的加密密码在CentOS 6上可以使用"grub-crypt --sha-512"生成,CentOS7上可以使用python等工具来生成,如下:
python -c 'import crypt,getpass;pw=getpass.getpass();print(crypt.crypt(pw) if (pw==getpass.getpass("Confirm: ")) else exit())' 【可选的选项】: .selinux:设置selinux,值为enforcing,permissice,disable之一
.autostep: 交互式,和interactive类似
.interactive: 使用kickstart文件指定的参数交互式安装,但仍会给出每一步的选择项,如果直接下一步就使用kickstart参数
.cmdline:在完全非交互的命令行模式下进行安装
.driverdisk:指定驱动程序所在位置
drvierdisk --source=
.firewall:设置firewall
--disable禁用防火墙
.firstboot:
--disable:安装后第一次启动默认会给出很多需要手动配置的界面,禁用它
.graphical:在图形模式下根据kickstart执行安装,默认该选项
.text:文本模式下根据kickstart执行安装(既然使用kickstart了,当然建议选择使用纯文本模式而不是图形模式了)
9.1 skipx:不安装图形工具
.halt/reboot:安装完成后关机还是reboot,默认是halt
.ignoredisk:指定忽略的磁盘
.install/upgrade:指定是安装还是升级系统
对于install,还必须指定下面几种安装方式之一:
cdrom:指定从第一个光盘驱动器安装
harddrive:指定从本地硬盘安装,要求硬盘必须是vfat或者ext2文件系统格式
--biospart:指定从bios类型的分区来安装,如82文件系统类型号的分区
--partition:从某个分区安装
--dir:指定从包含install-tree(安装树)的目录安装
例如:harddrive --partition=hdb2 --dir=/tmp/install-tree
nfs:指定从nfs路径安装
--server:指定nfs服务器主机名或IP
--dir:指定包含install-tree的目录
--opts:指定挂载NFS的mount选项
如:nfs --server=172.16.10.10 --dir=/export_path
url:指定从ftp、http、https安装
例如:url --url ftp://172.16.10.10
.loggin:指定安装过程中的错误日志位置
--host:指定日志将发送到那台主机上
--port:如果远程主机的rsyslog使用非默认端口,则应该指定该端口选项
--levle:指定日志级别
.network:为系统配置网络信息,并在安装过程中激活该网络设备。可多次使用network指令,例如既设置网络,又设置主机名
--bootproto:dhcp或static;对于static则必须指定IP地址、子网掩码、网关和DNS
--device:网卡名,可以使用eth0类似的名称来指定
--hostname:指定主机名
--onboot:是否在引导系统时启用指定的设备
如:
network --bootproto=static --ip=192.168.100.2 --netmask=255.255.255.0 --gateway=192.168.100.254 --nameserver=8.8.8.8
network --bootproto=dhcp --device=eth0 --noipv6
network --hostname=node1.xuexi.com
.autopart: 自动创建几个分区:大于1G的根分区,250M的boot分区和swap分区
.zerombr:清除磁盘的mbr .clearpart: 在安装系统前清除分区,如果指定该选项则必须指定正确
--all:清除所有分区
--Linux:清除Linux分区
--none:不清除分区
--initlabel:创建标签,对于没有MBR或者GPT的新硬盘,该选项是必须的
--drivers=sdb:清除指定的分区
所以,clearpart --all --initlabel是常见的方式
.part:创建分区
--asprimary:强制指定为主分区
--grow:使用所有可用空间,即为其分配所有剩余空间。对于根分区至少需要3G空间(即使是--grow,也还是需要指定--size)
--ondisk:指定在哪块磁盘上创建分区。如果有多块磁盘,则需要指定在哪块磁盘上创建哪个分区,只有一块硬盘时可以省略该选项
如:
#part /boot --fstype=ext4 --asprimary --size= #boot分区200-250M足以
#part swap --fstype=swap --asprimary --size=
#part / --fstype=ext4 --grow --asprimary --size=
LVM的分区方法:
part /boot --fstype ext4 --size=
part swap --fstype=swap --size=
part pv26 --size= --grow
volgroup VG00 --pesize= pv26
logvol / --fstype ext4 --name=LVroot --vgname=VG00 --size=
logvol /data --fstype ext4 --name=LVdata --vgname=VG00 --size= --grow .repo:指定除自带的yum源外的其他yum源,可以指定多行yum源(既然是第一次装系统,基本都不会去加这项)
如:repo --name="CentOS" --baseurl=cdrom:sr0 --cost=
.services:设置默认运行级别下开机自启动的服务
--disable
--enable
disable先处理enable后处理
如services --disable auditd,cups,atd
.timezone:指定时区
如:Asia/Shanghai
.user:在系统中生成一个新用户
--name:指定用户名
--groups:指定辅助组,非默认组
--homedir:用户家目录,如果不指定则默认为/home/<username>
--password:该用户的密码,如果不指定或省略则创建后该用户处于锁定状态
--shell:用户的shell,不指定则默认
--uid:用户UID,不指定则自动分配一个非系统用户的UID
.key:输入序列号,只在redhat中有,CentOS系统没有该项
--skip 跳过key选项 # kickstart软件包或包组选项: 使用"%packages"表示该段内容,@表示选择的包组,最前面使用横杠表示取反,即不选择的包或包组。
@base和@core两个包组总是被默认选择,所以不必在%packages中指定它们 %packages
@base
@core
@debugging
@development
@dial-up
@hardware-monitoring
@performance
@server-policy
@workstation-policy
sgpio
device-mapper-persistent-data
systemtap-client
lrzsz
tree
%end
以下是CentOS 6.6下的ks文件示例。
install
text
nfs --server=192.168.100.100 --dir=/install
#url --url=http://192.168.100.100/centos6.6
bootloader --location=mbr --driveorder=sda --append="crashkernel=auto quiet"
lang en_US.UTF-
keyboard us
network --onboot=yes --device=eth0 --bootproto=dhcp --noipv6
rootpw --iscrypted $$x4u9sIfSQsO7ddk5$/.0Xe6tFBY0uUmFFtyvAeY9YVPtcn8zl21fFNgmAoYtepQHRYDthQ4T1ZE12kDfAT6O3oXfRb7uv214t3Bb3K1
firewall --service=ssh
authconfig --enableshadow --passalgo=sha512
selinux --disabled
timezone Asia/Shanghai
reboot #安装结束后重启 #make partitions
zerombr
clearpart --all --initlabel
part /boot --fstype=ext4 --asprimary --size=
part / --fstype=ext4 --asprimary --grow --size=
part swap --fstype=swap --size= %packages
@base
@core
@debugging
@development
@dial-up
@hardware-monitoring
@performance
@server-policy
@workstation-policy
sgpio
device-mapper-persistent-data
systemtap-client
%end %post #结束后做的事
cat >>/etc/yum.repos.d/base.repo<<eof
[base]
name=sohu
baseurl=http://mirrors.sohu.com/centos/$releasever/os/$basearch/
gpgcheck=
enable=
[epel]
name=epel
baseurl=http://mirrors.sohu.com/fedora-epel/6Server/x86_64/
enable=
gpgcheck=
eof
sed -i "s/ONBOOT.*$/ONBOOT=yes/" /etc/sysconfig/network-scripts/ifcfg-eth0 #设置网卡为启动
sed -i "s/rhgb //" /boot/grub/grub.conf # 设置启动系统时不使用图形进度条方式
sed -i "s/HOSTNAME=.*$/HOSTNAME=xuexi.longshuai.com/" /etc/sysconfig/network #设置主机名 %end
kickstart文件详解的更多相关文章
- Linux的kickstart安装详解
Linux的kickstart安装详解 一.什么是kickstart? kickstart安装是redhat开创的按照你设计好的方式全自动安装系统的方式.安装方式可以分为光盘.硬盘.和网络.此文将以网 ...
- web.xml文件详解
web.xml文件详解 Table of Contents 1 listener. filter.servlet 加载顺序 2 web.xml文件详解 3 相应元素配置 1 listener. f ...
- Linux中/proc目录下文件详解
转载于:http://blog.chinaunix.net/uid-10449864-id-2956854.html Linux中/proc目录下文件详解(一)/proc文件系统下的多种文件提供的系统 ...
- SUBLIME TEXT 2 设置文件详解
SUBLIME TEXT 2 设置文件详解 Preferences.sublime-settings文件: // While you can edit this file, it’s best to ...
- [转]AndroidManifest.xml文件详解
转自:http://www.cnblogs.com/greatverve/archive/2012/05/08/AndroidManifest-xml.html AndroidManifest.xml ...
- delphi 资源文件详解
delphi资源文件详解 一.引子: 现在的Windows应用程序几乎都使用图标.图片.光标.声音等,我们称它们为资源(Resource).最简单的使用资源的办法是把这些资源的源文件打入软件包,以方便 ...
- VSFTPD全攻略(/etc/vsftpd/vsftpd.conf文件详解)
/etc/vsftpd/vsftpd.conf文件详解,分好类,方便大家查找与学习 #################匿名权限控制############### anonymous_enable=YE ...
- jni.h头文件详解二
作者:左少华 博客:http://blog.csdn.net/shaohuazuo/article/details/42932813 转载请注明出处:http://blog.csdn.net/shao ...
- 【转】 jni.h头文件详解(二)
原文网址:http://blog.csdn.net/shaohuazuo/article/details/42932813 作者:左少华 博客:http://blog.csdn.net/shaohua ...
随机推荐
- Swift数组的迭代访问
你可以通过for-in循环来迭代访问整个数组的值. for item in shoppingList { println(item) } // Six eggs // Milk // Flour // ...
- Structured-Streaming之窗口操作
Structured Streaming 之窗口事件时间聚合操作 Spark Streaming 中 Exactly Once 指的是: 每条数据从输入源传递到 Spark 应用程序 Exactly ...
- 发布.NET MVC网站 到Azure
最近的项目部署在Microsoft Azure,学习了一些新东西,记录下. 1.账号. 用于登录portal(https://portal.azure.cn/),账号下有对应的Subscription ...
- Easyui设置动态表格,动态导出数据实例,附Demo
最近开发的过程中碰到一个客户提出的需求,一个指定的页面导出需要提供一个弹出页面选择列表页面需要显示的列,页面确认之后需要修改列表页面显示的表格,导出的数据也需要同步变化. 总结一下可以称为一个列表数据 ...
- [图形学] Chp14 GLU曲面裁剪函数程序示例及样条表示遗留问题
样条表示这章已经看完,最后的GLU曲面裁剪函数,打算按书中的示例实现一下,其中遇到了几个问题. 先介绍一下GLU曲面裁剪函数的使用方法. 1 裁剪函数是成对出现的: gluBeginTrim和gluE ...
- 数据结构(C语言版)链表相关操作算法的代码实现
这次实现的是带头结点的单链表的初始化.遍历.创建.插入.删除.判断链表是否为空.求链表长度函数,编译环境是vs2013. 其中插入和删除函数中循环的条件目前还不太明白. #include<ios ...
- 在Apworks数据服务中使用基于Entity Framework Core的仓储(Repository)实现
<在ASP.NET Core中使用Apworks快速开发数据服务>一文中,我介绍了如何使用Apworks框架的数据服务来快速构建用于查询和管理数据模型的RESTful API,通过该文的介 ...
- POJ 2289 Jamie's Contact Groups / UVA 1345 Jamie's Contact Groups / ZOJ 2399 Jamie's Contact Groups / HDU 1699 Jamie's Contact Groups / SCU 1996 Jamie's Contact Groups (二分,二分图匹配)
POJ 2289 Jamie's Contact Groups / UVA 1345 Jamie's Contact Groups / ZOJ 2399 Jamie's Contact Groups ...
- 首页音乐播放器添加"多首音乐"
添加音乐播放器可以去这个博主的网址参考学习 原文链接:http://www.cnblogs.com/RhinoC/p/4695509.html 以下是针对添加“多首音乐”的详细过程: (注:由于之前并 ...
- 游戏里的动态阴影-ShadowMap实现原理
ShadowMap是比较流行的实时阴影实现方案,原理比较简单,但真正实现起来还是会遇到很多问题的,我这里主要记录下实现方式 先看效果 凹凸地形上也有阴影 实现原理 ShadowMap技术是从灯光空间用 ...