centos7/rhel7下配置PXE+Kickstart自动安装linux系统
应用场景:临时安装一个系统或者批量安装linux系统,无需人工介入选择下一步,减少在安装系统上的时间浪费,提高工作效率。
DHCP + TFTP + Syslinux + FTP + Kickstart
系统环境:centos7桌面版(RHEL7适用); //已经关闭 Selinux和 Firewall
说明:之所以选择桌面版是因为后面运行kickstart时需要有类似windows下的对话框弹出,后面详细说明。
配置步骤:
1. 安装DHCP服务
~]#yum install -y dhcp
安装好之后配置dhcp,添加内容如下:
~]#vim /etc/dhcp/dhcpd.conf
allow booting;
allow bootp;
ddns-update-style interim;
ignore client-updates;
subnet 158.158.41.0 netmask 255.255.255.0 { //根据自己网络环境定义子网
option subnet-mask 255.255.255.0;
range dynamic-bootp 158.158.41.210 158.158.41.250;
default-lease-time 36000;
max-lease-time 72000;
next-server 158.158.41.200; //这台主机的IP
filename "pxelinux.0";
}
保存后,启动服务并加入开机启动:
~]#systemctl start dhcpd
~]#systemctl enable dhcpd

2. 安装TFTP服务
~]#yum install -y tftp-server
~]#yum install -y xinetd //tftp由xinetd管理,没有就装上该服务
~]#vim /etc/xinetd.d/tftp //修改配置文件,将disable的值yes改为no

保存后,启动服务并加入开机启动:
~]#systemctl start xinetd
~]#systemctl enable xinetd

3. 安装syslinux服务
~]#yum install -y syslinux
将引导相关文件复制到tftp目录以供客户端下载:(前提:光盘或者镜像文件挂载到/media/cdrom)
~]#cd /var/lib/tftpboot
tftpboot]#cp /usr/share/syslinux/pxelinux.0 .
tftpboot]# cp /media/cdrom/images/pxeboot/{vmlinuz,initrd.img} . //点号“.”不能忘
tftpboot]# cp /media/cdrom/isolinux/{vesamenu.c32,boot.msg} .
先在当前目录新建一个目录pxelinux.cfg:
tftpboot]# mkdir pxelinux.cfg
复制相关文件到该目录下并更名为default:
tftpboot]# cp /media/cdrom/isolinux/isolinux.cfg pxelinux.cfg/default
接着编辑引导模板文件:
tftpboot]# vim pxelinux.cfg/default


4. 安装FTP服务
~]#yum install -y vsftpd
启动ftp服务并加入开机启动:
~]#systemctl start vsftpd
~]#systemctl enable vsftpd

接着,将光盘里的内容全部copy到安装FTP时生成的目录/var/ftp/中去:(前提:光盘或者镜像文件挂载到/media/cdrom)

5. 安装system-config-kickstart服务
~]#yum install -y system-config-kickstart
安装好之后会生成命令“system-config-kickstart”,直接执行:
~]#system-config-kickstart //这里为了跳出对话框(配置更加直观),才使用的桌面版centos7







以上的这些根据自己需求更改,调整好之后就是为了得到上文中提到的一个ks.cfg文件:


查看一下/var/ftp/pub/目录:

至此,安装和配置完成。
6. 测试自动安装系统
新建了另外一台虚机,打开电源启动: //默认模式是DHCP ,去寻找dhcp服务器

