前提条件:
1.BIOS支持
2.网卡支持
10年前额外购买网卡今天网卡都是主板自带的,一般都支持PXE,需要在BIOS中开启这个开关,服务器在BMC界面打开
现在的100%都支持
关闭防火墙:
systemctl stop firewalld
systemctl disable firewalld
关闭selinux
临时关闭
setenforce 0
永久关闭
vim /etc/selinux/config
SELINUX=disabled
vm关闭本地dhcp服务
打开虚拟网络编辑器
更改设置 (有的没有更改设置可以直接更改)
把DHCP服务关掉(使用哪个网络模式安装就关哪个或者全关)
搭建dhcp服务(为机器分配临时IP)
安装dhcp
yum/apt install dhcp -y
cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
修改配置文件:
vim /etc/dhcp/dhcpd.conf
subnet 10.10.10.0 netmask 255.255.255.0 {
range 10.10.10.10 10.10.10.100;
option domain-name-servers ns1.internal.example.org;
option domain-name "internal.example.org";
option routers 10.10.10.1;
# option broadcast-address 10.5.5.31;
default-lease-time 600;
max-lease-time 7200;
next-server 10.10.10.1;
filename "pxelinux.0";
}
重启DHCP服务:
service dhcpd restart / systemctl restart dhcpd
检测DHCP服务是否启动:
ss -anplu | grep :67
搭建tftp服务
(为系统提供可下载的内核文件vmlinuz、驱动程序initrd.img和pxelinux.0)
安装tftp服务(琐碎文件传输协议)
yum install xinetd -y
yum install tftp-server tftp -y
更改配置文件:
vim /etc/xinetd.d/tftp
重启xinetd服务(tftp没有自己的启动脚本)
systemctl restart xinetd
检查tftp服务是否启动
netstat / ss -anplu | grep :69
检测服务是否可用(这一步可以不做)
将一个普通文件复制到/var/lib/tftpboot/目录下
登录tftp服务器:
下载这个文件到当前目录
查看是否成功
记得删除/var/lib/tftpboot/下的这个文件
准备预安装文件
查找pxelinux.0在哪个包里面有
yum provides "*/pxelinux.0"
查看有没有安装:
rpm -qa | grep syslinux
若没有安装则
yum install syslinux -y
再(若有安装则直接)查找文件位置:
rpm -ql syslinux | grep pxelinux.0
把文件复制到tftp服务下的目录:
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
挂载系统镜像文件:
mount /dev/cdrom /yum
拷贝内核和驱动程序
cp /yum/images/pxeboot/{vmlinuz,initrd.img} /var/lib/tftpboot/
拷贝配置文件
mkdir /var/lib/tftpboot/pxelinux.cfg
cp /yum/isolinux/isolinux.cfg
/var/lib/tftpboot/pxelinux.cfg/default
修改配置文件:
修改第一行默认启动项:
/var/lib/tftpboot/pxelinux.cfg/default
为:
默认启动项的名字一定要和下面的启动项名字对应:
修改配置文件为:
查看/var//lib/tftpboot/目录下一定要有三个文件一个目录
配置http服务
yum install httpd -y
创建系统镜像文件和应答文件的目录
和上面/var/lib/tftpboot/pxelinux.cfg/default指定的位置相同即可。
mkdir /var/www/html/{ks, iso}
挂载光盘或者镜像文件到/pxe/iso目录,形成安装源
mount /dev/cdrom /var/www/html/iso/
开机生效,添加二选一即可
1.vim /etc/fstab
/dev/cdrom /var/www/html/iso iso9660 defaults,loop 0 0
检查是否挂载文件
mount -a
df查看是否挂载
2. vim /etc/rc.local
mount -t iso9660 /dev/cdrom /yum
chmod +x /etc/rc.local
并启动apache服务
systemctl restart httpd
安装图形化界面,若有则不用安装
yum groupinstall "X Window System" -y
yum groupinstall "GNOME Desktop" -y
systemctl set-default graphical.target
重启后默认是图形化界面
创建ks.cfg文件:
yum install system-config-kickstart -y
前提:必须做好yum库
cd /etc/yum.repos.d/
[development]
name=xe install
baseurl=http://192.168.136.101 /iso
gpgcheck=0
enabled=1
制作ks文件:
在vm图形化界面或xshell自带的图形化界面或secure CRT配合Xming输入system-config-kickstart启动ks文件的制作:
软件包选择
系统-基本
桌面-字体、GNOME、X Windows
虚拟化-四个都选
安装后脚本
#!/bin/bash
cat > /etc/yum.repos.d/dvd.repo <<END
[development]
name=rhel7
baseurl=http://192.168.136.101 /iso
enabled=1
gpgcheck=0
END
yum -y install vim
sleep 10
yum -y install httpd
sleep 10
systemctl enable httpd
systemctl start httpd
echo "centos 7.6" >> /var/www/html/index.html
红帽系统以及其他系统必须强制创建普通用户
可以在KS安装后脚本中添加
useradd admin echo redhat |passwd --stdin admin
然后点击左上角文件保存到root目录下,命名文件为ks.cfg
复制这个文件到/var/www/html/ks/目录下:
cp ks.cfg /var/www/html/ks/
重启apache服务:
systemctl restart httpd
或service httpd restart
查看ks文件
重启客户机即可进行无人值守安装系统
若报错或出现错误,检查日志信息:
tail -f /var/log/messages
检查error或Warning行(一般是error行)