LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1235|回复: 2

利用TFTP协议和DHCP协议,实现Linux的网络(自动)安装

[复制链接]
发表于 2005-2-9 11:55:30 | 显示全部楼层 |阅读模式

  1. 今天是大年初一,首先祝大家新年愉快!鸡祥如意!
  2.     大多情况,我们安装系统都是单机值守安装,但当机器特别多的时候,我们常常采用克隆方式安
  3. 装,克隆固然可以很方便的安装,但克隆不适合异构的大量机器。而TFTP和DHCP的结合就可以弥
  4. 补这种不足,既可以实现安装的自动化也能解决异构机器给克隆带来的麻烦。
  5. Linux提供了本地和网络安装多种安装方式,一般我们都是本地安装或者从网络复制文件。这里我教
  6. 大家一种无人值守的自动网络安装。以后我会告诉大家Linux无盘站的构建方法。废话少说,下面我
  7. 们就开始…
  8. 注意:以下的所有试验都是在WinXP下的VMWare4.5.2中安装的RHAS3中实现的。
  9. 原理很简单,那就是让支持网络启动的机器在启动的时候首先通过Bootp协议从DHCP服务器获得它
  10. 的IP地址,然后再让DHCP服务器告诉它后面该执行的TFTP启动,由TFTP控制该机器实现自动安
  11. 装…基本步骤如下:
  12. 1.        配置网络(NFS、FTP或HTTP)服务器并导出安装树(所有安装盘内容复制到一起的结
  13. 构)。我构建的是FTP服务器(10.8.22.18),用Serv-U,XP下构建
  14. 2.        配置 PXE 引导所必需的 tftp 服务器文件。
  15.         执行如下格式的命令:
  16.       pxeos  -a  -I  "<系统描述>"  -p  <安装协议>  -D  0  -s 服务器  -L  <位置> <系统标识>
  17. &#61656;        「系统描述」简短描述;
  18. &#61656;        「安装协议」 选择 NFS、FTP、或 HTTP 作为网络安装类型;
  19. &#61656;        「服务器」提供 NFS、FTP、或 HTTP 服务器的域名或 IP 地址;
  20. &#61656;        「位置」安装目录树在服务器根下的相对位置
  21. &#61656;        「系统标识」用一个词的独特名称来识别Linux。它在 /tftpboot/linux-install/中作目录
  22. 名称;
  23. 如果 FTP 被选为安装协议,而且不能使用匿名登录,则请指定用户名和口令登录,则在<系统标识
  24. > 前面使用选项:        A 0 -u 用户名 -p 密码
  25.            举例:
  26.           #pxeos  –a  –I  “RHEL AS 3 by syd168”  –p  FTP  –D  –s  10.8.22.18  -L  /linux  RHAS3

  27. 3.        添加允许从 PXE 配置中引导的主机到TFTP服务器。使用 pxeboot添加主机:
  28.            pxeboot -a -O <系统标识> -r <虚拟盘的大小> [-K <Kickstart文件>] <IP/主机名|子网>
  29. &#61656;        -a — 表明要添加主机。
  30. &#61656;        -O <系统标识> 必须和上面定义的一致
  31. &#61656;        -r <value> — 使用 ram disk 的大小 默认设置10000即可
  32. &#61656;        <host> —要添加主机的 IP或主机名或子网(如255.255.0.0。
  33. &#61656;        Kickstart文件是完成自动安装所必须的配置文件,需要专门创建。RH中的有可视化工具的
  34.         举例:
  35.         #pxeboot -a -O RHAS3 -r 10000 -K [url]ftp://10.8.22.18/syd168.cfg[/url]   255.255.0.0
  36. &#61621;        我发现一个奇怪的现象,构建TFTP时,安装树下要有/disc1目录,并在其下包含RHAS3
  37. 原来安装树下的images内容,所以我们只要在安装树根下建立一个叫disc1的目录,并复制images及
  38. 其下的所有内容到其中即可。
  39. 4.        启动 tftp 服务。
  40.      #chkconfig tftp on
  41.       #chkconfig tftp start
  42. 5.        配置 DHCP。
  43. 因为默认DHCP是不工作的,而且没有配置文件存杂,所以一般要复制样本文件:
  44.       #cp `rpm –ql  dhcp|grep sample`  /etc/dhcpd.conf
  45.       #vi /etc/dhcpd.conf
  46. 添加如下内容,并根据实际修改。
  47.     allow booting
  48.     allow bootp
  49.     class “pxeclients” {
  50.     match if substring(option  vendor-class-identifier ,0,9)=”PXEClient”;
  51.     next-server 172.16.0.3              --指定TFTP服务器地址
  52.     filename   “linux-install/pxelinux.0”
  53. }
  54. 6.        引导客户端机器(客户端机器必须支持网络启动的功能,如果不知道,可以用VMWare
  55. 测试),并启动安装。
复制代码
发表于 2005-2-9 12:03:27 | 显示全部楼层
好文章
谢谢兄弟
回复 支持 反对

使用道具 举报

发表于 2005-2-9 15:30:46 | 显示全部楼层
真凑巧, 兄弟是新手, 这几天也在研究怎么搞无盘工作站.
(为了鼓动其他兄弟用linux, 而且不用动硬盘).
而且在客户端以能联接出现"boot":提示符了, 估计很快就能成功.
我主要参考了以下俩篇文章, 希望能对大家有点用:
http://www-900.ibm.com/developer ... t/l-pex/index.shtml
http://syslinux.zytor.com/pxe.php

有兴趣的朋友可以一起交流一下.
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表