首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

使用 Cobbler 自动化和管理系统安装(2)

使用 Cobbler 自动化和管理系统安装(2)

安装 Fedora 17 系统准备 Cobbler 以安装 Fedora 17 系统,有两个选项可用:Xfce 或 GNOME 桌面。要添加 Fedora 安装树,首先需要下载 ISO 媒介,然后运行以下命令来挂载媒介并解压缩其内容。(在一些系统中,Cobbler 可能无法看到挂载的目录内容,而且无法导入媒介。如果遇到这种问题,可在执行挂载命令后重新启动 Cobbler 服务。):
1
2
mount -o loop /Fedora-17-x86_64-DVD.iso /mnt/iso
cobbler import --arch=x86_64 --path=/mnt/iso --name=Fedora17




Cobbler 现在将媒介内容复制到文件系统。请耐心等待:该操作可能需要一段时间才能完成。命令 cobbler import 很方便,它会自动为您创建一个发行版和一个配置文件对象。您也可以将 Cobbler 直接指向一个网络存储库。结果类似于清单 3:
清单 3. cobbler import 命令的结果
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
cobbler distro report
Name                           : Fedora17-x86_64
Architecture                   : x86_64
TFTP Boot Files                : {}
Breed                          : redhat
Comment                        :
Fetchable Files                : {}
Initrd                         : /var/www/cobbler/ks_mirror/Fedora17-x86_64/images/
                                  pxeboot/initrd.img
Kernel                         : /var/www/cobbler/ks_mirror/Fedora17-x86_64/images/
                                  pxeboot/vmlinuz
