更改

跳转至: 导航搜索

如何使用Kickstart自动批量安装Linux客户端(CentOS)

添加10,664字节, 2022年3月24日 (四) 20:26
恢复45.77.171.9讨论)的编辑至Ytyzx的最后版本
e以下示例为通过网络调用Kickstart配置文件进行快速部署安装(无人值守安装)Linux(本例中为CentOS6)。基本原理为使用工作于Client/Server模式下Intel公司PXE(Preboot eXecution Environment详情请点击[http://zh.wikipedia.org/wiki/%E9%A2%84%E5%90%AF%E5%8A%A8%E6%89%A7%E8%A1%8C%E7%8E%AF%E5%A2%83 维基百科]),通过网络下载系统镜像并安装。在启动过程中,终端请求服务器分配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基本原理如下。[[File:PXE.png]] 2.输入“ifconfig”查看服务器IP配置。[[File:Kickstart1.png]] == 安装及配置软件 ==  3.输入“yum -y install httpd”安装Apache。[[File:Kickstart2.png]] 4.提示已经安装完毕。[[File:Kickstart3.png]] 5.输入“chkconfig --level 35 httpd on”设置Apache开机时以35模式自动启动。[[File:Kickstart4.png]] 6.输入“service httpd start”启动Apache。[[File:Kickstart5.png]] 7.输入“yum -y install tftp-server”安装tftp。[[File:Kickstart6.png]] 8.提示已经安装完毕。[[File:Kickstart7.png]] 9.输入“vi /etc/xinetd.d/tftp”编辑。[[File:Kickstart8.png]] 10.注意下图中“server_args = -s /var/lib/tftpboot”在CentOS不同版本中的区别。[[File:Kickstart9.png]] 11.按“i”进入编辑状态,修改“disable”后的值为“no(默认为yes)”,确认无误后按“ESC”,并输入“:x”保存退出。[[File:Kickstart10.png]] 12.输入“/etc/init.d/xinetd start”启动tftp。[[File:Kickstart11.png]] 13.输入“chkconfig --level 35 xinetd on”并按回车键确定,确保开机自动启动tftp.[[File:Kickstart12.png]] 14.输入“yum -y install dhcp”安装DHCP。[[File:Kickstart13.png]] 15.提示已经安装完毕。[[File:Kickstart14.png]] 16.输入“cp -f /usr/share/doc/dhcp-4.11/dhcpd.conf.sample /etc/dhcp/dhcpd.conf”复制默认配置。 提示是否覆盖时输入“y”并按回车键确定。[[File:Kickstart15.png]] 17.输入“vi /etc/dhcp/dhcpd.conf”编辑配置文件。[[File:Kickstart16.png]] 18.修改下图蓝色框内部分为自己的配置。[[File:Kickstart17.png]] 19.一般内网建议设置动态DNS为none。[[File:Kickstart18.png]] 20.设置网络配置(中括号内为局部配置,冲突时优先级高于全局配置)。 注意:每一行需用英文分号;结尾。[[File:Kickstart19.png]] 21.filename设置为"pxelinux.0",next-server设置为你的服务器地址(本例中为192.168.162.10),其他租约时间等默认即可,确认无误后输入“:x”保存退出。[[File:Kickstart20.png]] 22.输入“service dhcpd start”启动DHCP服务。 注意:如有故障请在/var/log/message查看日志文件。[[File:Kickstart21.png]] 23.输入“chkconfig --level 35 dhcpd on”设置为开机以35模式启动DHCP。[[File:Kickstart22.png]] == 复制文件 == 24.确保服务器连接正确的镜像(本例中为CentOS的完整镜像)。[[File:Kickstart23.png]] 25.输入“mkdir /mnt/OS”在/mnt下新建一个名为OS的文件夹(注意大小写)。[[File:Kickstart24.png]] 26.输入“mount /dev/cdrom /mnt/OS”将镜像挂载到OS目录下。[[File:Kickstart25.png]] 27.输入“cp -r /mnt/OS/ /var/www/html/”将镜像所有文件及文件夹复制到html目录下。[[File:Kickstart26.png]] 28.输入“cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/”将pxelinux.0(启动镜像文件)复制到tftpboot目录下。[[File:Kickstart27.png]] 29.输入“cp /var/www/html/OS/images/pxeboot/initrd.img /var/lib/tftpboot”将initrd.img复制到tftpboot目录下。 注意:CentOS 5的路径可能不同。[[File:Kickstart28.png]] 30.输入“cp /var/www/html/OS/images/pxeboot/vmlinuz /var/lib/tftpboot/”将vmlinuz复制到tftpboot目录下。 注意:CentOS 5的路径可能不同。[[File:Kickstart29.png]] 31.输入“cp /var/www/html/OS/isolinux/*.msg /var/lib/tftpboot”将所有msg文件复制到tftpboot目录下。 注意:CentOS 5的路径可能不同。[[File:Kickstart30.png]] 32.输入“mkdir /var/lib/tftpboot/pxelinux.cfg”新建名为pxelinux.cfg的文件夹。 注意:CentOS 5的路径可能不同。[[File:Kickstart31.png]] 33.输入“cp /var/www/html/OS/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default”复制isolinux.cfg文件到pxelinux.cfg目录下并重命名为default。 注意:CentOS 5的路径可能不同。[[File:Kickstart32.png]] 34.输入“vi /var/lib/tftpboot/pxelinux.cfg/default”编辑default文件。 注意:CentOS 5的路径可能不同。[[File:Kickstart33.png]] 35.编辑结果如下,确认无误后输入“:x!”强制保存退出。 注意:default vesa行表示需要在安装时手动输入ks文件文件,以方便选择不同ks文件。 如修改为default linux则会自动调用默认ks文件进行安装。[[File:Kickstart34.png]] == 安装及配置Kickstart配置程序 == 36.输入“yum -y install system-config-kickstart”安装。[[File:Kickstart35.png]] 37.提示已经安装完毕。[[File:Kickstart36.png]] 38.输入“startx”并按回车键确定,转到图形界面。[[File:Kickstart37.png]] 39.在桌面空白处点击鼠标右键并选择“Open in Terminal”打开命令行。[[File:Kickstart38.png]] 40.输入“system-config-kickstart”启动Kickstart配置程序。[[File:Kickstart39.png]] 41.选择“Basic Configuration”,并在右侧根据您的需求进行设置。 注意:不建议取消“Encrypt root password(加密根密码)”。[[File:Kickstart40.png]] 42.选择“Installation Method”,在右侧选择“HTTP”并输入服务器IP地址及路径。[[File:Kickstart41.png]] 43.选择“Partition Information”,在右侧根据您的需求进行选择,最后点击“Add”进行分区。[[File:Kickstart42.png]] 44.手动分区结果如下。[[File:Kickstart43.png]] 45.选择“Network Configuration”,在右侧点击“Add Network Device”,在弹出窗口“Network Device”中输入“eth0”, 在“Network Type”中选择“Static IP”并输入静态IP信息,确认无误后点击“OK”确定。[[File:Kickstart45.png]] 46.选择“Firewall Configuration”并在右侧根据您的需求进行设置。[[File:Kickstart46.png]] 47.选择“Display Configuration”并在右侧根据您的需求进行设置。本例中不安装图形界面并取消设置向导。[[File:Kickstart46.png]] 48.选择“Package Selection”并在右侧根据您的需求进行设置。[[File:Kickstart48.png]] 49.确认所有设置无误后点击右上角“File”并选择“Save”进行保存。[[File:Kickstart49.png]] 50.点击“Save in folder”后面的图标并选择保存到/var/www/html/client01.cfg。[[File:Kickstart50.png]] == 安装客户端 == 51.设置客户端为网络启动。 注意:不同BIOS可能设置有区别。[[File:Kickstart51.png]] 52.客户端已从DHCP服务器获取IP地址(本例中为192.168.162.100)。[[File:Kickstart52.png]] 53.提示“Could not find kernel image: vesamenu.c32”,这是因为在default文件里面设置为“default vesa”, 以便有存在多个ks文件时可以手动输入选择不同ks文件。[[File:Kickstart53.png]] 54.在“boot:”后输入“linux ks=<nowiki>http://192.168.162.10/client01.cfg</nowiki>”,如存在多个ks文件时直接修改“client01.cfg”为对应文件名。[[File:Kickstart54.png]] 55.客户端根据ks文件配置开始安装系统。[[File:Kickstart55.png]] 56.系统安装完毕并自动重启。[[File:Kickstart56.png]] 57.设置客户端从硬盘启动并按“F10”保持退出。[[File:Kickstart44.png]] 58.客户端系统安装完毕,输入ks文件里设置的密码登录即可。[[File:Kickstart57.png]] 59.输入“ifconfig”查看网络配置,结果符合“client01.cfg”里面的设置。[[File:Kickstart58.png]] 60.如需所有客户端使用相同配置进行全自动安装(无应答安装或无人值守安装),则输入“vi /var/lib/tftpboot/pxelinux.cfg/default”编辑default文件。[[File:Kickstart33.png]] 61.按“i”键进入编辑状态,并修改“default vesa”为“default linux”,并输入“:x!”强制保存退出。[[File:Kickstart59.png]] 62.在Kickstart配置程序里将“Network Configuration”将网卡设置为从DHCP获取动态IP地址,从而防止IP冲突。[[File:Kickstart60.png]] 63.启动客户端安装将自动调用“client01.cfg”进行无应答安装。 注意:安装完毕将自动重启,请将BIOS设置为从硬盘启动,否则将重复安装。[[File:Kickstart61.png]] == 故障 == 64.输入“system-config-kickstart”如一直出现如下画面,则需保证服务器可以连接上互联网。[[File:Kickstart62.png]] 65.启动客户端安装出现如下画面,可正常从DHCP服务器获取动态IP地址,但提示“PXE-E32: TFTP open timeout”。[[File:Kickstart63.png]] 66.在服务器端输入“service iptables stop”暂时关闭防火墙,重新进行客户端安装。[[File:Kickstart64.png]] 67.如需永久关闭防火墙(不建议),则在服务器端输入“chkconfig iptables off”并按回车键确定。[[File:Kickstart65.png]] 68.建议输入“iptables -I INPUT -p udp --dport 69 -j ACCEPT”并按回车键打开69端口。[[File:Kickstart66.png]] 69.输入“service iptables save”并按回车键保存设置。[[File:Kickstart67.png]] 70.输入“service iptables restart”重启防火墙,重新进行客户端安装。[[File:Kickstart68.png]] 71.如出现“Error downloading kickstart file”错误,如下图所示。 Unable to download the kickstart file. Please modify the kickstart parameter below or press Cancel to proceed as an interactive installtion.[[File:Kickstart69.png]] 72.输入“iptables -I INPUT -p tcp --dport 80 -j ACCEPT”并按回车键打开80端口。[[File:Kickstart70.png]] 73.输入“service iptables save”并按回车键保存设置。[[File:Kickstart67.png]] 74.输入“service iptables restart”重启防火墙,重新进行客户端安装。[[File:Kickstart68.png]]
1,138
个编辑

导航菜单