kickstart无人值守安装虚拟机

本文提供了一步一步的指南来通过PXE方式安装CentOS 6.5系统,包括网络配置、DHCP及TFTP服务器的搭建、HTTPD服务启用、引导文件配置等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、检查网络,能否上网

2、安装dhcp

yum install dhcp –y

 配置

vim /etc/dhcp/dhcpd.conf

启动/etc/init.d/dhcpd start

 3、使客户机可以外网

vim /etc/sysctl.conf


sysctl -p   

nat转发

iptables –F

iptables -t nat -A POSTROUTING -s 192.168.102.0/24  -j MASQUERADE

4、安装tftp服务器

yum install tftp-server -y

修改配置文件


启动

/etc/init.d/xinetd start

检查


5、安装httpd服务

   yum install httpd -y

   启动

   /etc/init.d/httpd start

6、准备pxe开机引导文件

yum install syslinux -y

cd /var/lib/tftpboot/

cp /usr/share/syslinux/pxelinux.0 .

cp /var/www/html/centos/isolinux/* .

mkdir pxelinux.cfg

cd pxelinux.cfg/

mv ../isolinux.cfg default

vim default


mkdir /var/www/html/ks

cd /var/www/html/ks

vim 6.5-ks.cfg


# Kickstart file automatically generated by anaconda.

#version=DEVEL

install

url --url=http://10.0.0.200/centos/

lang en_US.UTF-8

keyboard us

network --onboot yes --device eth0 --bootproto dhcp --noipv6

# Kickstart file automatically generated by anaconda.

 

#version=DEVEL

install

url --url=http://10.0.0.200/centos/

lang en_US.UTF-8

keyboard us

network --onboot yes --device eth0 --bootproto dhcp --noipv6

firewall --disabled

authconfig --enableshadow --passalgo=sha512

selinux --disabled

timezone Asia/Shanghai

bootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet"

# The following is the partition information you requested

# Note that any partitions you deleted are not expressed

# here so unless you clear all partitions first, this is

# not guaranteed to work

zerombr

clearpart --all --initlabel

part /boot --fstype=ext4 --asprimary --size=200

part swap --asprimary --size=2048

part / --fstype=ext4 --grow --asprimary --size=200

 

reboot

 

repo --name="CentOS"  --baseurl=http://10.0.0.200/centos/ --cost=100

 

%packages

@base

@compat-libraries

@core

@debugging

@server-policy

@workstation-policy

python-dmidecode

sgpio

device-mapper-persistent-data

net-tools

vim

lrzsz

wget

tree

screen

lsof

tcpdump

%end

 

%post

echo 'begin youhua' >>/tmp/install.log

chkconfig|awk '{print $1}'|grep -Ev 'crond|rsyslog|sshd|sysstat|network'|awk '{print "chkconfig " $0 " off"}'|bash

sed -i 's@#UseDNS yes@UseDNS no@g' /etc/ssh/sshd_config

sed -i '/^GSSAPIAuthentication yes/d' /etc/ssh/sshd_config

>/etc/issue

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo

sed -i 's#^HOSTNAME=.*$#HOSTNAME=oldboy#g' /etc/sysconfig/network

%end


开始pxe安装centos6.5

创建一台新机器,设置网络适配器为lan区段


完成
<think>好的,用户需要关于PXE加Kickstart实现CentOS无人值守安装的详细步骤。首先,我得回忆一下PXE和Kickstart的基本概念。PXE(预启动执行环境)允许客户端通过网络启动,而Kickstart则是Red Hat系中的自动化安装工具。用户可能是在搭建自动化安装环境,比如数据中心或者需要批量部署服务器的情况。 接下来,用户可能需要详细的步骤,包括服务器配置、DHCP设置、TFTP服务、HTTP/NFS共享安装文件,以及Kickstart文件的配置。需要确保每个步骤清晰,避免遗漏关键点。可能需要注意CentOS版本,不同版本的配置可能有细微差别,比如7和8的区别,但用户没有指定,所以应该选择一个较新的版本,比如CentOS 7或8,并注明通用步骤。 然后,考虑用户的技术水平。如果用户是系统管理员,可能对Linux命令比较熟悉,但如果是新手,可能需要更详细的解释。比如,配置DHCP时,子网配置和next-server的指定是关键,需要明确说明。还有TFTP服务的安装和文件结构,可能需要指导如何放置内核和initrd文件。 另外,Kickstart文件的生成,可以通过system-config-kickstart工具,或者手动编写。可能需要提醒用户验证Kickstart文件的语法是否正确,避免安装失败。HTTP或NFS共享安装源的部分,需要确保路径正确,权限设置合适,否则客户端可能无法访问。 还有防火墙和SELinux的问题,可能需要关闭或者配置相应的规则,确保服务不会被阻挡。比如,防火墙需要开放DHCP、TFTP、HTTP等端口,或者直接暂时关闭防火墙进行测试。SELinux可能会阻止某些操作,需要设置适当的上下文或调整为宽容模式。 测试部分也很重要,用户可能需要在虚拟机中测试PXE启动,确认整个流程无误。可能遇到的问题包括网络引导失败、TFTP超时、Kickstart文件找不到等,需要给出排查建议,比如检查DHCP配置、TFTP文件路径、权限问题等。 最后,总结步骤,确保逻辑清晰,分点明确,用户能够一步步跟随操作。可能还需要提供注意事项,比如确保网络环境安全,避免DHCP冲突,备份重要数据等。</think>以下是使用PXE + Kickstart实现CentOS无人值守安装的详细操作指南: --- ### 一、环境准备 **服务器配置要求**: - CentOS 7/8 操作系统 - 静态IP地址(示例:192.168.1.100) - 至少20GB可用磁盘空间 - 关闭防火墙或开放相关端口: ```bash $ systemctl stop firewalld $ systemctl disable firewalld ``` - 关闭SELinux: ```bash $ setenforce 0 $ sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config ``` --- ### 二、安装必要服务 ```bash # 安装DHCP/TFTP/HTTP服务 $ yum install -y dhcp tftp-server httpd syslinux xinetd ``` --- ### 三、配置DHCP服务 1. 编辑配置文件: ```bash $ vi /etc/dhcp/dhcpd.conf ``` 2. 写入以下内容(根据网络修改参数): ```conf subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.150 192.168.1.200; option domain-name-servers 8.8.8.8; option routers 192.168.1.1; default-lease-time 600; max-lease-time 7200; next-server 192.168.1.100; # PXE服务器IP filename "pxelinux.0"; } ``` 3. 启动服务: ```bash $ systemctl start dhcpd $ systemctl enable dhcpd ``` --- ### 四、配置TFTP服务 1. 创建目录结构: ```bash $ mkdir -p /var/lib/tftpboot/pxelinux.cfg ``` 2. 复制引导文件: ```bash $ cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/ $ cp /usr/share/syslinux/menu.c32 /var/lib/tftpboot/ ``` 3. 配置默认引导菜单: ```bash $ vi /var/lib/tftpboot/pxelinux.cfg/default ``` 写入: ```conf DEFAULT menu.c32 PROMPT 0 TIMEOUT 30 LABEL AutoInstall CentOS KERNEL vmlinuz APPEND initrd=initrd.img ks=http://192.168.1.100/ks.cfg ``` --- ### 五、准备安装文件 1. 挂载ISO镜像: ```bash $ mkdir /mnt/iso $ mount -o loop CentOS-7-x86_64-DVD-2009.iso /mnt/iso ``` 2. 复制内核文件: ```bash $ cp /mnt/iso/images/pxeboot/vmlinuz /var/lib/tftpboot/ $ cp /mnt/iso/images/pxeboot/initrd.img /var/lib/tftpboot/ ``` 3. 创建HTTP安装源: ```bash $ mkdir -p /var/www/html/centos $ cp -r /mnt/iso/* /var/www/html/centos/ $ systemctl start httpd ``` --- ### 六、配置Kickstart文件 1. 生成模板文件: ```bash $ yum install -y system-config-kickstart $ system-config-kickstart # 图形化配置保存为/var/www/html/ks.cfg ``` 2. 或手动创建: ```bash $ vi /var/www/html/ks.cfg ``` 示例内容: ```conf #version=DEVEL install url --url=http://192.168.1.100/centos text lang en_US.UTF-8 keyboard us network --onboot yes --device eth0 --bootproto dhcp rootpw --plaintext yourpassword firewall --disabled authconfig --enableshadow --passalgo=sha512 selinux --disabled timezone Asia/Shanghai bootloader --location=mbr clearpart --all --initlabel part /boot --fstype="xfs" --size=500 part swap --size=4096 part / --fstype="xfs" --size=1 --grow %packages @^minimal @core %end ``` --- ### 七、启动服务 ```bash $ systemctl restart dhcpd tftp httpd xinetd $ chmod -R 755 /var/www/html/ ``` --- ### 八、客户端验证 1. 新建虚拟机,选择网络启动(PXE) 2. 自动加载后会看到启动菜单 3. 选择"AutoInstall CentOS"后开始全自动安装 --- ### 常见问题排查 1. **TFTP超时错误**: - 检查`/var/lib/tftpboot`目录权限 - 确认防火墙已关闭 - 验证`xinetd`服务状态 2. **Kickstart文件无法访问**: - 测试`curl http://192.168.1.100/ks.cfg` - 检查SELinux状态 - 确认HTTP服务端口监听`netstat -tunlp | grep 80` --- 通过以上步骤可实现CentOS系统的全自动网络安装,实际部署时需根据具体网络环境和硬件配置调整参数。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值