操作环境:windows

实验环境:vmware workstation

实验要求:配置一台workstation机器(ip地址192.168.96.100 gateway 192.168.96.2 dns1 8.8.8.8 netmask 255.255.255.0)

实现自动化安装server1/server2/database三台机器。

搭建整个自动化安装的流程:

pxe网络启动是核心。

配置DHCP自动获取ip地址-----使用tftp协议引导加载文件pxelinux0文件(相当于一个小型的操作系统,可以认为其为一个操作系统的底层,挂载光盘到主机workstation,挂载点/var/ftp/pub里面包含此文件)----启动内核加载模块vmlinuz(vmlinux的压缩文件,可以认为其为一个小型的内核模块)、initrd.img(可以不用更改内核文件,从而实现任何硬件系统与内核的兼容,可以自行加载各种硬件格式)---启动ks.cfg文件(放置光盘的位置,可以编写shell脚本,实现更多的功能)-----完成启动

开始部署环境:

以下配置均在workstation机器上面实现

1.基本配置

#更改主机名

#挂载光盘(包含p_w_picpaths文件)

mkdir -o loop -t iso9660 /dev/sr0 /var/ftp/pub

注意:一定要点击光盘,使其连接

mount -a

df -Th

#更新yum仓库

#下载所需要的安装包vim

#重启机器(使配置生效)

2.配置服务端的DHCP

#vim /etc/dhcp/dhcpd.conf

subnet 192.168.96.0 netmask 255.255.255.0 {

range dynamic-bootp 192.168.96.200 192.168.80.210;

option routers 192.168.96.2;

option domain name servers 8.8.8.8;

default-lease-time 21600;

max-lease-time 43200;

next-server 192.168.96.100;

filename "pxelinux0";

}

systemctl restart dhcpd

systemctl enable dhcpd

3.配置内核启动模块

下载xinetd(网络守护进程),tftp,tftp-server,syslinux-tftpboot包

#vim /etc/xinetd.d/tftp

更改disabled    =     no

cd /var/ftp/pub/p_w_picpaths/pxeboot

ls

cp initrd.img /var/lib/tftpboot/

cp vmlinuz /var/lib/tftpboot/

mkdir /var/lib/tftpboot/pxelinux.cfg

vim  /var/lib/tftpboot/pxelinux.cfg/default

default linux

prompt 1

timeout 60

display boot.msg

label linux

kernel vmlinuz

append initrd=initrd.img text  ks=http:://192.168.96.100/ks/ks.cfg

systemctl start xinetd

systemctl enable xinetd

4.下载httpd服务,加载ks文件

yum –y install httpd

systemctl restart httpd

ls

mkdir /var/www/html/ks

cp anaconda-ks.fsg /var/www/html/ks/ks.cfg

vim /var/ww/html/ks/ks.cfg

添加一行#Use network installaton

url --url=ftp://192.168.96.100/pub(光盘存放位置)

Install

注释掉#cdrom

cd /var/ww/html/ks/

chmod +r ks.cfg

yum –y install vsftpd

systemctl restart vsftpd

systemctl enable vsftpd

5.所有配置完成之后。重新创建新的虚拟机server1,server2,database

自动化部署完成之后,配置剩余三台机器的网卡文件:

  • 设置为静态地址

  • 更改主机名

  • 加载yum源仓库

  • 采用scp方式添加epel源

  • 更新仓库(防止有bug出现)

  • 下载vim编辑器

  • 拍摄快照

