linux无人值守安装实验,无人值守批量安装linux操作系统

无人值守批量安装linux操作系统(实验总结)

每天都看对着电脑的操作系统,有时候出现了什么问题实在解决不了,我们肯定会选择重做系统的,当然一台两台系统我们还是可以一一搞定,可是我们是否想过要是一次性需要我们安装10台,100台甚至更多台的操作系统的时候,我们还是会那样傻乎乎的一台一台机械性的重复着这样的工作吗?可想而知,答案是否定的,那我们能不能找到很好的方法来解决这个问题呢?答案是肯定的,我们的前辈们肯定都遇到过这种问题他们也使用了很好的方法来解决这个问题.那就是---通过网络批量安装操作系统!这样做的好处就是当你的计算机没有光驱或者光驱损坏时,或者是没有安装介质的时候都是可以安装上我们的linux操作系统的~超棒O(∩_∩)o 哈哈不过安装之前我们还是要了解一下相关知识

一.PXE

PXE(Pre-boot Execution Environment)是由Intel设计的协议,它可以使计算机通过网络启动。协议分为client和server两端,PXE client在网卡的ROM中,当计算机引导时,BIOS把PXE client调入内存执行,并显示出命令菜单,经用户选择后,PXE client将放置在远端的操作系统通过网络下载到本地运行。

既然是通过网络传输,就需要IP地址;也就是说在其启动过程中,客户端请求服务器分配IP地址,之后PXE Client使用TFTP Client 通过TFTP(Trivial File Transfer Protocol)协议下载启动安装程序所需的文件。PXE技术与RPL技术不同之处为RPL是静态路由,PXE是动态路由。RPL是根据网卡上的ID号加上其他记录组成的一个Frame(帧)向服务器发出请求。而服务器中已有这个ID数据,匹配成功则进行远程启动。PXE则是根据服务器端收到的工件站MAC地址,使用DHCP服务为这个MAC地址指定一个IP地址。每次启动可能同一台工作站有与上次启动时不同的IP,即动态分配地址。

二.KickStart

KickStart是一种无人职守安装的方式。KickStart的工作原理是通过记录典型的安装过程中所需人工干预填写的各种参数,并生成一个名为ks.cfg的文件;在其后的安装过程中(不只局限于生成KickStart安装文件的机器)当出现要求填写参数的情况时,安装程序会首先去查找KickStart生成的文件,当找到合适的参数时,就采用找到的参数,当没有找到合适的参数时,才需要安装者手工干预。这样,如果KickStart文件涵盖了安装过程中出现的所有需要填写的参数时,安装者完全可以只告诉安装程序从何处取ks.cfg文件,然后去忙自己的事情。等安装完毕,安装程序会根据ks.cfg中设置的重启选项来重启系统,并结束安装。

三.实验过程中需要的rpm软件包

nfs-utils-lib-*

nfs-utils- *

xinetd-*

tftp-server-*

dhcp-*

dhcp-devel-*

pykickstart-*

system-config-kickstart-*

四.实验过程

配置本机ip地址

195045875.png

图1

195130436.png

图2

安装实验所需的所有安装包

195139963.png

图3

195149500.png

图4

195158186.png

图5

195208757.png

图6

195218300.png

图7

将本实验所涉及的所有服务都设置成开机自动启动

195228493.png

图8

创建实验过程中所需要的文件夹

195237207.png

图9

接下来就是实验的重点内容了,配置我们所需要的服务

1.dhcp服务

打开/etc/dhcpd.conf文件,由于我们是第一次配置该文件,我们可以将

/usr/share/doc/dhcp*/dhcpd.conf.sample复制成/etc/dhcpd.conf文件.也可以直接在vim编辑器的命令模式下输入:r /usr/share/doc/dhcp*/dhcpd.conf.sample这样可以直接进行编辑,这个就需要我们对vim编辑器使用的足够熟练哈

195247315.png

图10

195257433.png

图11

如果是像图11那样的配置dhcpd.conf文件,我们在安装操作系统时是不会成功的,出现的错误提示如图12

200631213.png

图12

正确的配置方法如图13:

195315849.png

图13

2.tftp服务

配置tftp服务,只需要将该文件中的disable一行的yes改成no即可,这个服务的配置文件还算很简单的啊,呵呵

195326843.png

图14

