Linux ks.cfg 详解

linux安装大致可以分为2个阶段

第一阶段:anaconda

第二阶段:installinstall阶段系统会按照anaconda阶段设定的参数自动安装,这里主要要说的是anaconda阶段,此阶段是linux的预安装环境,提供linux安装选项的一个接口,可以将它比作是window中的PE环境

anaconda有两种模式:交互式和非交互式

交互式就和普通安装一样,按照提示选择选项一步步的安装

非交互式则通过读取kickstart文件的配置,进行自动安装,这和window中的无人值守安装差不多的,这个文件即是ks.cfg文件(相当于window中的wi2k3.sif应答文件)

而在安装linux过程中,获取ks.cfg文件的方式有多种,如直接在cdrom中获取,常见的形式还有http,ftp,nfs等方式

格式有三种:

cdrom和硬盘

ks=cdrom:/dir/ks.cfg(硬盘的话把cdrom换成hd即可,下面的类似)

http和ftp

ks=http://domain.com/dir/ks.cfg

NFS

ks=nfs:domain.com:/dir/ks.cfg

三种格式主要区分在于后面的斜杠,这里要注意区分

在使用ks.cfg之前,需要先引导启动环境

引导方式有很多,cdrom,usb,PXE等。

在引导进入anaconda后,即可通过读取ks.cfg来进行系统的自动安装

这里开始说说kickstart文件的大致内容

ks.cfg文件组成大致分为3段

1.命令段:

键盘类型,语言,安装方式等系统的配置,有必选项和可选项,如果缺少某项必选项,安装时会中断并提示用户选择此项的选项

2.软件包段:

%packages

@groupname:指定安装的包组

package_name:指定安装的包

-package_name:指定不安装的包

在安装过程中默认安装的软件包,安装软件时会自动分析依赖关系。

3.脚本段(可选):

%pre:预安装脚本(由于只依赖于启动镜像,支持的命令很少)

%post:后安装脚本(基本支持所有命令)

而具体的ks.cfg文件的配置,我们只需要在已经安装好的linux的root家目录找到anaconda_ks.cfg(这个ks文件就是在安装linux后,根据用户的安装选项自动生成的)

下面列举网上的一个样例

# Kickstart file automatically generated by anaconda.

#version=DEVEL

install  #表示是安装,而不是升级

text #文本方式安装

cdrom #安装方式,如果是网络安装的话可以写成 url ––url ftp://192.168.1.254/dir 或者 nfs --server=192.168.0.241 --dir=/centosinstall

key –skip #这个是我另外添加的,如果是RedHat的系统,会要求输入key,这里配置为跳过,如果不配置安装时会停在那里要求用户输入key

lang en_US.UTF-8  #语言

keyboard us #键盘样式

network --onboot no --device eth0 --noipv4 --noipv6 #网络配置 配置具体参数样例:network –onboot yes --bootproto=static --ip=192.168.1.1 --netmask=255.255.255.0 其他网关,DNS等格式和ifcfg-ethx的方式一样

rootpw  --iscrypted $6$PEJ49S7OkrNra3UM #管理员密码,是加密过的 要是使用不加密的方式则这样写:rootpw 123456

firewall --service=ssh #开启防火墙,并打开ssh端口

authconfig --enableshadow --passalgo=sha512 #用户认证和密码加密方式

selinux --enforcing #强制打开selinux

timezone --utc Etc/GMT+8 #时区设置

zerombr yes #清空磁盘的mbr

bootloader --location=mbr --driveorder=sda #引导程序相关参数

# The following is the partition information you requested

# Note that any partitions you deleted are not expressed

# here so unless you clear all partitions first, this is

# not guaranteed to work

clearpart –all –initlabel #初始化磁盘

part / --fstype=ext4 --size=18000 #开始分区

part swap --grow --size=1024

repo --name="CentOS"  --baseurl=cdrom:sr0 --cost=100

reboot

%packages --nobase #安装的软件包,这里由于我安装的是最小mini版,所以只安装了核心软件包组

@core

%post #后安装脚本(这里是我另外添加的,原来文件中没有)

id lustlost &>; /dev/null || useradd lustlost #检查是否有lustlost用户,如果没有则添加

echo 123456 | passwd –stdin lustlost #配置密码

cat >> /etc/yum.repos.d/base.repo << eof

[base]

name=baseserver

baseurl=http://192.168.1.254/yum

gpgcheck=0

enable=1

eof                                 #这里在安装系统成功后执行脚本自动配置一个yum源,其他脚本可以按照需要定义

%end

如果觉得使用样本的方式手工写配置文件比较麻烦,也可以使用图形化工具来制作ks.cfg文件

在linux中用yum安装system-config-kickstart就行了(图形化依赖于x-window),选项也有些限制(比如分区不能使用lvm),这里就不再演示了

