查看完整版本: 手工在纯命令行下编译iptables 1.3.8

我的野人 2008-4-8 15:35

手工在纯命令行下编译iptables 1.3.8

此文是我原先被这个玩意搞惨后写下的心得,发在我的blog里面,刚回答了一个朋友关于linux服务器的问题,怕多走弯路,就把这个文章分享一下。

系统环境:RHLE 4 最小安装
软件环境:Iptables 1.3.8

安装流程:

[b]1。安装RHLE 4的内核[/b]
在安装盘上查找所有的kernel*的RPM包,全部安装

[b]2。安装gcc与glibc环境[/b]
在安装光盘上查找所有的gcc*与glibc*的rpm包,然后安装,中间出现依赖关系,按照提示安装。

[b]3。下载新版本的iptables(试验的是1.3.8版本)[/b]
下载地址:
[url]http://www.netfilter.org/projects/iptables/files/iptables-1.3.8.tar.bz2[/url]
官方网站:
[url]http://www.netfilter.org[/url]

[b]4。释放压缩包内的文件[/b]
tar -xjvf iptables-1.3.8.tar.tar(注:下载后名字为iptables-1.3.8.tar.tar)

[b]5。编译与安装iptables[/b]
进入iptables压缩包释放出来的目录。执行
make KERNEL_DIR=/usr/src/kernels/[内核版本号]-i686
make install KERNEL_DIR=/usr/src/kernels/[内核版本号]-i686


如果你是开发者,需要开发包的话,再执行下面的命令。
make install-devel
普通用户不需要安装这个

至此,iptables安装完成。

[b]Q&S:[/b]

[b]1。[/b]若在执行第一步make的时候出现提示类似这样:

error including kernel header in userspace; use the glibs headers instead!
这时候需要编辑如下文件:
vi /usr/src/kernels/[内核版本号]-i686/include/linux/config.h
将下面3行内容前面加上//注释掉即可。

#if !defined (_kernel_) && !defined (_kernglue_)
#error including kernel header in userspace; use the glibs headers instead!
#endif
安装完毕后还原即可。

lianghongliang 2008-4-8 15:47

释放压缩包内的文件这一步可以在图形界面办方便好多吧?我最怕命令行的了

安装这软件要重新安装RHLE 4的内核?系统不是自带了吗?还要编译过?

lianghongliang 2008-4-8 15:47

刚看完帖子就被移动到这里来了,版主加精加得好快啊。

我的野人 2008-4-8 15:56

[quote]原帖由 [i]lianghongliang[/i] 于 2008-4-8 15:47 发表 [url=http://www.lucky8k.com/redirect.php?goto=findpost&pid=207739&ptid=38604][img]http://www.lucky8k.com/images/common/back.gif[/img][/url]
释放压缩包内的文件这一步可以在图形界面办方便好多吧?我最怕命令行的了

安装这软件要重新安装RHLE 4的内核?系统不是自带了吗?还要编译过? [/quote]

如果不克服输入命令行,想很好的使用linux做服务是很困难的。

解压很简单的,tar -zxvf,没有压缩的就tar -jxvf

那些kernel*包都是内核的周边文件包
比如devel、doc、hugemem、smp这样的包,内核在安装系统的时候就已经安装好了。

[[i] 本帖最后由 我的野人 于 2008-4-8 15:58 编辑 [/i]]

我的野人 2008-4-8 15:56

感谢加精。

lianghongliang 2008-4-8 15:59

[quote]原帖由 [i]我的野人[/i] 于 2008-4-8 15:56 发表 [url=http://www.lucky8k.com/redirect.php?goto=findpost&pid=207744&ptid=38604][img]http://www.lucky8k.com/images/common/back.gif[/img][/url]


如果不克服输入命令行,想很好的使用linux做服务是很困难的。

解压很简单的,tar -zxvf

那些kernel*包都是内核的周边文件包
比如devel、doc、hugemem、smp这样的包,内核在安装系统的时候就已经安装好了。 ... [/quote]
iptables这个软件安装的时候必须要安装这些包的吗?如果我安装的时候不是最小安装的,还要不要这步呢?
不是很明白,以前看安装软件的教程的时候没有看过要安装内核包的,是这软件特别?
或是你最小安装的系统才需要做这步骤?

magic80808 2008-4-8 16:59

gcc与glibc默认安装就带有了。

zhouyi9168 2008-4-8 17:06

路过看到精华帖,偶来支持支持。

江剑臣 2008-4-8 17:45

我的野人强悍,刚注册第二天就搞到精华帖了,来支持。

我的野人 2008-4-8 17:49

[quote]原帖由 [i]lianghongliang[/i] 于 2008-4-8 15:59 发表 [url=http://www.lucky8k.com/redirect.php?goto=findpost&pid=207748&ptid=38604][img]http://www.lucky8k.com/images/common/back.gif[/img][/url]

iptables这个软件安装的时候必须要安装这些包的吗?如果我安装的时候不是最小安装的,还要不要这步呢?
不是很明白,以前看安装软件的教程的时候没有看过要安装内核包的,是这软件特别?
或是你最小安装的系统才需要做这步骤? ... [/quote]
如果不是最小安装,直接可以编译。
这个软件必须要安装内核的周边包。

回magic80808
最小安装不会安装gcc和glibc

liycumt 2008-4-8 17:58

好像很复杂,看得我头都晕了。

tianyu 2008-4-8 18:12

看到原创进来支持的,我是不懂的。

fw0217 2008-4-8 21:04

原来楼主的精华帖在这里了,看不懂我也要支持。
页: [1]
查看完整版本: 手工在纯命令行下编译iptables 1.3.8