设为首页 友情链接
在线留言 发表文章
加入收藏 广告联系

刺猬首页

| 专案技术 | 网络技术 | 图形图象 | 网络编程 | 网页设计 | 操作系统 | 服务器 | 技术白皮书 | 在线实验室 | 刺猬论坛 |
小说专版  | 数据库 | 设计赏析 | 存储频道 | 网络安全 | 私服架设 |  Solaris | 网站评估 | PC维护技巧 | 下载中心 | 博 客 |
专   题: | Linux | java | cisco | 防病毒 | 刀片 | SOA | iscsi | ASP.NET | SQL | Oracle |
您现在的位置: IT公社 IT community >> Linux专题 >> 内核研究 >> 教程正文 用户登录 新用户注册
专 题 栏 目
最 新 热 门
最 新 推 荐
相 关 文 章
教你怎样让Quake 3在Lin…
教你如何把Linux变为实时…
教你定制自己的压缩的Fr…
教你在Linux操作系统下也…
手把手教你编译安装MPla…
教你在Linux系统控制台下…
Linux管理员秘技:用快捷…
教你如何提高Linux操作系…
教你如何实现Linux与win…
入门文章:教你学会编写…
  教你一招,给Linux内核补IPVS补丁         
教你一招,给Linux内核补IPVS补丁
 

首先在安装Red Hat 7.2的时候,要将所有编译内核的库文件和编译工具都选上。如果系统安装后,发现不能编译内核,请重新安装安装光盘中以Kernel开头的RPM包。关闭一些不常用的服务后,再重新启动。

然后解压下载的内核,将其放在/usr/src/目录下,命令如下:

  

  # tar xzvf linux-2.4.21.tar.gz -C /usr/src

  # cd /usr/src

  # ln -s ./linux-2.4.21 linux
  

用户在/usr/src目录下,给新内核打上IPVS的补丁,命令如下:

# gunzip linux-2.4.21-ipvs-1.0.10.patch.gz

 |patch -p0 //将IPVS的Patch加载到内核的代码中
  

如果是利用Direct Routing或IP TUN模式,还需要加载“hidden”的patch (hidden-2.4.20pre10-1.diff)档案,将其放在/usr/src目录下,利用下面的命令:

  # cat hidden-2.4.20pre10-1.diff | patch -p0
  

内核配置

开始编译前,内核的配置工作很重要,命令如下:

  

  # cd linux //进入编译目录下

  # make mrproper //删掉上次编译产生的.o文件等

  # make menuconfig
  

在内核的配置过程中,最重要的就是网卡的驱动。如果不能很好地把网卡驱动起来,那么所有的工作都是徒劳的。接着只需注意编译选项中的如下几项:

  

  Code maturity level options --->

  [*] Prompt for development and/or incomplete code/drivers

  #### 请选择代码的成熟性

  Networking options --->

  [*] Network packet filtering (replaces ipchains)

  [ ]  Network packet filtering debugging

  ...

  IP: Netfilter Configuration --->
  

编译内核

在用户保存了各种配置,退出后,系统会提示用户运行“make dep”命令。具体过程如下:

  

  # make dep //确保所有的相依关系,会花一点时间

  # make clean //清除一些已经无用的中间代码

  # make bzImage //开始编译内核,屏幕上出现很多编译内容,

  大概20分钟左右,视系统强壮而定

  # make modules //编译模块

  # make modules_install //安装模块

  #cp arch/i386/boot/bzImage  /boot/ vmlinuz-2.4.21-lvs

  #cp System.map /boot/System.map.2.4.21-lvs
  

修改LILO

如果使用LILO引导开机,那么需要照下面的格式修改/etc/lilo.conf:

  

  #vi /etc/lilo.conf

  prompt

  timeout=50

  boot=/dev/hda

  map=/boot/map

  install=/boot/boot.b

  linear

  image=/boot/vmlinuz-2.4.7-10

  label=linux

  root=/dev/hda5

  read-only

  image=/boot/vmlinuz-2.4.21-lvs

  label=lvs

  root=/dev/hda5

  read-only #添加以上这一段

  other=/dev/hda1

  label=win

  table=/dev/had # 结束编辑退出

  # lilo //重新运行LILO生效
  

如果是用GRUB引导,需要设定好/boot/grub.conf

  

  default=1

  timeout=10

  splashimage=(hd0,0)/boot/grub/splash.xpm.gz

  title Linux (2.4.7-10)

  root (hd0,0)

  kernel /boot/vmlinuz-2.4.7-10 ro

  root=LABEL=/initrd /boot/initrd-2.4.7-10.img

  title LVS (2.4.21-lvs)

  root (hd0,0)

  kernel /boot/vmlinuz-2.4.21-lvs ro

  root=LABEL=/initrd /boot/initrd-2.4.21-lvs.img

  title Windows

  map (hd0) (hd1)

  map (hd1) (hd0)

  root (hd1,0)

  chainloader (hd1,0)+1

  makeactive

  boot
  

重新开机,选择LVS内核启动机器,查看开机过程有无错误发生,然后检查/proc/sys/net/ipv4/conf/all/hidden是否存在。如果不存在,说明编译中有问题,建议用户重新再编译。如果一切顺利,那么可以安装ipvsadm的二进制软件包。安装后可以用下面的命令检验,如果出现以下提示,说明安装成功:

  

  # ipvsadm // IPVS的管理软件

  IP Virtual Server version 1.0.9 (size=4096)

  Prot LocalAddress:Port Scheduler Flags

  -> RemoteAddress:Port Forward Weight ActiveConn InActConn
Linux联盟收集整理

频道声明:本频道的文章除部分特别声明禁止转载的专稿外,可以自由转载.但请务必注明出出处和原始作者 文章版权归本频道与文章作者所有.对于被频道转载文章的个人和网站,我们表示深深的谢意。

原始作者:佚名 录入时间:2007-2-4 20:27:07
信息来源:不详 投稿信箱:itqoo@126.com
教程录入:itqoo    责任编辑:itqoo 
  • 上一个教程:

  • 下一个教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    - 关于我们 - 合作伙伴 - 友情链接 - 广告刊登 - 投稿热线 - 在线留言版权声明联系方式 -
    IT公社版权所有 粤ICP备05127012号
    Copyrigh@2005-2006 itqoo.com.Inc All Rights Reserved  推荐分辨率 1024*768
    联系站长:E-Mail:itqoo@126.com     MSN:urchincc@hotmail.com    QQ:点击这里给我发消息
    特别感谢:亿太网络提供空间支持