PXE(preboot execute environment),预启动执行环境。由于安装系统的时候,有时候是大批量的安装;这时使用磁盘或虚拟机进行单个安装,效率太差;所以我们开始使用PXE网络安装LINUX系统(即使用DHCP服务获取安装所需的文件位置,并逐步安装)。具体安装步骤如下:

(一)在服务器端 :

1)首先要有可用的yum源和ip;安装DHCP服务,使客户端可以进行IP的获取。(安装的时候,可以参照之前的博客)

2)安装相关软件:

yum  install  syslinux.x86_64  -y

yum search tftp-server.x86_64   -y

yum restall httpd.x86_64  -y                ##安装http服务,方便共享文件

yum install  system-config-kickstart  -y    ##用来进行虚拟机自动安装的软件

systemctl  start httpd

systemctl  enable  httpd.server

systemctl  start  xinted.server             ##重启服务

netstat  -antlupe   |  grep  xinetd         ##进行端口的查看 (此时是不会显示端口信息;需要修改配置文件)

2)修改xinted配置文件

vim   /etc/xinetd.s/tftp                    ##修改disable为no

systemctl   restart  xinetd.server           ##重启服务

netstat   -antlupe   |  grep  xinetd        ##查看此时的结果

3)目录和文件的建立

less  /usr/share/doc/syslinux-4.05/pxelinux.txt       ##查看网络配置文件的编写

cp  /usr/share/syslinux/pxelinux.0  /var/lib/tftpboot

mkdir  /var/lib/tftpboot/pxelinux.cfg

4)从主机77中选择可用的镜像并复制到服务器。

[root@desktop177 tftpboot]# scp -p root@172.25.254.77:/var/www/html/rhel7.0/*  .

     查看复制后的结果:

5)移动文件到新建的目录pxelinux.cfg下

cp   isolinux.cfg   pxelinux.cfg/default

vim   /pxelinux.cfg/default                            ##修改安装界面的显示内容

注释:此时的ks.cfg是利用system-config-kickstart软件生成的文件(在之前的博客虚拟机的安装中可以找到。);注意的是,此时文件存放的位置为http的共享目录下。成功的标志是,你可以在浏览器中输入http://172.25.254.177/ks.cfg会出现自己的文件内容,此时,你才可以把自动安装文件ks.cfg添加进去。

kiskstart :1行首先进行时区时间的设定,并添加密码;2行修改安装源为dhcp,并填写安装源的IP和目录;3行安装类型选第一个;4行的三个选项均选择第一个,并进行分区,/swap:500M    /boot内:200M  / 选择剩下的全部空间;7行为disable ;8行为diable;完成之后保存在共享目录。

systemctl  restart  xinetd.server                    ##重启服务

6)最后修改再次修改DHCP的配置文件

vim  /etc/dhcp/dchpd.conf                            ##添加第33和34行;next-server为服务端ip;filename 为读取的文件

7)systemctl  stop  firewalld.server                   ##关闭防火墙

(二)测试结果:

1)首先在虚拟管理器中进行虚拟机启动的时候,使用DHCP服务:

2)启动后会出现如下结果:(此时我们可以看到自己设置的信息和动态IP获取的相关信息)

3)进入安装主界面:(自己修改了提示信息为virt 7.0显示出来了)

4)回车后的结果直接到等待安装软件包的界面。(此时要等很长时间才可安装好)

