Me

7/15/2010

利用 Kickstart 和 BFO 自动安装 Fedora

前言


kickstart 是 Redhat 开发的一个系统自动安装方案。它可以用来自动安装 RHEL 以及 Fedora。采用 kickstart,用户只需建立一个配置文件,将安装过程中所需的操作(如分区方案、软件包信息、引导程序等等)写入文件,安装程序即可按照该文件进行自动安装。详情请见:kickstart wiki 页面 [1]

BFO 是随 Fedora 13 带来的一个新的安装方式,基于 BKO(http://boot.kernel.org),它通过网络运行安装程序并进行操作系统的安装。BFO 的镜像文件很小,本身不足 1MB,而且几乎无需更新。只需从 bfo.iso 引导,即可安装你想要的 fedora 版本。不过,前提是你要有网络连接。详情请参考:bfo [2]

准备工作


1. kickstart 文件,在你用常规方式安装完系统后会在 /root/ 目录下保留一份 anaconda-ks.cfg,如果想要按照你当前系统的设置来自动安装,不妨直接使用该文件。

注意:系统安装通常都是通过光盘或其它介质安装,安装源都位于本地。为了配合 bfo 安装,需要对生成的 kickstart 文件中的安装源做下修改。

此外,也可以使用 GUI 工具 system-config-kickstart 来生成。当然如果你熟悉 kickstart 文件格式的话,可以直接编辑一个。
1.1 下面我以我虚拟机上的一份 ks.cfg 为例,对 ks.cfg 做个简单介绍。

#platform=x86, AMD64, or Intel EM64T
#version=DEVEL
# Firewall configuration
firewall --enabled --service=ssh #防火墙开启,ssh为信任服务。
# Install OS instead of upgrade
install #全新安装
# Use network installation
url --url="http://download.fedoraproject.org/pub/fedora/linux/releases/12/Fedora/i386/os/"
#如果使用本地安装后生成的 kickstart 文件,那么就要添加这个选项。
#该选项指定了网络安装时安装文件的位置。
#它的目录结构必须跟光盘中的结构完全相同。
# Root password
rootpw --iscrypted $1$jsonnTig$f7b4NFqCj2UBr.4bfrkH.0 #root用户密码,已经过加密处理
# System authorization information
auth --useshadow --passalgo=md5
# Use text mode install
text #如果不指定 text,那么默认会使用图形安装方式
# System keyboard
keyboard us # 这个是键盘布局,使用 us 键盘
# System language
lang en_US # 系统语言
# SELinux configuration
selinux --enforcing #selinux 选项
# Do not configure the X Window System
skipx
# Installation logging level
logging --level=info
# Reboot after installation
reboot
# System timezone
timezone Asia/Shanghai #系统默认时区
# System bootloader configuration
bootloader --location=mbr #引导程序安装位置
# Partition clearing information
clearpart --all --initlabel #分区选项,clearpart --all 即清空所有分区,--initlabel 表示初始化磁盘
%packages #软件包选项
@base #我的虚拟机配置太低,而且是通过网络安装,因此只选了最基本的包
%end


以上就是一份简单的 kickstart 文件内容,更多的选项可以参考 Fedora 文档 [3]中的 Fedora 安装指南,或者 Kickstart的wiki页面 [1]

2. bfo 镜像文件,这个文件可以直接到 bfo下载页面[4] 下载,我这里使用了光驱镜像文件,bfo.iso。如果你用实体机安装,建议还是用 USB 的镜像比较好,不到 1MB 的小东西,刻张盘太浪费了。
3. 网络连接
这个是必须的:)

安装


1. 首先从含有 bfo 镜像的设备启动,我这里的虚拟机就是用虚拟光盘引导了。引导界面如下图:

2. 通过 bfo 文件引导后,将进入如下的画面:

3. 选择第二项,Install Media,按回车键;
4. 接下来将看到类似如下图片的屏幕:

5. 这次安装的是 32位的 Fedora 12,选中后按 Tab 键,编辑引导选项。

在最后,我们加上 linux ks=http://my.example/ks.cfg,这指定了 kickstart 文件的位置。ks 文件的位置可以为本地,也可以为网络。这要根据具体情况办了。详细参数还是请看 kickstart 的wiki吧。
6. 添加 ks 文件位置后,按回车,自动安装就此开始了。如果 ks 文件配置正确,网络连接正常,过一会我们就可以使用我们的新系统了。

文中参考链接


[1] http://fedoraproject.org/wiki/Anaconda/Kickstart
[2] http://boot.fedoraproject.org/index
[3] http://docs.fedoraproject.org/
[4] http://boot.fedoraproject.org/download


2 comments:

rhe said...

蟹蟹分享!( ‵▽′)ψ

tiansworld said...

不客气,欢迎指正:)
你这么快就看到了