pxe自动部署Linux,Kickstart+PXE自动部署CentOS6.6

生产环境中对于部署大量的相同系统的服务器,如果逐台安装操作系统的话是非常浪费时间的工作,还好CentOS提供了无人值守安装系统的功能,下面就详细介绍一下配置步骤。

一、配置本机的yum源

因为需要安装一些软件来达到我们的目的,所以最好先把yum源配置好。

将光盘挂载到/media/目录下。

3c8ce6380daa33c267ccb0e2e66a02de.png

3c8ce6380daa33c267ccb0e2e66a02de.png

二、安装所需要用到的软件

tftp-server:简单文件传输协议,用于向客户端提供安装引导相关的文件。

dhcp:动态主机配置协议,为客户端分配IP地址。

http:为客户端提供系统安装时所需的文件。

system-config-kickstart:用于生成kickstart配置文件。

3c8ce6380daa33c267ccb0e2e66a02de.png

三、关闭防火墙和SELinux

3c8ce6380daa33c267ccb0e2e66a02de.png

四、配置tftp服务器

1、修改配置文件

3c8ce6380daa33c267ccb0e2e66a02de.png

3c8ce6380daa33c267ccb0e2e66a02de.png

将disable设置为"no"。

2、重启服务

3c8ce6380daa33c267ccb0e2e66a02de.png

3、查看tftp服务器端口

3c8ce6380daa33c267ccb0e2e66a02de.png

4、复制pxelinux.0文件到/var/lib/tftpboot目录中

3c8ce6380daa33c267ccb0e2e66a02de.png

注意:通常/usr/share目录下的syslinux目录是存在的,万一你的系统里没有这个目录,可以先执行yum -y install syslinux安装这个软件,然后再进行复制操作。

5、从安装光盘中复制isolinux目录中的内容到/var/lib/tftpboot目录中

3c8ce6380daa33c267ccb0e2e66a02de.png

3c8ce6380daa33c267ccb0e2e66a02de.png

6、在/var/lib/tftpboot/目录下创建目录pxelinux.cfg

3c8ce6380daa33c267ccb0e2e66a02de.png

7、复制/var/lib/tftpboot/isolinux.cfg文件到/var/lib/tftpboot/pxelinux.cfg目录中,并改名为default

3c8ce6380daa33c267ccb0e2e66a02de.png

8、修改default文件

default文件中用来定义安装时的引导菜单的,我们可以对此文件进行修改来定制安装界面。

3c8ce6380daa33c267ccb0e2e66a02de.png

注:192.168.253.128为此台kickstart服务器的IP地址。

五、配置DHCP

1、修改/etc/dhcp/dhcpd.conf文件

3c8ce6380daa33c267ccb0e2e66a02de.png

2、重启服务

3c8ce6380daa33c267ccb0e2e66a02de.png六、配置HTTP

1、在http的根目录中创建目录,用于挂载系统镜像文件

3c8ce6380daa33c267ccb0e2e66a02de.png

2、挂载光盘到新建的目录

3c8ce6380daa33c267ccb0e2e66a02de.png

七、生成kickstart配置文件

1、打开kickstart配置工具

在图形界面中打开终端,输入下面的命令来调出kickstart配置工具。

3c8ce6380daa33c267ccb0e2e66a02de.png

3c8ce6380daa33c267ccb0e2e66a02de.png

2、配置语言、时区、root密码等基本信息

3c8ce6380daa33c267ccb0e2e66a02de.png

3、选择安装的方式

此处只使用http协议进行演示,其它的安装方式都是大同异的,都可以按照此方法来进行配置。

3c8ce6380daa33c267ccb0e2e66a02de.png

4、创建分区

3c8ce6380daa33c267ccb0e2e66a02de.png

5、添加网卡设备

3c8ce6380daa33c267ccb0e2e66a02de.png

6、关闭SELinux和防火墙

3c8ce6380daa33c267ccb0e2e66a02de.png

7、选择需要安装的软件包

此处只选择了最基本的软件包。

3c8ce6380daa33c267ccb0e2e66a02de.png8、创建安装后脚本

3c8ce6380daa33c267ccb0e2e66a02de.png

9、保存配置文件

3c8ce6380daa33c267ccb0e2e66a02de.png

3c8ce6380daa33c267ccb0e2e66a02de.png

注:上面的配置过程中没有讲解到的配置一律采用默认配置即可。

10、在配置文件中创建分区及LVM

如下图所示,红框标注的即为分区配置信息。

3c8ce6380daa33c267ccb0e2e66a02de.png

下面来看一下ks配置文件中的创建分区格式:

创建分区:part

创建物理卷:part pv.ID

创建卷组:volgroup 卷组名 –pesize=PE块大小 PV

创建逻辑卷:logvol 挂载点 –fstype=文件系统格式 –name=卷名 –vgname=VG卷名 –size=容量

根据上面的总结我们来看看图中是如何分区的:

