32位机器上安装net-snmp

来源:互联网 发布:华为云计算岗位 编辑:程序博客网 时间:2024/05/16 09:45

 头一回在csdn上写东西,有点激动。

先说说我的实验环境吧

红帽redhat AS3 ,32位机器和OS,我拿到机器的时候该机器已经安装了net-snmp5.0.8,版本低了点,snmptable功能不完善,不能输出完整的路由表信息。需要更新,既然要更新,就更到最新net-snmp5.4.2.1.^_^,于是,我开始了让我头疼的遭遇

 

我在64位机器上安装过net-snmp5.4.2.1,于是最初就照葫芦画瓢:

#tar zxvf net-snmp-5.4.2.1.tar.gz

#cd net-snmp-5.4.2.1

#./configure -prefix=/usr -with-default-snmp-version=2 -with-sys-contact="root@" -with-sys-location="China" -with-logfile=/var/log/snmpd.log -with-persistent-directory=/var/nst-snmp

 

(说明:-prefix=/usr 这个选项是表示将net-snmp提供的函数如snmpget等安装/usr/bin下,这样就可以再命令行下直接使用那些命令。其他的选项不是很重要)

#make

就出了一大堆错误,

error :NO target to make "/usr/lib64/perl5/5.8.5/x86_64-linux-multi-thread " ,needed by Makefile

具体的错误我记不太清了,大概就是这样的错误。

 

在64位机器上顺风顺水以后,出了这样的问题我还真懵了。

我瞎忙了N久之后,即看了看上面出现的目录里到底有什么,一看不知道,看了才知道,32位机器上根本没那个目录,而是有

“/usr/lib/perl5/5.8.0/i386-linux-multi-thread”这个目录。

怎么办?

硬着头皮去Makefile文件里看,果然有好多定义的路径中出现了"/usr/lib64"及其下的路径,于是乎,字符串替换

vi Makefile

:g/lib64/s//lib/g

:g/5.8.5/s//5.8.0/g

:g/x86_64/s//i386/g

完成了替换

:wq

接着make

还是不对,还是出错

我发现提示信息中有不少

make all in  .../net-snmp-5.4.2.1/snmplib

Entering directory ".../net-snmp5.4.2.1/snmplib"

..

Leaving directory ".../net-snmp-5.4.2.1/snmplib"

make all in .../net-snmp-5.4.2.1/agent

Entering directory ".../net-snmp-5.4.2.1/agent"

Leaving directory ".../net-snmp-5.4.2.1/agent"

...

我就进去这些目录,发现在这些目录下,还有Makefile文件,

cd snmplib

vi Makefile

接着替换那些路径

:g/lib64/s//lib/g

:g/5.8.5/s//5.8.0/g

:g/x86_64/s//i386/g

完成了替换

:wq

我把net-snmp-5.4.2.1下的所有子目录中的Makefie都修改了

可结果还是有错误。

我冷静了一下,想起之前我在网上查到一个资料,来源是:http://www.linuxboy.net/wordpress/?p=182。

我决定下载和安装beecrypt-4.1.2.tar.gz和libelf-0.8.9.tar.gz

按照链接网页中的步骤:

tar zxvf beecrypt-4.1.2.tar.gz

cd beecrypt-4.1.2

./configure  -prefix=/usr/local/beecrypt

make

make install

cd ..

tar libelf-0.8.9.tar.gz

cd libelf-0.8.9

./configure  -prefix=/usr/local/beecrypt

make

make install

一切都很顺利

 

然后是链接文件的建立

  ln -s /usr/local/beecrypt/lib/libbeecrypt.la /usr/lib/libbeecrypt.la
  echo “/usr/local/beecrypt/lib” >> /etc/ld.so.conf
  export CFLAGS=”-I/usr/local/beecrypt/include/beecrypt -I/usr/local/libelf/include -L/usr/local/beecrypt/lib -L/usr/local/libelf/lib”

echo “/usr/local/libelf/lib” >> /etc/ld.so.conf
ldconfig -v
ldconfig

因为懒得敲了,就粘过来这一段

然后

#tar zxvf net-snmp-5.4.2.1.tar.gz

#cd net-snmp-5.4.2.1

#./configure -prefix=/usr -with-default-snmp-version=2 -with-sys-contact="root@" -with-sys-location="China" -with-logfile=/var/log/snmpd.log -with-persistent-directory=/var/nst-snmp

#make

make install

结果很顺利,检查一下是否成功

在命令行下直接敲snmpget这个目录,会出来该命令的使用方法,最上面几行就包括了版本信息,显示出5.4.2.1就什么安装ok啦

 

个人小结:

1 有问题多google和baidu一下

2 衷心感谢那些把自己的经历写出来和大家分享的作者们

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

原创粉丝点击