实现自动安装 centos 6 和 centos 7

实现自动安装 Linux 系统需要在虚拟机上安装三个服务:apache 、tftp、dhcp

三个服务放在一台虚拟机上即可

一、DHCP 服务器的相关配置

一台干净的机器安装操作系统,需要基于广播机制向 DHCP 服务器获取 IP 地址,所以新的机器的网段需要和 DHCP 服务器在同一个网段;

1、yum install dhcp -y

安装 DHCP 服务

2、rpm -ql dhcp

列出包里面的列表

用划红线的文件当做配置文件的模板,覆盖当前的 dhcp 的配置文件

cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example  /etc/dhcp/dhcpd.conf

3、vim /etc/dhcp/dhcpd.conf

修改配置文件

1 表示 DHCP 服务器分配的 IP 地址范围

2 表示网关

3 表示 DNS

4 表示域名

5 表示 TFTP 服务器的 IP 地址

6 表示去 TFTP 服务器需要下载的文件

安装操作系统的时候,需要向 DHCP 获取 IP,同时获取的还有 TFTP 服务器的地址和需要去 TFTP 服务器下载的文件;因为系统不知道需要去 TFTP 服务器下载什么,所以指定需要下载的文件

4、systemctl restart dhcpd

重启服务

二、 HTTP 服务器相关配置

1、yum install httpd -y

安装 HTTP 服务

2、cd /var/www/html

3、mkdir centos/{6,7}/os/x86_64 -pv

创建需要挂载光盘的相关目录

4、虚拟机上准备两个光驱

5、vim /etc/fstab

添加两个挂载点

6、mount -a

挂载生效

7、mkdir ksdir

创建存放 centos 6 和 centos 7 应答文件的目录

8、vim ksdir/ks6_desktop.cfg

编辑 centos 6 的应答文件

9、vim ksdir/ks7_mini.cfg

编辑 centos 7 的应答文件,可以加一些自己想设置的一些安装后脚本

10、systemctl start httpd

启动 http 服务

三、TFTP 服务器的相关配置

1、yum install tftp-server -y

安装 TFTP 服务

2、 cd /var/lib/tftpboot

3、mkdir centos{6,7}

创建存放 centos 6 和 centos 7 内核和 initrd 的目录

4、mkdir pxelinux.cfg

创建存放安装菜单的目录

目录名字必须是 pxelinux.cfg,安装的时候,会自动到 /var/lib/tftpboot/pxelinux.cfg 目录下找菜单文件;并且菜单文件名必须是 default

5、cp /var/www/html/centos/7/os/x86_64/isolinux/isolinux.cfg   pxelinux.cfg/default

复制一份菜单并且改名字叫 default

6、vim pxelinux.cfg/default

修改菜单

7、yum search pxelinux

安装画红圈的包

yum install syslinux -y

pxelinux 相当于 bootloader ,linux 里表现为 grub ;安装的时候,从 DHCP 服务器获取到 IP 地址后,并且也获取到了 TFTP 服务器的地址和需要下载的 pxelinux.0 文件名;下载 pxeliunx (grub)之后,才可以加载内核,加载小型的 linux 系统,从而挂载操作系统根,然后才能运行安装向导,从而进行安装

找到 grub 后,系统会自动在 TFTP 目录下(/var/lib/tftpboot)寻找安装菜单里面所指定的路径去下载内核和 initrd

8、rpm -ql syslinux | grep menu.c32

这个就是安装菜单文件里面指定的安装菜单的背景图片

9、cp /usr/share/syslinux/menu.c32  ./

把图片拷贝过来

10、拷贝 centos 6 和 centos 7 的内核和 initrd

cp /var/www/html/centos/7/os/x86_64/isolinux/{vmlinuz,initrd.img}  centos7/

cp /var/www/html/centos/6/os/x86_64/isolinux/{vmlinuz,initrd.img}   centos6/

11、rpm -ql syslinux | grep pxelinux.0

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

把 bootloader 拷贝过来

13、systemctl start tftp

启动 TFTP 服务

准备一台新的虚拟机,新虚拟机的网段必须和 DHCP 服务器在同一个网段

最好自己自定义一个网段,虚拟机自带 DHCP 服务,所以分配 IP 有可能是 虚拟机分配的,为了可以看出 DHCP 服务器的效果,所以主机自定义一个网段

新建的虚拟机也必须是 VMnet10 网段才行,不然无法从 DHCP 服务器获取 IP 地址

因为是干净的系统,所以无法使用硬盘引导,会自动使用网络安装

选择想要安装的 centos 版本