clearpart –linux –drivers=sda:表示清除sda上所有Linux分区;

part /boot –fstype="ext4" –size=500:划分500M的空间给/boot,分区格式为ext4;

part pv.01 –grow –size=1:将sda上所有的剩余空间全部制作成物理卷pv.01;

volgroup VolGroup –pesize=4096 pv.01:将物理卷pv.01划分到VolGroup卷组中;

logvol / –fstype="ext4" –name=lv_root –vgname=VolGroup –size=10240:从卷组VolGroup中划分10G的空间制作为逻辑卷用于根分区,逻辑卷的名称为lv_root,其格式为ext4;

logvol swap –name=lv_swap –vgname=VolGroup –size=2048:从卷组VolGroup中划分2G的空间制作为逻辑卷用于swap分区,逻辑卷的名称为lv_swap。

八、使用无人值守方式安装CentOS6.6系统

对于一台没有任何系统的机器可以直接进入到下图所示的界面,可以看到其标签就是我们在上面default文件中自定义的文字。

3c8ce6380daa33c267ccb0e2e66a02de.png

经过前面一系列的环境检查后,就直接时入了文本安装界面,如下图所示:

3c8ce6380daa33c267ccb0e2e66a02de.png

安装完成后就直接进入系统了。

3c8ce6380daa33c267ccb0e2e66a02de.png

下面我们来验证一下,各种预设的配置是否生效了:

3c8ce6380daa33c267ccb0e2e66a02de.png

输入刚才设置好的密码顺利进入到系统,并且也获得了IP地址;

3c8ce6380daa33c267ccb0e2e66a02de.png

各分区结果与预设置的情况相符合;

3c8ce6380daa33c267ccb0e2e66a02de.png

还记得我们在最后设置了post脚本,自动创建yum源,也成功建立了。

注:以上演示的过程是最基本的部署步骤和内容,我们还可以利用ks配置文件和post脚本完在更加复杂的系统安装、配置工作。

原创文章,作者:petmaster,如若转载,请注明出处:http://www.178linux.com/4269

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/475100.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LeetCode 247. 中心对称数 II(DP)

文章目录1. 题目2. 解题1. 题目 中心对称数是指一个数字在旋转了 180 度之后看起来依旧相同的数字(或者上下颠倒地看)。 找到所有长度为 n 的中心对称数。 示例 : 输入: n 2 输出: ["11","69","88","96"]来…

重新排列参数