从之前搭建的DHCP服务器获取到IP后,就一系列的获取到了系统安装文件(ftp://158.158.41/...)和自动配置文件(ks.cfg文件):

下面就是系统根据ks.cfg文件自动选择(包括时区,语言,分区,root密码,selinux,防火墙...),并且直到安装完毕后自动重启。
结束.
centos7/rhel7下配置PXE+Kickstart自动安装linux系统的更多相关文章
- PXE+Kickstart 自动安装CentOS系统
PXE (preboot execcute environment) 依赖服务 dhcp tftp file server (yum repository) 准备TFTP服务器 如何配置TFTP服务 ...
- 自动安装 linux 系统
实现自动安装 centos 6 和 centos 7 实现自动安装 Linux 系统需要在虚拟机上安装三个服务:apache .tftp.dhcp 三个服务放在一台虚拟机上即可 一.DHCP 服务器的 ...
- linux系统PXE+Kickstart自动安装系统
一.PXEPXE(Pre-boot Execution Environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服 ...
- PXE+kickstart自动安装ubuntu14.04
本文参考了诸多文章,先感谢这些文章的作者. 使用pxe安装系统需要安装dhcp,tftp,http等服务(当然也可以使用其他文件共享方式比如nfs,ftp). 实验环境: 1. vmware 12 2 ...
- PXE无人值守实现批量化自动安装Linux系统
设想一个场景:假如让你给1000台服务器装系统,你会怎么做?跑去每一台服务器给它安装系统吗?显然不会.. 一.概括 通过网络引导系统的做法可以不必从硬盘.软盘或CD-ROM硬盘,而是完全通过网络来引导 ...
- kickstart一键自动安装Linux系统
kickstart,无人值守,自动安装系统.本文介绍kickstart的用法. #安装系统的信息——可以参考 [root@larrywen pdf]# vim ~/anaconda-ks.cfg 第一 ...
- 基于 cobbler 实现自动安装 linux 系统
使用 cobbler 实现自动安装 centos 6.7系统 1.yum install cobbler -y 安装 cobbler ,有依赖关系,会自动把 TFTP .HTTP 服务安装上:cobb ...
- PXE批量部署安装Linux系统
PXE介绍 1)Preboot Excution Environment 预启动执行环境 2)Intel公司研发 3)基于Client/Server的网络模式,支持远程主机通过网络从远端服务器下载映 ...
- CentOS 7.2 下 PXE+kickstart 自动安装系统
一.简单概述 1.1 Kickstart 概述 对于网络安装系统,在linux 下面最熟悉的应该就是 Kickstart 以及 cobbler.写这篇文章的目的在于我公司目前使用的就是 Kicksta ...
随机推荐
- Mysql中的排序规则utf8_unicode_ci、utf8_general_ci总结
Mysql中utf8_general_ci与utf8_unicode_ci有什么区别呢?在编程语言中,通常用unicode对中文字符做处理,防止出现乱码,那么在MySQL里,为什么大家都使用utf8_ ...
- SSH上传/下载本地文件到linux服务器
在linux下一般用scp这个命令来通过ssh传输文件. 1.从服务器上下载文件 scp username@servername:/path/filename /var/www/local_dir(本 ...
- django之路由层
一 Django中路由的作用 二 简单的路由配置 三 有名分组 四 路由分发 五 反向解析 六 名称空间 七 django2.0版的path 一 Django中路由的作用 URL配置(URLconf) ...
- git分支操作2
1.创建分支 git branch <分支名> 会自动复制主分支上的代码. 2.查看当前分支 git branch -v 3.切换分支 git checkout < ...
- 关于mysql远程登录问题
问题:mysql不能实现远程登录 前提:mysql开启了远程登录账号,安全组也放行了3306,防火墙是iptables,也加入了3306放行,但是还是不能实现远程访问 解决办法,使用iptables ...
- fiddler 学习笔记1-下载安装、开启、关闭抓包功能
1 下载安装(安装于C盘之外的空间中) https://www.telerik.com/fiddler 2 开启抓包功能:安装后默认为开启状态 点击 file-capture 或左下角capture ...
- java中的序列化和反序列化
package cn.zhou; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.Fil ...
- oracle ceil函数
ceil和floor函数在一些业务数据的时候,有时还是很有用的. ceil(n) 取大于等于数值n的最小整数: floor(n)取小于等于数值n的最大整数 如下例子 SQL> select ce ...
- Nginx 减少磁盘读写次数
L:133
- 安装使用nginx
nginx的优势 是c语言开发的一个web框架 官方声称支持10W+的并发 天下武功 唯快不破 tengine+ uwsgi(多进程) + django 你公司的技术栈是什么样? centos7 + ...