这次讲的是贝壳的一次比较顺利的经历,安装linux2.6.14-3内核。并且在其上使用iptables时出现问题和解决的方法。

cd /usr/src
tar -zxvf linux...
ln -s linux... linux
cd linux
make mrproper
make menuconfig
make dep
make bzImage
make modules
make modules_install
mkinitrd initrd-2.6.14-3.img 2.6.14.3
cp initrd-2.6.14-3.img /boot
cp System.map /boot/System.map-2.6.14-3
cp arch/i386/boot/bzImage /boot/vmlinuz-2.6.14-3
cp .config /boot/config-2.6.14-3
cd /boot
vi grub/menu.lst

以上就完成了内核编译的工作,按照经典流程走的,没有啥问题,问题在后面。

重启,然后运行到iptables的时候报错。所以升级两个东西,iptables-1.3.4和module-init-tools-3.2.2。然后发现还是有问题。然后我打入lsmod。发现什么模块也没有,这样不出错才见鬼了呢。多试验几次,可以发现要加载iptable_filter模块。而他又依赖于ip_tables模块。OK,用modprobe加载。再启动,还是报错。

仔细看看设置,是在REJECT行报错,所以应该是加载REJECT模块,ipt_REJECT。成功,加载的具体方法是在/etc/init.d/iptables里面添加。

/usr/local/sbin/modprobe -a ip_tables iptable_filter ipt_REJECT

很简单吧。