Centos 7Kickstart无人值守自动安装

时间:2024-03-14 12:04:33
说明:IP地址 172.16.1.90  DNS 222.222.222.222 网关 172.16.1.254

实现的目的是:批量安装centos 7操作系统

详细操作

第一部分在kickstart服务上操作

1、关闭selinux

[[email protected] ~]# vim /etc/selinux/config

SELINUX=disabled   //修改为disabled
#SELINUXTYPE=targeted  //注释掉

2、配置防火墙 允许:TCP 80 端口 和 UDP 69 端口  或者 关闭防火墙

[[email protected] ~]# yum -y install firewalld   //centos 7一般上面都没有安装包,它是用来启动防火墙服务的,类似于service iptables start


[[email protected] html]# firewall-cmd --zone=public --add-port=80/tcp --permanent //httpd服务需要此端口
[[email protected] html]# firewall-cmd --zone=public --add-port=69/udp --permanent  //tftp服务需要此端口

参数详解:

    --zone   作用域

    --add-port=80/tcp   添加端口, 格式为:  端口/ 通讯协议

    --permanent     永久生效,没有此参数,重启失效


[[email protected] ~]# systemctl start firewalld    //启动防火墙服务

3、安装httpd服务

[[email protected] ~]# yum -y install httpd  //安装httpd服务

[[email protected] ~]# systemctl start httpd  //启动httpd服务

[[email protected] ~]# systemctl enable httpd //将httpd服务加入开机自动启动

4、挂在系统安装镜像到httpd服务器站点根目录

[[email protected] ~]# mkdir /var/www/html/os/  //创建挂载目录
[[email protected] ~]# mount /dev/cdrom /var/www/html/os/ //挂载系统镜像

5、安装tftp服务

[[email protected] ~]# yum -y install tftp tftp-server xinetd//安装

[[email protected] ~]# vim /etc/xinetd.d/tftp //编辑

disable                 = no //修改

[[email protected] ~]# systemctl start xinetd  //启动

[[email protected] ~]# systemctl enable xinetd //将xinetd服务加入开机自动启动

[[email protected] ~]# cp /var/www/html/os/images/pxeboot/vmlinuz /var/lib/tftpboot/
[[email protected] ~]# cp /var/www/html/os/images/pxeboot/initrd.img /var/lib/tftpboot/
[[email protected] ~]# mkdir -p /var/lib/tftpboot/pxelinux.cfg
[[email protected] ~]# cp /var/www/html/os/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default
[[email protected] ~]# vim /var/lib/tftpboot/pxelinux.cfg/default

default linux   //修改
timeout 600

display boot.msg

# Clear the screen when exiting the menu, instead of leaving the menu displayed.
# For vesamenu, this means the graphical background is still displayed without
# the menu itself for as long as the screen remains in graphics mode.
menu clear
menu background splash.png
menu title CentOS Linux 7
menu vshift 8
menu rows 18
menu margin 8
#menu hidden
menu helpmsgrow 15
menu tabmsgrow 13

# Border Area
menu color border * #00000000 #00000000 none

# Selected item
menu color sel 0 #ffffffff #00000000 none

# Title bar
menu color title 0 #ff7ba3d0 #00000000 none

# Press [Tab] message
menu color tabmsg 0 #ff3a6496 #00000000 none

# Unselected menu item
menu color unsel 0 #84b8ffff #00000000 none

# Selected hotkey
menu color hotsel 0 #84b8ffff #00000000 none

# Unselected hotkey
menu color hotkey 0 #ffffffff #00000000 none

# Help text
menu color help 0 #ffffffff #00000000 none

# A scrollbar of some type? Not sure.
menu color scrollbar 0 #ffffffff #ff355594 none

# Timeout msg
menu color timeout 0 #ffffffff #00000000 none
menu color timeout_msg 0 #ffffffff #00000000 none

# Command prompt text
menu color cmdmark 0 #84b8ffff #00000000 none
menu color cmdline 0 #ffffffff #00000000 none

