利用KickStart无人值守安装Redhat
基于http传输镜像(也可用ftp传输)
syslinux介绍
syslinux是一个功能强大的引导加载程序,而且兼容各种介质。它的目的是简化首次安装Linux的时间,并建立修护或其它特殊用途的启动盘。它的安装很简单,一旦安装syslinux好之后,sysLinux启动盘就可以引导各种基于DOS的工具,以及MS-DOS/Windows或者任何其它操作系统
开始配置服务
一、安装相关包(dhcp xinetd tftp-server vsftpd syslinux system-config-kickstart)
dnf install dhcp-server
dnf install tftp-server
dnf install syslinux
dnf install xinetd
dnf install vsftpd
dnf install system-config-kickstart
二、配置dhcp服务器
需关闭虚拟机自带的 DHCP 服务
(1)修改dhcp配置文件
[root@localhost ~]# vim /etc/dhcp/dhcpd.conf
filename "pxelinux.0";
next-server 192.168.147.128;
subnet 192.168.147.0 netmask 255.255.255.0 {
option routers 192.168.147.1; #网关ip
option subnet-mask 255.255.255.0; #掩码
option domain-name-servers 114.114.114.114; #配置DNS域名解析
range dynamic-bootp 192.168.147.200 192.168.147.254;#地址动态范
围
default-lease-time 60;
max-lease-time 60;
}
(2)启动dhcp服务
[root@localhost ~]# systemctl restart dhcpd
[root@localhost ~]# systemctl enable dhcpd
三、配置tftp服务器
(1)修改tftp配置文件
[root@web ~]# vim /etc/xinetd.d/tftp
service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /tftpboot
disable = no
per_source = 11
cps = 100 2
flags = IPv4
}
(2)启动服务
[root@mail ~]# systemctl restart tftp
[root@mail ~]# systemctl restart xinetd
[root@mail ~]# systemctl enable xined
注:在7.0系统中如果服务无法启动,使用以下命令进行启动 systemctl start tftp.socket
四、配置 SYSLinux 服务
SYSLinux 是用于提供引导加载的服务程序,把 SYSLinux 的引导文件复制到 TFTP 服务程序的默认目录中,
即pxelinux.0,客户端主机就能顺利地获取到引导文件了
[root@localhost tftpboot]# cp /mnt/images/pxeboot/initrd.img
/var/lib/tftpboot/
[root@localhost tftpboot]# cp /mnt/images/pxeboot/vmlinuz
/var/lib/tftpboot/
[root@localhost]# cp /mnt/isolinux/ldlinux.c32 /var/lib/tftpboot/
[root@localhost]#cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
[root@localhost ~]# mkdir /var/lib/tftpboot/pxelinux.cfg
[root@localhost ~]# cd /var/lib/tftpboot/pxelinux.cfg
[root@localhost tftpboot]# cp /mnt/isolinux/isolinux.cfg
/var/lib/tftpboot/pxelinux.cfg/default
编辑 default 文件
[root@localhost tftpboot]# vim /var/lib/tftpboot/pxelinux.cfg/default
1 default linux
61 label linux
62 menu label ^Install Red Hat Enterprise Linux 8.3
63 kernel vmlinuz
64 append initrd=initrd.img ks=http://192.168.147.128/ks.cfg
五、配置vsftpd服务程序
(此处无人值守安装系统的服务中,光盘镜像是通过 http 协议传输的(设置启动,和开机
启动即可),如果要用ftp传输则要用到 vsftpd 服务程序,并在最后挂载到相应目录)
[root@mail ~]# systemctl restart vsftpd
[root@mail ~]# systemctl enable vsftpd
六、创建 ks 应答文件(用http传输)
[root@localhost ~] #cd /var/www/html
[root@localhost html]# mkdir pub
[root@localhost ~]# cp anaconda-ks.cfg /var/www/html/pub/ks.cfg
[root@localhost ~]# vim /var/www/html/pub/ks.cfg
#repo --name="AppStream" --baseurl=file:///run/install/sources/mount0000-cdrom/AppStream
url --url="http://192.168.147.128/pub" #此处用http传输,所以写服务端ip地址,也可用ftp传输
timezone Asia/Shanghai --isUtc --nontp
reboot
挂载到对应目录下(因为用http传输,所以挂载到http服务工作的目录下)
[root@localhost html]# mount /dev/sr0 /var/www/html/pub/