pxe linux 0的更多相关文章

  1. [PXE] Linux(centos6)中PXE 服务器搭建,PXE安装、启动及PXE理论详解

    [PXE] Linux(centos6)中PXE 服务器搭建,PXE安装.启动及PXE理论详解 本篇blog主要讲述了[PXE] linux(centos)PXE无盘服务器搭建,安装,启动及pxe协议 ...

  2. x01.os.19: linux 0.0

    linux 0.0 是一个丢失的版本,但赵炯老师又在 linux 0.11 的基础上,使它起死回生.www.oldlinux.org 有大量资源可供下载,值得一看. 1.要编译运行,首先需安装:sud ...

  3. Linux 0.11下信号量的实现和应用

    Linux 011下信号量的实现和应用 生产者-消费者问题 实现信号量 信号量的代码实现 关于sem_wait和sem_post sem_wait和sem_post函数的代码实现 信号量的完整代码 实 ...

  4. Linux 0.12 内核管理存储器

    Linux 0.12 内核管理存储器 其分段,用分段的机制把进程间的虚拟地址分隔开. 每一个进程都有一张段表LDT.整个系统有一张GDT表.且整个系统仅仅有一个总页表. 其地址翻译过程为: 程序中给出 ...

  5. Linux 0.11中write实现

    看了一下Linux 0.11版本号write的实现,首先它在标准头文件unistd.h中有定义 int write(int fildes, const char * buf, off_t count) ...

  6. Bedrock Linux 0.7.3 发布

    Bedrock Linux是一种元分发,允许用户利用其他通常互斥的Linux发行版的功能,并让它们无缝地一起工作.该项目发布了其0.7.x系列,Bedrock Linux 0.7.3的更新. 新的更新 ...

  7. 《linux 内核全然剖析》编译linux 0.12 内核 Ubuntu 64bits 环境

    我×.. . 最终好了,大概3 4个小时吧...各种毛刺问题.终究还是闯过来了.. .. ubuntu2@ubuntu:~/Downloads/linux-0.00-050613/linux-0.00 ...

  8. 【从头到脚品读 Linux 0.11 源码】第一回 最开始的两行代码

    从这一篇开始,您就将跟着我一起进入这操作系统的梦幻之旅! 别担心,每一章的内容会非常的少,而且你也不要抱着很大的负担去学习,只需要像读小说一样,跟着我一章一章读下去就好. 话不多说,直奔主题.当你按下 ...

  9. Linux 0.11源码阅读笔记-总结

    总结 Linux 0.11主要包含文件管理和进程管理两个部分.进程管理包括内存管理.进程管理.进程间通信模块.文件管理包含磁盘文件系统,打开文件内存数据.磁盘文件系统包括空闲磁盘块管理,文件数据块的管 ...

随机推荐

  1. PL/SQL Developer的错误提示弹框的文本显示乱码问题

    问题:Windows中文环境下,PL/SQL Developer的错误提示弹框文本为乱码,如下: 解决过程:1.使用SELECT * FROM v$nls_parameters;查询得知服务器的字符集 ...

  2. C#特性 详解

    一:Conditional:条件特性,预定义了一个条件方法. 使用方法: [Conditional("DEBUG")] public void test() { MessageBo ...

  3. Django rest-framework框架-content-type

    表结构讨论: 是用一张表价格策略表来记录两种不同的价格策略 content-type原理: 使用一张表来记录不同课程的价目,增加一行表名称 注释: 适用于多张表关联一张表的情况 会自动生成这种的结构: ...

  4. tf 2.0

    tf.function和Autograph使用指南-Part 1 "Keras之父发声:TF 2.0 + Keras 深度学习必知的12件事" Effective TensorFl ...

  5. vue之双向绑定

    Vue的一大核心是双向绑定,在2.0中采用数据劫持,用Object.defineProperty实现,但作者已声明在3.0中会采用proxy实现   Object.defineProperty是什么? ...

  6. 使用百度echarts仿雪球分时图(一)

    第一次写技术博客,有不足的地方希望大家指证出来,我再加以改正,谢谢大家. 之前一直没有找到一个合适的分时图项目,所以决定自己动手撸一个.接触的图表框架不多,在网上看到不少人推荐使用echarts,看了 ...

  7. react请求接口数据是在componentDidMount 还是componentWillMount周期好

    如果你要获取外部数据并加载到组件上,只能在组件"已经"挂载到真实的网页上才能作这事情,其它情况你是加载不到组件的.componentDidMount方法中的代码,是在组件已经完全挂 ...

  8. jmeter连接mysql数据库批量插入数据

    前提工作: 1.在jmeter官网下载jmeter包(官网地址:https://jmeter.apache.org/).此外还需下载mysql驱动包,如:mysql-connector-java-5. ...

  9. SmartBinding实现DataSet与ListView的绑定及同步显示

    kbmMW 5.10.10发布了,这个版本解决了我提出的问题,当对DataSet增删记录时,ListView能够同步显示.下面看看具体的实现代码. 为了解决上面的问题,作者为IkbmMWBinding ...

  10. Paper Reading:FPN

    FPN 论文:Feature Pyramid Networks for Object Detection 发表时间:2017 发表作者:(Facebook AI Research)Tsung-Yi L ...