Linux PXE网络安装笔记

简介:
Linux PXE网络安装笔记
===========================================================
作者: tianyongjun(http://tianyongjun.itpub.net)
发表于: 2007.02.17 17:48
分类: Linux 
出处: http://tianyongjun.itpub.net/post/28274/264186
--------------------------------------------------------------- 
 

1. 安装原理:
客户端PXE网卡启动--DHCP服务器--获得IP--从TFTP目录上下载pxelinux.0、--根据配置文件指定的vmlinuz、 initrd--启动系统内核--通过内核指定地点去下载ks.cfg文件--跟据ks.cfg去(HTTP、FTP、NFS)服务器下载RPM包并安装系统----完成安装。

 

2. 具体实现方法:
1、 安装一台REDHAT AS 3.O SERVER , 完全安装。(免得以后要用到一些东东再费时间安装,以地址 192.168.1.1 为例)。
2、首先配制HTTP服务器(当然也可以是NFS、FTP)。配好后,在HTTP的DocumentRoot目录下(一般为/var/www/html)建一个rhel目录,用于放RedHat的安装文件。把RedHat第一张安装盘的RedHat目录及下面的内容全部考到这个目录下,把第二、第三张盘的 RPMS目录下的rpm包考到rhel/RedHat/RPMS目录下,完成安装文件的考贝。用service httpd restart开启HTTP服务。用 lynx  http://192.168.1.1/rhel 查看配置是否正确。
3、使用 kickstart ,系统管理员可以创建单个文件,该文件包括对典型 Red Hat Linux 安装中所询问的问题的回答。用redhat-config-kickstart命令做一个ks.cfg文件,注意在“安装方法”选项中选HTTP,在“HTTP服务器:”中打入HTTP服务器的IP地址192.168.1.1 ,在“HTTP目录:”中打入rhel,其它的我就不多说了。做好后把这个ks.cfg文件考到HTTP服务器的DocumentRoot/目录下。 
4、 在一台机器上做一下测试(注意:因为是自动安装,这台机器的上的数据可能全部被格式化)。用光盘启动机器,在boot:提示符下打入:linux ks=http://192.168.1.1/ks.cfg,看一下是不是能实现自动安装.如果可以继续以下步骤。
5、 配制DHCP、TFTP、和PXElinux。(当然这些服务可以和HTTP、NFS、FTP放在一台服器上) 
1) 配置TFTP服务器,用chkconfig tftp on 打开xinetd代理的tftp服务。 用 service xinetd restart 重起服务。
2) 做一台DHCP服务器,这是关键。下面是我的dhcp.conf文件:
ddns-update-style interim ;
ignore client-updates ;
allow booting ;
allow bootp ;
subnet 192.168.1.0 netmask 255.255.255.0 
{
default-lease-time 216000 ;
max-lease-time 432000 ;
option routers 192.168.1.1 ;
option domain-name "gdlc.org";
option subnet-mask 255.255.255.0 ;
option domain-name-servers 202.96.128.68 ;
range dynamic-bootp 192.168.1.100 192.168.1.200 ;
filename"/linux-install/pxelinux.0" ;
}
用service dhcpd restart 开启DHCP服务。
3)配制PEXlinux。要远程启动机器,就必须要有PXElinux这个由syslinux、isolinux派生出来的,支持PXE的 bootloader,它可以实现远程通过PEX启动一台机器。把/usr/lib/syslinux/pxelinux.0考到/tftpboot /linux-install目录下,(如果此目录下有此文件就不必再考了)把RedHat第一张安装光盘上images/pxeboot目录下的 initr.img和vmlinux也考到/tftpboot/linux-install目录下。在/tftpboot/linux-install /pxelinux.cfg目录用于放syslinux的配制文件。Sysconfig的配制文件有现成的可用,在RedHat第一张安装光盘 isolinux/下有一个isolinux.cfg文件,把它考成/tftpboot/ linux-install/pxelinux.cfg/default文件,把isolinux/*.msg考到/tftpboot/linux- install下.对default(也就是isolinux.cfg)作一下修改,下面是我的default文件:
default linux
prompt 1
timeout 600
display boot.msg
F1 boot.msg
F2 options.msg
F3 general.msg
F4 param.msg
F5 rescue.msg
F7 snake.msg
label linux
kernel vmlinuz
append initrd=initrd.img
label text
kernel vmlinuz
append initrd=initrd.img text
label expert
kernel vmlinuz
append expert initrd=initrd.img
label ks
kernel vmlinuz
append ks initrd=initrd.img 
label lowres
kernel vmlinuz
append initrd=initrd.img lowres
label autoinstall 
kernel vmlinuz
append ks=http://192.168.1.1/ks.cfg initrd=initrd.img devfs=nomount ramdisk_size=16384 nofb
label redflag
kernel rfvmlinuz
append initrd=rfinitrd.img
相关说明:
这个Default 文件实际上就是ISOLINUX 的配置文件, 很容易看懂, 就是告诉启动后使用那个内核引导,需要添加什么参数,粗体部分是根据我的需要添加的。
Ø 当引导至BOOT: 时键入 autoinstall 内核引导时就会加载 http://192.168.1.1/ks.cfg这个安装配置文件, 然后根据这个配置文件指导LINUX接下来的安装。同时在ks.cfg这个配置文件里指定了安装介质的方式,可以是 HTTP、FTP、NFS 的一种。有关配置文件的片断如下:
#Use Ftp installation
#url --url  ftp://gdlc:123456@192.168.1.1/rhel
如果选择FTP 方式安装就需要再配置 VSFTPD服务.在配置KICKSTART时要指定FTP服务器的地址及其用户名和密码,且FTP目录路径要用绝对路径;
#Use Web installation
url --url  http://192.168.1.1/rhel
#Use Nfs installation
#nfs --server=192.168.1.1 --dir=/rhel
如果选择NFS方式安装需要配置NFS服务 .在这里就不再哆嗦了。注意NFS目录路径也要用绝对路径;
在以上三中方式安装过程中用户是感觉不到差别的,安装速度均比用本地光驱安装快。当你键入autoinstall 后就可以去喝茶了,等你回来时你的系统已经全部装好。
Ø 当引导至BOOT: 时键入 redflag内核引导时就会加载rfvmlinuz和rfinitrd.img ,这两个文件是从RedFlag安装光盘里拷贝过来该名的,用它来引导RedFlag DeskToplinux安装界面,其他安装过程和上面的都差不多,只是RedFlag 不支持KICKSTART ,且只有在NFS方式安装是可以进行图形化安装,其他方式安装过程都是文本的。所以中还是交互安装过程。
Ø 其他版本的LINUX 如果是以RPM 安装包发行的估计都可以用同样的方法进行安装,所以有兴趣的话大家可以试试。

 



    本文转自vcdog 51CTO博客,原文链接:http://blog.51cto.com/255361/837857,如需转载请自行联系原作者






相关文章
|
3天前
|
NoSQL Linux 测试技术
Redis的安装(Linux版)
Redis的安装(Linux版)
22 1
|
13天前
|
安全 Linux 虚拟化
网络名称空间在Linux虚拟化技术中的位置
网络名称空间(Network Namespaces)是Linux内核特性之一,提供了隔离网络环境的能力,使得每个网络名称空间都拥有独立的网络设备、IP地址、路由表、端口号范围以及iptables规则等。这一特性在Linux虚拟化技术中占据了核心位置🌟,它不仅为构建轻量级虚拟化解决方案(如容器📦)提供了基础支持,也在传统的虚拟机技术中发挥作用,实现资源隔离和网络虚拟化。
网络名称空间在Linux虚拟化技术中的位置
|
13天前
|
缓存 Linux 测试技术
安装【银河麒麟V10】linux系统--并挂载镜像
安装【银河麒麟V10】linux系统--并挂载镜像
69 0
|
13天前
|
网络协议 安全 Linux
Linux网络名称空间之独立网络资源管理
Linux网络名称空间是一种强大的虚拟化技术🛠️,它允许用户创建隔离的网络环境🌐,每个环境拥有独立的网络资源和配置。这项技术对于云计算☁️、容器化应用📦和网络安全🔒等领域至关重要。本文将详细介绍在Linux网络名称空间中可以拥有的独立网络资源,并指出应用开发人员在使用时应注意的重点。
|
13天前
|
安全 网络协议 Linux
Linux网络名称空间概述
Linux网络名称空间是操作系统级别的一种虚拟化技术🔄,它允许创建隔离的网络环境🌐,使得每个环境拥有自己独立的网络资源,如IP地址📍、路由表🗺️、防火墙规则🔥等。这种技术是Linux内核功能的一部分,为不同的用户空间进程提供了一种创建和使用独立网络协议栈的方式。本文旨在全方面、多维度解释Linux网络名称空间的概念、必要性和作用。
Linux网络名称空间概述
|
11天前
|
存储 算法 Linux
【实战项目】网络编程:在Linux环境下基于opencv和socket的人脸识别系统--C++实现
【实战项目】网络编程:在Linux环境下基于opencv和socket的人脸识别系统--C++实现
31 6
|
22小时前
|
Linux 开发工具 C语言
Linux 安装 gcc 编译运行 C程序
Linux 安装 gcc 编译运行 C程序
5 0
|
23小时前
|
Ubuntu 网络协议 Linux
Linux(20) Ubuntu 20.04 网络接口自动切换路由配置
Linux(20) Ubuntu 20.04 网络接口自动切换路由配置
9 0
|
1天前
|
Linux Android开发
Linux(6)CH9434 SPI调试笔记
Linux(6)CH9434 SPI调试笔记
4 0
|
1天前
|
Linux
Linux(5)WIFI/BT调试笔记
Linux(5)WIFI/BT调试笔记
7 0