自动安装 linux 系统的更多相关文章

  1. centos7/rhel7下配置PXE+Kickstart自动安装linux系统

    应用场景:临时安装一个系统或者批量安装linux系统,无需人工介入选择下一步,减少在安装系统上的时间浪费,提高工作效率. DHCP + TFTP + Syslinux + FTP + Kickstar ...

  2. kickstart一键自动安装Linux系统

    kickstart,无人值守,自动安装系统.本文介绍kickstart的用法. #安装系统的信息——可以参考 [root@larrywen pdf]# vim ~/anaconda-ks.cfg 第一 ...

  3. PXE无人值守实现批量化自动安装Linux系统

    设想一个场景:假如让你给1000台服务器装系统,你会怎么做?跑去每一台服务器给它安装系统吗?显然不会.. 一.概括 通过网络引导系统的做法可以不必从硬盘.软盘或CD-ROM硬盘,而是完全通过网络来引导 ...

  4. 基于 cobbler 实现自动安装 linux 系统

    使用 cobbler 实现自动安装 centos 6.7系统 1.yum install cobbler -y 安装 cobbler ,有依赖关系,会自动把 TFTP .HTTP 服务安装上:cobb ...

  5. 学习神器!本机安装虚拟机,并安装Linux系统,并部署整套web系统手册(包含自动部署应用脚本,JDK,tomcat,TortoiseSVN,Mysql,maven等软件)

    1.   引言 编写目的 本文档的编写目的主要是在Linux系统上部署mis_v3员工管理系统,方便测试,并为以后开发人员进行项目部署提供参考 准备工作 软件部分 软件项 版本 备注 Mysql 5. ...

  6. Linux 虚拟机上安装linux系统 (ip:子网掩码,网关,dns,交换机,路由知识回顾)

    一 安装虚拟机 二 虚拟机上配置好在安装linux系统 三 知识回顾 交换机:主机在局域网内的身份是MAC地址(可以通过[交换机广播:交换机通过被动学习来建立一张“接口号”和“MAC地址”的对照表]或 ...

  7. 虚拟机virtualBox安装linux系统 xshell远程连接linux

    虚拟机virtualBox安装linux系统 xshell远程连接linux 虚拟机概念: 通过软件, 使用虚拟化技术虚拟出电脑的硬件环境, 充当真实的电脑使用. 常见的虚拟软件: virtualBo ...

  8. 部署虚拟环境安装Linux系统

      目录                                                              准备工作 安装linux系统 重置root管理员密码 源代码编译 R ...

  9. 第1章 部署虚拟环境安装linux系统

    章节简述: 本章节带领读者从0基础了解虚拟机软件与红帽系统,完整的演示了在VM与KVM中安装红帽RHEL7系统的方法. 特别增加了超级实用的Linux系统找回root密码.虚拟机功能增强包.VNC远程 ...

随机推荐

  1. 原生无缝Banner轮播图

    话不多说,先展示效果图.由于录制工具,稍显卡顿,实际是流畅的.可以看到实现了无缝轮播,鼠标悬停,点击左右上下按钮切换Banner的功能,如图1所示. 图1 原生无缝banner效果展示 以我这个轮播图 ...

  2. 题解 CF600E 【Lomsat gelral】

    没有多少人用莫队做吗? 蒟蒻水一波莫队 这是一道树上莫队好题. 时间复杂度(\(n\sqrt{n}logn\)) 蒟蒻过菜,不会去掉logn的做法qaq 思路很简单: 1.dfs跑一下树上点的dfs序 ...

  3. Python 调用图灵机器人 API

    ''' Python3''' import requests #导入requests库 import json #导入json库 key = '3119f1e3610f42c5977ea73c4097 ...

  4. Intellij IDEA 常用的插件 建议全装

    介绍几个常用的插件 Alibaba Java Coding Guidelines https://plugins.jetbrains.com/plugin/10046-alibaba-java-cod ...

  5. 设计模式(五)Singleton模式

    Singleton模式就是确保只生成一个实例的模式.这里有两个意思,即想确保任何情况下都绝对只有一个实例和想在程序上表现出“只存在一个实例”. 下面通过一个实例来说明这种设计模式. package B ...

  6. Excel在线预览(通过poi转html,含里面的图片)

    支持03和07excel转html,直接上代码 测试类 /** * 主方法 * @author asus * */ public class App2 { public static void mai ...

  7. expect实现自动输入密码功能

    系统: Ubuntu:16.04 安装expect: sudo apt-get update sudo apt-get install expect 脚本实例: //这一行告诉操作系统脚本里的代码使用 ...

  8. Apache Solr Velocity模板注入RCE漏洞复现

    Apache Solr Velocity模板注入RCE漏洞复现 一.Apache Solr介绍 Solr是一个独立的企业级搜索应用服务器,它对外提供类似于web-service的API接口,用户可以通 ...

  9. 在VMware15中安装虚拟机并使用Xshell连接到此虚拟机(超详细哦)

    首先点击创建新的虚拟机. 此处默认, 点击下一步 默认, 点击下一步 此处可以设置你的虚拟机名称和安装位置(强烈建议不要将安装位置放在系统盘). 此处可根据自己的电脑配置来设置(建议2,4),后续可以 ...

  10. 《Effective Java》 读书笔记(六)避免创建不必要的对象

    java 有很多修饰类的属性的关键字:常用的static,final 说说final和static吧,平时在编程的时候,这两个关键字很多时候都觉得可有可无,最多的时候就是他们俩同时出现----定义常量 ...