重新排列参数 重新排列参数操作可以使你重新排列方法、索引器中的参数。你将方法的参数重新排列后,所有使用该方法的地方都会相应调整。以下面代码为例: class Person{public void Print(string name, int age, bool sex){}}class Program{static void M…

linux的accept函数源码,accept函数

13.2.5 accept函数处于监听状态的服务器在获得客户机的连接请求后,会将其放置在等待队列中。当系统空闲时,将接受客户机的连接请求。接收客户机的连接请求使用accept函数,该函数的具体信息如表13.6所示。表13.6 accept函数头文件函数形式i…

C# WebBrower1控件提示“该文档已被修改,是否保存修改结果”解决方法 .

C# WebBrower1控件可编辑模式保存时会提示“该文档已被修改,是否保存修改结果”在百度查了不少方法,张筱祥发现一个比较实用而且非常简单的方法,代码如下:在WebBrower1的Navigating 事件中加以下代码就没有提示了。private void w…

LeetCode 251. 展开二维向量

文章目录1. 题目2. 解题1. 题目 请设计并实现一个能够展开二维向量的迭代器。该迭代器需要支持 next 和 hasNext 两种操作。、 示例: Vector2D iterator new Vector2D([[1,2],[3],[4]]);iterator.next(); // 返回 1 iterator.next(); // 返回 2 iterator.next();…

linux添加中文字库主线任务,Linux 添加中文字体库

背景:润乾报表 win上面的项目直接上传到linux 上,但预览&下载报表时乱码如果含有斜线的单元格或统计图的报表在网页上发布时,统计图或斜线单元格里的汉字会变成小方框,此时往往是服务器端操作系统的中文安装包没有装全&#x…

eval()解析JSON

eval()将JSON文本转换为javascript对象.如:var data”{‘elements’:[""{firstname:yan,lastname:tang},""{firstname:tommy,lastname:wrox}]}”; var objeval(“(“data”)”);//转换为json对象为什么要在eval这里要添加 (“(“data”)”); 呢…

LeetCode 253. 会议室 II(贪心+优先队列)

文章目录1. 题目2. 解题1. 题目 给定一个会议时间安排的数组&#xff0c;每个会议时间都会包括开始和结束的时间 [[s1,e1],[s2,e2],…] (si < ei)&#xff0c; 为避免会议冲突&#xff0c;同时要考虑充分利用会议室资源&#xff0c;请你计算至少需要多少间会议室&#xff0…

linux futex 进程同步,Linux的新式线程同步原语——Futex

在我的上一篇文章《本地POSIX线程库》中&#xff0c;提到了Futex一词&#xff0c;发现好多读者误以为这是我的笔误&#xff0c;将Mutex错写为Futex了。其实Futex是Linux的一种全新的线程同步原语。本文将为您解读高效的Futex。Futex是fast userspace mutex的缩写&#xff0c;意…

笨鸟学Android开发(1):HelloWorld

全程视频&#xff08;IE等浏览器中若看不到以下GIF动画&#xff0c;请下载观看&#xff09; 源代码 转载于:https://www.cnblogs.com/beta2013/archive/2012/06/28/3377298.html

LeetCode 254. 因子的组合(回溯)*

文章目录1. 题目2. 解题1. 题目 整数可以被看作是其因子的乘积。 例如&#xff1a;8 2 x 2 x 2; 2 x 4.请实现一个函数&#xff0c;该函数接收一个整数 n 并返回该整数所有的因子组合。 注意&#xff1a; 你可以假定 n 为永远为正数。 因子必须大于 1 并且小于 n。示例 1&a…

linux 设备数 of,linux下devicetree中惯用的of函数

linux下devicetree中常用的of函数从device_node中获取信息&#xff1a;int of_property_read_u8_array(const struct device_node *np, const char *propname,u8 *out_values, size_t sz);int of_property_read_u16_array(const struct device_node *np, const char *propname,…

使用架构(XSD)验证XML文件

假使说XML是一个数据库&#xff0c;那么XSD就是这个数据库的结构。由此可见&#xff0c;XSD是如此重要&#xff0c;如果没有它&#xff0c;我们如何声明以及验证我们需要的XML数据文件的格式和合法性呢&#xff1f;那是不可能完成的任务&#xff0c;如果你将XML数据文件当作普通…

Linux无法连接远程仓库,ssh无法连接到远端Ubuntu的解决方法

ssh无法连接到远端Ubuntu的解决方法2014-10-16 0个评论 来源&#xff1a;KiteRunner的专栏近日&#xff0c;饱受无法远程登录到新安装在VMWare上的Ubuntu虚拟机&#xff0c;如今发现问题所在&#xff0c;故记录此问题的解决方案&#xff0c;以备后用。一、远程登录虚拟…

kohana3 数据库模块配置

Kohana 3.0 有一个很强壮的数据库模块。默认情况下数据库模块支持 MySQL 和 PHP-PDO 驱动 数据库模块已经包含在了 Kohana 3.0 安装程序之中&#xff0c;但是还需要在使用之前启动它。在你的 application/bootstrap.php 文件里修改 Kohana::modules() 方法中 database 模块&…

LeetCode 255. 验证前序遍历序列二叉搜索树(单调栈)*

文章目录1. 题目2. 解题2.1 递归超时解2.2 单调栈1. 题目 给定一个整数数组&#xff0c;你需要验证它是否是一个二叉搜索树正确的先序遍历序列。 你可以假定该序列中的数都是不相同的。 参考以下这颗二叉搜索树&#xff1a;5/ \2 6/ \1 3 示例 1&#xff1a; 输入: [5,2…

spring代码执行Linux命令,Linux 运行管理SpringBoot Shell 脚本.md

最近在做Linux 环境下的一个运行管理通用脚本&#xff0c;用来管理我的Java 小程序启动、停止等操作。虽说这些可以用手敲命令的方式实现&#xff0c;也不复杂&#xff0c;但程序员么&#xff0c;不就喜欢封装点代码&#xff0c;减少操作啥的。先讲下脚本的主要逻辑&#xff0c…

SQL基础---SQL AND OR 运算符

SQL AND OR 运算符 AND 和 OR 运算符用于基于一个以上的条件对记录进行过滤。 AND 和 OR 运算符 AND 和 OR 可在 WHERE 子语句中把两个或多个条件结合起来。 如果第一个条件和第二个条件都成立&#xff0c;则 AND 运算符显示一条记录。 如果第一个条件和第二个条件中只要有一个…

LeetCode 259. 较小的三数之和(固定一点,内层双指针)

文章目录1. 题目2. 解题1. 题目 给定一个长度为 n 的整数数组和一个目标值 target&#xff0c;寻找能够使条件 nums[i] nums[j] nums[k] < target 成立的三元组 i, j, k 个数&#xff08;0 < i < j < k < n&#xff09;。 示例&#xff1a; 输入: nums [-2…

linux虚拟中断virq,一种微内核操作系统的分区多核方法与流程

本发明涉及一种计算机领域&#xff0c;特别涉及一种微内核操作系统的分区多核方法。背景技术&#xff1a;在宏内核操作系统(如Linux&#xff0c;Windows)中,网络、文件系统、设备驱动等大量系统服务都在操作系统内核中&#xff0c;微内核操作系统与宏内核操作系统相反&#xff…