《远程网络安装redhatlinux系统的方法》由会员分享,可在线阅读,更多相关《远程网络安装redhatlinux系统的方法(5页珍藏版)》请在金锄头文库上搜索。
1、远程网络安装 RedHat Linux 系统的方法一: Linux 安装工作原理众所周知,在安装过程中 Linux 首先需要一个引导程序来让安装光盘启动,再实行配 置与安装。但目前转化为远程网络安装那么就需要我们的安装程序能够远程地通过网络传送 给客户端。因此在搭建远程 Linux 安装服务器时候首先要值得注意以下几个问题 :1. 远程客户端属于裸机。在这里所定义的裸机是除了标准硬件之外没有任何的操作系 统与软件程序。 当然也可以拥有操作系统或者是软件, 之所以告诉大家是裸机是主要说明最 简单的一种思维方式。2. 远程客户端必须能够支持网络启动。在这里所说明的问题是远程客户端为了能够发 送安装
2、请求必须能够通过网络的方式进行, 将安装请求发送给服务器端。 因此客户端必须存 在网卡,并且网卡上拥有 PXE ROM预引导执行环境芯片而且BIOS能够支持网络启动。3. 在远程计算机启动后将会出现初始化设置,此时因客户端没有进入操作系统或处于在 裸机状态下, 不可能绑定我们所熟悉 TCP/IP 地址或者其他网络协议地址。 因此他们之间 的沟通必须通过 IP 地址自动分配服务 DHCP 来为客户端进 行分发 IP 地址,从而实现Client-Server 端之间的链接与沟通。4. 在远程安装客户端得到 IP 地址之后,将请求远程安装服务器给客户端一个 Linux引导程序以便于引导 Linux
3、并在客户端上实现安装界面。但是在 TCP/IP 协议栈中如果采用 TCP协议进行传送服务, 那么将会出现著名的 TCP三次握手过程,从而导致远程客户端等待 超时而无法完成引导过程。因此就需要采用 UDP协议进行快速传递,确保远程客户端的引导。因此笔者在这里所采用的程序为TFTP琐碎文件传输协议服务作为远程传输服务器传送 Linux 引导程序的服务器。5. 虽然UDP速度非常快速(这是本身结构有关),但是其仍然属于不可靠协议之一不具备纠错、 确保数据到达目的地等保障机制, 因此在传输大量文件或者是大文件时候还是需 要采用TCP方式,这样将不会出现因UDP协议传输丢包而导致安装无法进行。在这里有多
4、种方式供大家选择 :1) NFS网络文件系统2) HTTP3) FTP 等笔者在这里选择采用 FTP方式,主要原因在于 FTP的方式比较简单。因此准备建立远程安装服务器至少需要三个服务:DHCR TFTR FTP,三个服务可以再三台不同的计算机上,也可以在同一台计算机上进行实现。原理归纳 :远程客户端计算机启动,由于BIOS设置了网卡启动,所以网卡PXEROM中的程序被调入内存执行。首先,客户端在网络中寻找DHCP服务器,然后请求一个 IP地址;同时DHCP服务器联系到TFTP服务器为此客户端发送一个bootstrap 引导程序)。客户端收到bootstrap( 文件pxelinux.O) 后
5、执行,bootstrap 会请求TFTP传送bootstrap 的配置文件 (pxeli nux.cfg)。收到后读配置文件。根据配置文件内容和客户情况,客户端请求TFTP传送内核映象文件(vmlinuz)和根文件系统文件(initrd.img)。最后启动内核。这就是一个完 整的pxe构建过程。然而要使网卡启动后再继续网络安装系统,则最后还需要FTP服务将系统所需安装文件放置FTP相应目录中进行传输安装。二:Linux安装实现步骤这里实现中所使用的平台为RHEL4您可以在FC系列、RH9 CenOS中都可以实现。1配置DHCF服务器配置DHCF服艮务器主要用途是为了能够给客户端分配IP地址,从
6、而让客户端与TFTP及FTP进行联系1.1 DHCP的配置文件DHCP勺配置文件的位置在/etc目录下配置文件的名称为 dhcpd.conf。如果您的系统中 不存在dhcpd.conf同时您又确认您确实安装了 DHC程序,那么您可以手动建立 dhcpd.conf 文件。1.2配置文件的内容option space PXE; #DHCP 对PXE的TFTP(琐碎文件传输协议) 应答选项opti on PXE.mtftp-ip code 1 = ip-address;opti on PXE.mtftp-cport code 2 = un sig ned in teger 16;opti on PX
7、E.mtftp-sport code 3 = un sig ned in teger 16;opti on PXE.mtftp-tmout code 4 = un sig ned in teger 8;opti on PXE.mtftp-delay code 5 = un sig ned in teger 8;option PXE.discovery-controlcode 6 = unsigned integer8;opti on PXE.discovery-mcast-addr code 7 = ip-address;class pxeclie nts match if substri n
8、g(optio n ven dor-class-ide ntifier,0, 9)=PXEClie nt;opti on ven dor-class-ide ntifier PXEClie nt;ven dor-opti on-space PXE;file name pxeli nux.O; #指定客户端所需要的的bootstrap(弓I导器)文件名#指定 TFTP服务器的 IP 地址ddn s-update-style in terim;ignore clie nt-updates;default-lease-time 1200;max-lease-time 9200;上述所指明的pxeli
9、 nux.0为网络远程安装引导程序bootstrap.其位置在/usr/lib/sysli nux目录中。1.3启动DHCP服务#service dhcpd restart2、配置TFTP服务器配置TFTP服务器主要用途是为了能够给客户端传送bootstrap 程序即pxelinux.0,这样才能够让客户端进行引导加载内核映象文件(vml in uz)和根文件系统文件(ini trd.img)以及启动内核(Kernel)2.1 TFTP的配置文件TFTP的配置文件的位置在/etc/x in etd.d 目录下配置文件的名称为 tftp 。配置内容如下:service tftpsocket_ty
10、pe = dgramprotocol = udpwait = yesuser = rootserver = /usr/sb in/i n. tftpdserver_args = -u nobody -s /tftpboot #指定 TFTP 的根目录所在位置,允许任何用户可以进行访问disable = noper_source = 11cps = 100 2 flags = IPv4 在这里主要修改的字段是disable , 将yes改为no。以打开TFTP服务2.2启动TFTP服务#service xin etd restart3、配置FTP服务器配置FTP服务器主要用途是为了能够给客户端传
11、送Linux的配置环境与安装程序。在RHEL4中笔者采用的是 VSFTP为了简单些、更简单些,笔者并没有对vsftp进行任何配置只是启动了 vsftp 的守护进程#service vsftpd restart启动后利用匿名账户进行测试,如果测试成功您就可以将RHEL4的5张光盘中的所有安装文件全部拷贝到匿名用户的文件夹/var/ftp/ 目录下4、配置bootstrap 目录要配置TFTP所要传输的bootstrap,首先要准备好引导文件、内核镜像文件、跟文件 系统文件。4.1 bootstrap 文件:pxelinux.O文件位置在/usr/lib/syslinux目录中。将其拷贝到 /tf
12、tpboot 目录中#cp /usr/lib/sysli nux /pxeli nu x.0 /tftpboot4.2. 内核镜像文件:vmlinuzvmlinuz文件在RHEL4第一张光盘下的/images/pxeboot 目录中,将 vmlinuz拷贝到 /tftpboot 目录中假定光盘加载到/mnt/cdrom#cp /mn t/cdrom/images/pxeboot/vmli nuz /tftpboot4.3. 根文件系统文件:initrd.imginitrd.img 文件在 RHEL4第一张光盘下的 /images/pxeboot 目录中,将 initrd.img 拷 贝到/tf
13、tpboot 目录中假定光盘加载到/mnt/cdrom#cp /mn t/cdrom/images/pxeboot/i nitrd.img /tftpboot5、创建pxelinux.cfg 目录与default 文件pxelinux.cfg 为远程安装客户端配置文件所在目录,您可以为不同的计算机制定不同 的安装方式或者方法。但是基本上我们都可以用 default配置文件来进行为所有的计算机进 行配置。#cd/tftpboot#mkdir pxeli nu x.0#videfaultdefault 内容如下:DEFAULT in stallPROMPT 1LABEL in stallKERNE
14、L vmli nuz#指定kernel文件APPEND ini trd=i nitrd.img devfs=n omou nt ramdisk_size=16384#启动参数包括启动内核时所需要mount的挂载点和ramdisk大小。一般16384都可以满足了。6、最后检查一下/tftpboot目录中是否存在如下文件:1) pxeli nux.O #bootstrap文件2) vml inuz # 内核镜像文件3) i nitrd.img #根文件系统文件4) pxeli nux.cfg #为远程客户端使用的配置文件目录5) default #为远程客户端使用的配置文件如果全部存在。那么现在可以启动dhcp,tftp,ftp三项服务,找个机器测试一下吧!