LINUX系统下PXE网络安装虚拟机的更多相关文章

  1. 虚拟机Linux系统下配置网络

    虚拟机上安装Redhat9.0后是没有网络的,而本来的Windows系统是可以上网的,此时想在Redhat上网就需要在Linux系统上配置网络,以下是笔者自己配置的一点心得. 1.电脑本机系统打开网络 ...

  2. Linux系统下DHCP服务安装部署和使用详解

    一.概述 DHCP :动态主机设置协议(英语:Dynamic Host Configuration Protocol,DHCP)是一个局域网的网络协议,使用UDP协议工作,主要有两个用途:用于内部网或 ...

  3. Linux系统下给VMWare安装Tools

    1.进入Linux系统. 2.在VMware的窗口菜单中选VM >> install VMware Tools,虚拟机自动将VMware-tools装入虚拟光驱中. 3.在虚拟光驱里找出V ...

  4. Linux系统下源码安装rz/sz命令

    背景:在windows环境下,使用xshell远程连接公司内部做的一个类似centos的系统,但该linux系统yum install有问题,只能源码安装. root 账号登陆后,依次执行以下命令: ...

  5. Windows和Linux系统下,虚拟环境安装的全面说明和详细步骤

    虚拟环境的创建和使用 用途: ​ 1.在同一台电脑安装同一个包的不同版本 2.记录项目所用的所有的包的版本,方便部署. 如何使用: 1.创建虚拟环境 mkvirtualenv 虚拟环境名 -p pyt ...

  6. linux 系统下Anaconda的安装【安装python3.6环境首选】

    如果你不想使用python3.6的源码安装包,不想各种繁琐的配置命令,那Anacoda里边自带的python3.6环境就最合适不过了,下面来介绍下anacoda的安装过程,~so easy~Anaco ...

  7. 详解Linux系统下PXE服务器的部署过程

    在大规模安装服务器时,需要批量自动化方法来安装服务器,来减少日常的工作量. 但是批量自动化安装服务器的基础是网络启动服务器(bootserver). 下面我们就介绍一下 网络启动服务器的 安装和配置方 ...

  8. Linux系统下配置网络、JAVA环境,配置tomcat,mysql

    一.配置网络 1.进入自己的系统,并跳转到network-scripts 2.编辑 3.查看系统的信息 4.将其添加到刚刚的if-cfg-eth0中 5.重启网络 6.这个时候ping百度还是ping ...

  9. Linux系统下zookeeper的安装和配置

    ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件.它是一个为分布式应用提供一致性服务的软件,提供的功 ...

随机推荐

  1. 谷歌技术"三宝"之BigTable(转)

    原文地址:   http://blog.csdn.net/opennaive/article/details/7532589 2006年的OSDI有两篇google的论文,分别是BigTable和Ch ...

  2. SQL统计信息解释

    [SQL基础]统计信息解释 在平时优化SQL的时候,最长用的就是:SET STATISTICS ON,它可以用来查看我们写的查询语句到底性能如何,不过,究竟这个性能的指标是怎么样的呢?首先需要明白的, ...

  3. linux配置Nginx启动,停止

    Nginx 启动.重启.停止脚本   第一步 先运行命令关闭nginx sudo kill `cat /usr/local/nginx/logs/nginx.pid`   第二步 vi /etc/in ...

  4. SQL学习笔记之SQL中INNER、LEFT、RIGHT JOIN的区别和用法详解

    0x00 建表准备 相信很多人在刚开始使用数据库的INNER JOIN.LEFT JOIN和RIGHT JOIN时,都不太能明确区分和正确使用这三种JOIN操作,本文通过一个简单的例子通俗易懂的讲解这 ...

  5. #ifndef用法

    用于避免重复包含头文件 #ifndef _STDIO_H_ #define _STDIO_H_ ...... #endif

  6. http://www.kindsoft.net/docs/qna.html

    http://www.kindsoft.net/docs/qna.html 感觉 Kindediter 非常好用  界面效果好 API也全面 很不错的编辑器

  7. js 的胖箭头问题

    我们在声明函数的时候通常是 var foo function(a){ console.log(a) }; 用ES6 我们写成了这样 var foo = a =>{ console.log(a); ...

  8. java计算两个日期之间相隔的月份(向下取整)

    最近需求里面有个需要计算两个日期之间相隔的月份,写起来还挺繁琐,需要将各种情况都要考虑到,写了一个作为以后自己的工具吧. //获取哪一天 public static int getDay(Date d ...

  9. 线程实现Runnable接口比继承Thread的优势

    1.适合多个相同程序代码的线程去处理同一资源,把虚拟CPU(线程)同程序的代码.数据有效分离,较好地体现了面向对象的设计思想.2.可以避免由于java单继承特性带来的局限.3.增强了程序的健壮性,代码 ...

  10. Linux用户及权限分配

    一.用户分类 所有者 u; 所属组 g; 其它用户 o; 所有用户 a; 二.用户管理 //查看用户 id user //添加用户 useradd user //设置密码 passwd user // ...