Kernel Options                 : {}
Kernel Options (Post Install)  : {}
Kickstart Metadata             : {'tree': 'http://@@http_server@@/cblr/links/
                                  Fedora17-x86_64'}
Management Classes             : []
OS Version                     : generic26
Owners                         : ['admin']
Red Hat Management Key         : <<inherit>>
Red Hat Management Server      : <<inherit>>
Template Files                 : {}

cobbler profile report

Name                           : Fedora17-x86_64
TFTP Boot Files                : {}
Comment                        :
DHCP Tag                       : default
Distribution                   : Fedora17-x86_64
Enable gPXE?                   : 0
Enable PXE Menu?               : 1
Fetchable Files                : {}
Kernel Options                 : {}
Kernel Options (Post Install)  : {}
Kickstart                      :
Kickstart Metadata             : {}
Management Classes             : []
Management Parameters          : <<inherit>>
Name Servers                   : []
Name Servers Search Path       : []
Owners                         : ['admin']
Parent Profile                 :
Proxy                          :
Red Hat Management Key         : <<inherit>>
Red Hat Management Server      : <<inherit>>
Repos                          : []
Server Override                : <<inherit>>
Template Files                 : {}
Virt Auto Boot                 : 1
Virt Bridge                    : xenbr0
Virt CPUs                      : 1
Virt Disk Driver Type          : raw
Virt File Size(GB)             : 5
Virt Path                      :
Virt RAM (MB)                  : 512
Virt Type                      : qemu




这个配置文件是您将为希望安装的每个桌面创建的其他两个配置文件的父文件。
但是,在这么做之前,要考虑到您有一个 yum 存储库,这个存储库中包含更多要在安装中使用的程序包。为此,创建一个存储库对象:
1
2
3
4
cobbler repo add --arch=x86_64 --name=Flash-plugin \
  --mirror=http://linuxdownload.adobe.com/linux/x86_64/
cobbler reposync
cobbler repo report




对于 yum 存储库 URL,Cobbler 接受 http://、ftp://、rsync://、文件系统路径和 ssh 位置(通过使用基于私钥的身份验证)。reposync 操作很重要,因为它会从远程存储库中复制文件。如果创建了存储库对象但未运行 reposync,那么您的存储库将是空的,而且您的安装可能会失败。
要完成存储库激活,可将存储库与一个配置文件相关联。使用以下命令将其与 Fedora 配置文件相关联:
1
cobbler profile edit --name=Fedora17-x86_64 --repos=Flash-plugin




创建配置文件下一步是创建配置文件。对于自动安装,使用 kickstart 模板特性指定一个 kickstart 文件。创建一个基于 /var/lib/cobbler/kickstarts 中的文件的简单 kickstart。然后,在 %packages 一节中,定义变量 $desktop_pkg_group,该变量在后面会被替换来确定安装哪些桌面包。清单 4 显示了 kickstart 文件的内容:
清单 4. kickstart 文件的内容
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
# System bootloader configuration
bootloader --location=mbr
# Partition clearing information
clearpart --all --initlabel
# Run the Setup Agent on first boot
firstboot --disable
# Activate X
xconfig --startxonboot
# Use network installation
url --url=$tree
# additional repostories get added here
$yum_repo_stanza
# Reboot after installation
reboot
# System keyboard
keyboard us
# System language
lang en_US
# System timezone
timezone  America/New_York
# Root password
rootpw --iscrypted $default_password_crypted
# Install OS instead of upgrade
install
# Clear the Master Boot Record
zerombr
# Allow anaconda to partition the system as needed
autopart

%packages
@base
@base-x
firefox
flash-plugin
$desktop_pkg_group
%end

%post
# create a default user to log in X
useradd desktop-user
passwd -d desktop-user

# adds the yum repositories to the installed system
$yum_config_stanza
# cobbler final steps
$SNIPPET('kickstart_done')
%end




$ 开头的变量替换为 Cheetah 程序,Cobbler 使用该程序处理其模板。如果熟悉 Cheetah 模板,那么规则都是一样的。如需了解有关内部 Cobbler 变量的更多信息,比如 $yum_config_stanza,请查阅 /var/lib/cobbler/kickstarts 中的可用 kickstart。
创建该文件后,将其复制到 /var/lib/cobbler/kickstarts(如果不这么做,Cobbler 可能无法使用它)。Cobbler 知道 $desktop_pkg_group 的值,因为您在创建配置文件时已使用 --ksmeta 选项对其定义过。使用此选项,可确定在替换 kickstart 模板中的一个变量时要使用的值。清单 5 中的命令创建了 Xfce 和 GNOME 配置文件:
清单 5. 创建 Xfce 和 GNOME 配置文件的命令
1
2
3
4
5
6
7
8
9
cobbler profile add --name=Fedora17-xfce \
                    --ksmeta='desktop_pkg_group=@xfce-desktop' \
                    --kickstart=/var/lib/cobbler/kickstarts/example.ks \
                    --parent=Fedora17-x86_64
cobbler profile add --name=Fedora17-gnome \
                    --ksmeta='desktop_pkg_group=@gnome-desktop' \
                    --kickstart=/var/lib/cobbler/kickstarts/example.ks \
                    --parent=Fedora17-x86_64
cobbler profile report




--parent 参数告诉这些配置文件继承 Fedora 配置文件。这些配置文件使用 Fedora 发行版和额外的 Flash-plugin 存储库。要确保一切设置都是正确的,可在处理之后验证 kickstart 内容。结果类似于清单 6:
清单 6. 验证 kickstart 内容
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
cobbler profile getks --name=Fedora17-xfce

# System bootloader configuration
bootloader --location=mbr
# Partition clearing information
clearpart --all --initlabel
# Run the Setup Agent on first boot
firstboot --disable
# Activate X
xconfig --startxonboot
# Use network installation
url --url=http://192.168.122.1/cblr/links/Fedora17-x86_64
# additional repostories get added here
repo --name=Flash-plugin --baseurl=http://192.168.122.1/cobbler/repo_mirror/Flash-plugin
repo --name=source-1 --baseurl=http://192.168.122.1/cobbler/ks_mirror/Fedora17-x86_64

# Reboot after installation
reboot
# System keyboard
keyboard us
# System language
lang en_US
# System timezone
timezone  America/New_York
# Root password
rootpw --iscrypted $1$mF86/UHC$WvcIcX2t6crBz2onWxyac.
# Install OS instead of upgrade
install
# Clear the Master Boot Record
zerombr
# Allow anaconda to partition the system as needed
autopart

%packages
@base
@base-x
firefox
flash-plugin
@xfce-desktop
%end

%post
# create a user we can use to log on X
useradd desktop-user
passwd -d desktop-user

# adds the yum repositories to the installed system
wget "http://192.168.122.1/cblr/svc/op/yum/profile/Fedora17-xfce" \
   --output-document=/etc/yum.repos.d/cobbler-config.repo

# cobbler final steps


wget "http://192.168.122.1/cblr/svc/op/ks/profile/Fedora17-xfce" -O /root/cobbler.ks
wget "http://192.168.122.1/cblr/svc/op/trig/mode/post/profile/Fedora17-xfce" -O /dev/null
%end




变量 $dekstop_pkg_group 已被正确替换为 @xfce-desktop,它告诉 Anaconda 安装程序安装 Xfce 桌面包分组。
返回列表