"如何使用Kickstart自动批量安装Linux客户端(CentOS)" 修訂間的差異
出自 YTYZX有图有真相的百科
行 139: | 行 139: | ||
以便有存在多个ks文件时可以手动输入选择不同ks文件。 | 以便有存在多个ks文件时可以手动输入选择不同ks文件。 | ||
[[File:Kickstart53.png]] | [[File:Kickstart53.png]] | ||
− | 54.在“boot:”后输入“linux ks=<nowiki>http://192.168.162.10/client01.cfg<nowiki>”,如存在多个ks文件时直接修改“client01.cfg”为对应文件名。 | + | 54.在“boot:”后输入“linux ks=<nowiki>http://192.168.162.10/client01.cfg</nowiki>”,如存在多个ks文件时直接修改“client01.cfg”为对应文件名。 |
[[File:Kickstart54.png]] | [[File:Kickstart54.png]] | ||
55.客户端根据ks文件配置开始安装系统。 | 55.客户端根据ks文件配置开始安装系统。 |
於 2015年6月24日 (三) 15:12 的修訂
以下示例為通過網絡調用Kickstart配置文件進行快速部署安裝Linux(本例中為CentOS6),基本原理為使用工作於Client/Server模式下Intel公司PXE(Preboot eXecution Environment詳情請點擊維基百科),通過網絡下載系統鏡像並安裝。在啟動過程中,終端請求伺服器分配IP位址後,使用TFTP(Trivial File Transfer Protocol)協議下載軟體包到本機內存中執行,並根據預先配置文件(本例中為client01.cfg)完成終端系統安裝及設置。
服务器(虚拟机)配置如下: 域名: test.com 操作系统:CentOS 6(2.6.32-504.e16.x86_64) 主机名: osdis.test.com IP地址: 192.168.162.10 子网掩码:255.255.255.0(24) 网关: 192.168.162.2 DNS: 192.168.1.1
1.PXE基本原理如下。
2.输入“ifconfig”查看服务器IP配置。
安裝及配置軟體
3.输入“yum -y install httpd”安装Apache。
4.提示已经安装完毕。
5.输入“chkconfig --level 35 httpd on”设置Apache开机时以35模式自动启动。
6.输入“service httpd start”启动Apache。
7.输入“yum -y install tftp-server”安装tftp。
8.提示已经安装完毕。
9.输入“vi /etc/xinetd.d/tftp”编辑。
10.注意下图中“server_args = -s /var/lib/tftpboot”在CentOS不同版本中的区别。
11.按“i”进入编辑状态,修改“disable”后的值为“no(默认为yes)”,确认无误后按“ESC”,并输入“:x”保存退出。
12.输入“/etc/init.d/xinetd start”启动tftp。
13.输入“chkconfig --level 35 xinetd on”并按回车键确定,确保开机自动启动tftp.
14.输入“yum -y install dhcp”安装DHCP。
15.提示已经安装完毕。
16.输入“cp -f /usr/share/doc/dhcp-4.11/dhcpd.conf.sample /etc/dhcp/dhcpd.conf”复制默认配置。 提示是否覆盖时输入“y”并按回车键确定。
17.输入“vi /etc/dhcp/dhcpd.conf”编辑配置文件。
18.修改下图蓝色框内部分为自己的配置。
19.一般内网建议设置动态DNS为none。
20.设置网络配置(中括号内为局部配置,冲突时优先级高于全局配置)。 注意:每一行需用英文分号;结尾。
21.filename设置为"pxelinux.0",next-server设置为你的服务器地址(本例中为192.168.162.10),其他租约时间等默认即可,确认无误后输入“:x”保存退出。
22.输入“service dhcpd start”启动DHCP服务。 注意:如有故障请在/var/log/message查看日志文件。
23.输入“chkconfig --level 35 dhcpd on”设置为开机以35模式启动DHCP。
複製文件
24.确保服务器连接正确的镜像(本例中为CentOS的完整镜像)。
25.输入“mkdir /mnt/OS”在/mnt下新建一个名为OS的文件夹(注意大小写)。
26.输入“mount /dev/cdrom /mnt/OS”将镜像挂载到OS目录下。
27.输入“cp -r /mnt/OS/ /var/www/html/”将镜像所有文件及文件夹复制到html目录下。
28.输入“cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/”将pxelinux.0复制到tftpboot目录下。
29.输入“cp /var/www/html/OS/images/pxeboot/initrd.img /var/lib/tftpboot”将initrd.img复制到tftpboot目录下。 注意:CentOS 5的路径可能不同。
30.输入“cp /var/www/html/OS/images/pxeboot/vmlinuz /var/lib/tftpboot/”将vmlinuz复制到tftpboot目录下。 注意:CentOS 5的路径可能不同。
31.输入“cp /var/www/html/OS/isolinux/*.msg /var/lib/tftpboot”将所有msg文件复制到tftpboot目录下。 注意:CentOS 5的路径可能不同。
32.输入“mkdir /var/lib/tftpboot/pxelinux.cfg”新建名为pxelinux.cfg的文件夹。 注意:CentOS 5的路径可能不同。
33.输入“cp /var/www/html/OS/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default”复制isolinux.cfg文件到pxelinux.cfg目录下并重命名为default。 注意:CentOS 5的路径可能不同。
34.输入“vi /var/lib/tftpboot/pxelinux.cfg/default”编辑default文件。 注意:CentOS 5的路径可能不同。
35.编辑结果如下,确认无误后输入“:x!”强制保存退出。 注意:default vesa行表示需要在安装时手动输入ks文件文件,以方便选择不同ks文件。 如修改为default linux则会自动调用默认ks文件进行安装。
安裝及配置Kickstart配置程序
36.输入“yum -y install system-config-kickstart”安装。
37.提示已经安装完毕。
38.输入“startx”并按回车键确定,转到图形界面。
39.在桌面空白处点击鼠标右键并选择“Open in Terminal”打开命令行。
40.输入“system-config-kickstart”启动Kickstart配置程序。
41.选择“Basic Configuration”,并在右侧根据您的需求进行设置。 注意:不建议取消“Encrypt root password(加密根密码)”。
42.选择“Installation Method”,在右侧选择“HTTP”并输入服务器IP地址及路径。
43.选择“Partition Information”,在右侧根据您的需求进行选择,最后点击“Add”进行分区。
44.手动分区结果如下。
45.选择“Network Configuration”,在右侧点击“Add Network Device”,在弹出窗口“Network Device”中输入“eth0”, 在“Network Type”中选择“Static IP”并输入静态IP信息,确认无误后点击“OK”确定。
46.选择“Firewall Configuration”并在右侧根据您的需求进行设置。
47.选择“Display Configuration”并在右侧根据您的需求进行设置。本例中不安装图形界面并取消设置向导。
48.选择“Package Selection”并在右侧根据您的需求进行设置。
49.确认所有设置无误后点击右上角“File”并选择“Save”进行保存。
50.点击“Save in folder”后面的图标并选择保存到/var/www/html/client01.cfg。
安裝客戶端
51.设置客户端为网络启动。 注意:不同BIOS可能设置有区别。
52.客户端已从DHCP服务器获取IP地址(本例中为192.168.162.100)。
53.提示“Could not find kernel image: vesamenu.c32”,这是因为在default文件里面设置为“default vesa”, 以便有存在多个ks文件时可以手动输入选择不同ks文件。
54.在“boot:”后输入“linux ks=http://192.168.162.10/client01.cfg”,如存在多个ks文件时直接修改“client01.cfg”为对应文件名。
55.客户端根据ks文件配置开始安装系统。
56.系统安装完毕并自动重启。
57.设置客户端从硬盘启动并按“F10”保持退出。
58.客户端系统安装完毕,输入ks文件里设置的密码登录即可。
59.输入“ifconfig”查看网络配置,结果符合“client01.cfg”里面的设置。
60.如需所有客户端使用相同配置进行全自动安装(无应答安装或无人值守安装),则输入“vi /var/lib/tftpboot/pxelinux.cfg/default”编辑default文件。
61.按“i”键进入编辑状态,并修改“default vesa”为“default linux”,并输入“:x!”强制保存退出。
62.在Kickstart配置程序里将“Network Configuration”将网卡设置为从DHCP获取动态IP地址,从而防止IP冲突。
63.启动客户端安装将自动调用“client01.cfg”进行无应答安装。
故障
64.输入“system-config-kickstart”如一直出现如下画面,则需保证服务器可以连接上互联网。
65.启动客户端安装出现如下画面,可正常从DHCP服务器获取动态IP地址,但提示“PXE-E32: TFTP open timeout”。
66.在服务器端输入“service iptables stop”暂时关闭防火墙,重新进行客户端安装。
67.如需永久关闭防火墙(不建议),则在服务器端输入“chkconfig iptables off”并按回车键确定。
68.建议输入“iptables -I INPUT -p udp --dport 69 -j ACCEPT”并按回车键打开69端口。
69.输入“service iptables save”并按回车键保存设置。
70.输入“service iptables restart”重启防火墙,重新进行客户端安装。
71.如出现“Error downloading kickstart file”错误,如下图所示。
72.输入“iptables -I INPUT -p tcp --dport 80 -j ACCEPT”并按回车键打开80端口。
73.输入“service iptables save”并按回车键保存设置。
74.输入“service iptables restart”重启防火墙,重新进行客户端安装。