时间: 2024-10-13 18:09:51

Linux ks.cfg 详解的相关文章

linux ls -l 详解[转]

linux ls -l 详解[转] 有几个字段老是记不住,就记载这里吧 ls -l 列表信息详解 我们平时用ls -l 命令查看一个目录下的文件和子目录的详悉信息时,会得到一个详细的文件和目录名列表.这个列表包含了文件的属性,所属用户,所属组,创建时间,文件大小等等信息.这些信息到底是什么意思呢?有很多初学者对这些不太了解,因此想详悉讲解一下用ls -l命令得到的文件列表每一个字段的意思 以笔者电脑的/root目录为例: [[email protected] root]# ll 总用量 4055

Monitorix监控Linux主机图文详解

Monitorix监控Linux主机图文详解 Monitorix简介 Monitorix 是一款自由开源的轻巧型系统监视工具.使用 Monitorix你可以随时掌控 CPU 负载及温度.内存占用.活动进程.磁盘使用及温度.网络设备流量.网络服务等全方位的系统信息.Monitorix 需要 Apache Web 服务器来显示这些系统信息图表.所以它特别适合在 Linux 服务器上面使用. 下面是我安装的步骤 1.安装的环境和需要的rpm包 我是在CentOS 6.4下面安装的CentOS 5可以使

LINUX 信号概念详解

LINUX 信号概念详解 我们运行如下命令,可看到Linux支持的信号列表: # kill -l 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP 6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR1 11) SIGSEGV 12) SIGUSR2 13) SIGPIPE 14) SIGALRM 15) SIGTERM 17) SIGCHLD 18) SIGCONT 19) SIGSTOP

linux FTP配置详解

一.vsftpd说明: LINUX下实现FTP服务的软件很多,最常见的有vsftpd,Wu-ftpd和Proftp等.Red Hat Enterprise Linux中默认安装的是vsftpd. 访问FTP服务器时需要经过验证,只有经过了FTP服务器的相关验证,用户才能访问和传输文件.vsftpd提供了3种ftp登录形式:  (1)anonymous(匿名帐号) 使用anonymous是应用广泛的一种FTP服务器.如果用户在FTP服务器上没有帐号,那么用户可以以anonymous为用户名,以自己

Linux磁盘阵列技术详解(二)--raid 1创建

我在Linux磁盘阵列技术详解(一)里已经详细介绍了几种RAID磁盘阵列方式,原理以及创建raid 0 的详细步骤.那么这篇文档就着重讲解如何创建raid 1的技术: 步骤如下: ① 分区 同样我们还是以一块硬盘的不同分区为例,实际工作中应该是不同的硬盘才对. 具体分区步骤不再赘述! 分区后结果如下图所示: ② 创建raid 1 mdadm -C -v /dev/md1 -l 1 -n 2 -x 1 /dev/sdc1 /dev/sdc2 /dev/sdc3 或者 mdadm -C -v /de

linux rm 命令详解及使用方法实战【初级】

rm:删除命令 前言: windows中的删除命令大家都不陌生,linux中的删除命令和windows中有一个共同特点,那就是危险,前两篇linux mkdir 命令详解及使用方法实战[初级]中我们就提到了rm命令,现在我们来详细介绍一下linux中删除文件和目录的命令, rm命令,rm是常用的命令,该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除.对于链接文件,只是删除了链接,原有文件均保持不变. 名称 rm - remove files o

Linux netstat命令详解

Linux netstat命令详解 简介 Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等. 输出信息含义 执行netstat后,其输出结果为 Active Internet connections (w/o servers)Proto Recv-Q Send-Q Local Address Foreign Address State

linux sort 命令详解

原文:http://www.cnblogs.com/51linux/archive/2012/05/23/2515299.html linux sort 命令详解 sort是在Linux里非常常用的一个命令,管排序的,集中精力,五分钟搞定sort,现在开始! 1 sort的工作原理 sort将文件的每一行作为一个单位,相互比较,比较原则是从首字符向后,依次按ASCII码值进行比较,最后将他们按升序输出. [[email protected] programming]$ cat seq.txtba

红帽Linux故障定位技术详解与实例(2)

红帽Linux故障定位技术详解与实例(2) 2011-09-28 14:26 圈儿 BEAREYES.COM 我要评论(0) 字号:T | T 在线故障定位就是在故障发生时, 故障所处的操作系统环境仍然可以访问,故障处理人员可通过console, ssh等方式登录到操作系统上,在shell上执行各种操作命令或测试程序的方式对故障环境进行观察,分析,测试,以定位出故障发生的原因. AD:2014WOT全球软件技术峰会北京站 课程视频发布 3.内核故障情形及处理 (1)内核panic panic是内