# Do not display the actual menu unless the user presses a key. All that is displayed is a timeout message.

menu tabmsg Press Tab for full configuration options on menu items.

menu separator # insert an empty line
menu separator # insert an empty line

label linux
  menu label ^Install CentOS Linux 7
  kernel vmlinuz
  append initrd=initrd.img ks=http://172.16.1.90/ks.cfg ksdevice=ens33 ip=dhcp    //修改

[[email protected] ~]# chmod -R 644 /var/lib/tftpboot/pxelinux.cfg/default   //设置文件文件权限
[[email protected] ~]# yum -y install syslinux  //安装引导程序

[[email protected] ~]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/  //拷贝引导文件到tftp服务根目录下

6、[[email protected] ~]# yum -y install dhcp //安装dhcp服务

ddns-update-style interim;  //设置DHCP服务器模式

subnet 172.16.1.0 netmask 255.255.255.0 { //配置网段
  range 172.16.1.100 172.16.1.200;  //配置dhcp服务器的租用地址范围
  option domain-name-servers 222.222.222.222;  //配置dns
  option domain-name "internal.example.org"; 
  option routers 172.16.1.254;  // 配置网关
  option broadcast-address 10.5.5.31;
  default-lease-time 600;  //默认租约时间
  max-lease-time 7200;  //最大租约时间
  next-server 172.16.1.90;  // tftp服务器地址
  filename "pxelinux.0"; //tftp服务器根目录下的文件名

[[email protected] ~]# vim /etc/sysconfig/dhcpd  //

DHCPDARGS=ens33  //设置dhcp服务器模式

[[email protected] ~]# dhcpd //测试dhcp服务配置是否正确
[[email protected] ~]# systemctl start dhcpd  //启动dhcpd服务
[[email protected] ~]# systemctl enable dhcpd //
7、配置kickstart自动安装文件

注意:在安装kickstart之前先编辑下面的文件,亲 一定要写否则会报错 例如:下面的这个图

Centos 7Kickstart无人值守自动安装

配置这个文件就不会显示软件包选择被禁止了

vim /etc/yum.repos.d/lxy.repo//编辑

[development]  //添加
name=my-centos7
baseurl=file:///var/www/html/os/
enabled=1
gpgcheck=0

[[email protected] ~]# yum -y install system-config-kickstart //安装kickstart

[[email protected] ~]# system-config-kickstart   //打开图形界面配置kickstart文件

注意:下面详细配置、请看大屏幕 呵呵!!!

Centos 7Kickstart无人值守自动安装Centos 7Kickstart无人值守自动安装Centos 7Kickstart无人值守自动安装Centos 7Kickstart无人值守自动安装Centos 7Kickstart无人值守自动安装Centos 7Kickstart无人值守自动安装Centos 7Kickstart无人值守自动安装Centos 7Kickstart无人值守自动安装Centos 7Kickstart无人值守自动安装Centos 7Kickstart无人值守自动安装

Centos 7Kickstart无人值守自动安装


下面软件包选择根据自己需要吧i

Centos 7Kickstart无人值守自动安装


第二部分在pxe客户机上做

注意:内存一定要2GB否则会报错

Centos 7Kickstart无人值守自动安装

进入Boot设置从网络启动

Centos 7Kickstart无人值守自动安装

开机之后,如图所示,系统已经自动启动了;以下是安装过程

Centos 7Kickstart无人值守自动安装Centos 7Kickstart无人值守自动安装Centos 7Kickstart无人值守自动安装Centos 7Kickstart无人值守自动安装

备注:系统安装完成之后,第一启动请设置为硬盘,否则系统重新之后又自动安装系统了,然后把自己的网卡断开

Centos 7Kickstart无人值守自动安装

就是慢,哎没办法 ,多等一会!

Centos 7Kickstart无人值守自动安装


安装成功,

Centos 7Kickstart无人值守自动安装

输入用户和密码,查看IP地址成功了,
Centos 7Kickstart无人值守自动安装

最后表扬一下自己!!!