3.nfs服务

打开/etc/exports文件

配置内容如图15

195336385.png

图15

195344169.png

图16

4.ks.cfg文件的自动生成

好了,以上服务都配置完成后就是我们的重点角色ks.cfg文件的生成工作了,这个还真有点麻烦,好在我们前面安装了图形化配置工具,可以将我们的工作变的简单一些,不过还有一些技巧性问题我们在后面详述

在终端输入:system-config-kickstart

195354393.png

图17

195402870.png

图18

195411505.png

图19

195420984.png

图20

195435309.png

图21

195740618.png

图22

195750194.png

图23

195800422.png

图24

195809299.png

图25

195817941.png

图26

195825904.png

图27

195840154.png

图28

195120116.png

图29

195106426.png

图30

图31是我自己的ks.cfg文件,我已经修改过了

195901897.png

图31

终于配置完成,记得要将我们的配置文件保存到/kickstart文件夹,这个要与dhcpd.conf文件中定义的文件夹对应,不然肯定还是会出错的

好了,我们将一些后续工作完成就可以进行测试了,挂载上我们的光盘

使用一下几条命令来完成

mount /dev/cdrom /mnt/

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

cp /mnt/images/pxeboot/initrd.img /tftpboot

cp /mnt/images/pxeboot/vmlinuz /tftpboot

mkdir /tftpboot/pxelinux.cfg

cp /mnt/isolinux/isolinux.cfg /tftpboot/pxelinux.cfg/default

195927695.png

图32

编辑我们的/tftpboot/pxelinux.cfg/default文件

将timeout 修改成5(只要小一点就可以了)

然后就是将label linux后面的文件修改成:

kernel vmlinuz

append ksdevice=eth0 load_ramdisk=1 initrd=initrd.img network ks noipv6即可

不过这个文件是只读文件我们修改完成后要强制保存退出使用命令:wq!

195946439.png

图33

195957694.png

图34

我们还要将光盘里面的所有文件都复制到/install文件夹里面

cp –Rv /mnt/* /install

200018805.png

图35

可是这样做实在是太耗费时间了,我们可以直接将光盘挂载到/install文件夹里面

200031486.png

图36

好了,一切配置工作都已经完成了.我们重新启动所以服务

200050252.png

图37

五.测试安装过程

打开我们的测试机器,将其设置成从网络启动

200115921.png

图38

出现这个画面可想而知我们的实验成功了

以下是安装过程中的截图

200130397.png

图39

200143640.png

图40

200152232.png

图41

200159246.png

图42

200207815.png

图43

200215238.png

图44

200222364.png

图45

安装完成自动重启计算机

200231487.png

图46

成功进入安装完成的操作系统

200240282.png

图47

六.安装过程及配置文件出错解决方案

问题一:我们的tftp服务器无法打开,这个错误困扰了我n久,就是这一个小小的错误导致我来来回回重新做了n次测试,最后终于找到解决方法了,原来是我的服务器的防火墙打开了,我将防火墙关闭,一切问题得以解决,汗….

200322460.png

图48

200336940.png

图49

200348202.png

图50

问题二:tftp服务器无法连接,解决方案就是我们的dhcpd.conf文件中的next-server配置一定要指向我们的tftp服务器

200406396.png

图51

问题三:无法下载我们的ks.cfg文件,这个错误的解决方法就是将我们的ks.cfg文件的权限修改一下,让它具有读写执行的权限

200421439.png

图52

200438318.png

图53

问题四:我们5版的光盘是需要填写序列号的,可是通过图形界面生成的ks.cfg文件是没有跳过序列号的,怎么解决呢?我们自己添加一条记录让它自动跳过就行了啦

# Skip the key number

key –skip

200553953.png

图54

问题五:不能自动初始化磁盘,我们可以在ks.cfg文件中添加一条记录

zerombr yes

200605374.png

图55

问题四和问题五的解决方案截图

200452509.png图56

七.实验总结

笔者最大的心得就是,出错并不可怕,大不了从头在来,多做几次从中找出其中的问题.为了测试,我前前后后重启系统足有四五十次,来来回回从新搭建服务器足有十几次之多!这样更能让我体会到实验的细节问题,更能加深我以后排错的能力~由于翻阅查找了n多的blog和文档,如有雷同,纯属巧合……共同学习!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值