歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux綜合 >> Linux內核 >> 教你一招,給Linux內核補IPVS補丁

教你一招,給Linux內核補IPVS補丁

日期:2017/2/27 9:44:03   编辑:Linux內核
  首先在安裝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 --->    其中“IP: Virtual Server Configuration”的配置參見圖1。  [[The No.1 Picture.]]     編譯內核  在用戶保存了各種配置,退出後,系統會提示用戶運行“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



Copyright © Linux教程網 All Rights Reserved