perl中CPAN的安装

简介:

最近一直在学习nagios监控的知识,因为使用SNMP方式进行监测。而nagios的SNMP监测文件是pl结尾的perl脚本,所以需要安装CPAN。

下面就安装CPAN的安装记录步骤如下:

首先安装perl,可以通过yum方式进行安装。这样减少了套件的依赖性。

[root@localhost ~]# yum -y install perl

wps_clip_image-16732

wps_clip_image-22444

Perl安装完毕后,接下来要安装CPAN。也是通过yum方式进行安装,如下图:

[root@localhost ~]# yum -y install perl-CPAN

wps_clip_image-24168

wps_clip_image-28892

CPAN安装完毕后,我们现在登陆进去。使用:perl -MCPAN -e shell,注意该命令中的 -MCAPN是在一起的没有分开。

wps_clip_image-31351

第一次进入是需要进行配置的,按照提示操作即可。

wps_clip_image-15346

登录进去后正常的操作界面,如上图示。

接下来我们就可以正常安装相关的模块。因为我测试的是nagios的SNMP监控插件,所以需要安装Net::SNMP(注意该模块名称的大小写)模块。如下图:

cpan[1]> install Net::SNMP

wps_clip_image-14604

如果安装过程中好半天,没有反应的话。我们是可以通过修改Urllist进行。

找到CPAN的Config.pm文件,如下图:

wps_clip_image-10191

可以看到CPAN的Config.pm文件,进行编辑,如下图:

wps_clip_image-26952

wps_clip_image-31686

找到urllist选项,如上图。然后填入国内的CPAN镜像站点即可,因为默认是使用国外的CPAN镜像站点,所以会很慢。

查找国内的CPAN镜像站点,可以到http://www.cpan.org/SITES.html,这个站点进行查询。

wps_clip_image-32512

Urllist的格式如下:

‘urllist’ =< [q[http://mirrors.163.com/cpan/]],

我现在把国内的已知的CPAN镜像站点全部加入进去,如下:

  ‘urllist’ => [q[http://mirrors.163.com/cpan/],q[http://mirrors.sohu.com/CPAN/],q[ftp://mirrors.ustc.edu.cn/CPAN/],q[http://mirrors.ustc.edu.cn/CPAN/],q[rsync://mirrors.ustc.edu.cn/CPAN/],q[ftp://mirrors.xmu.edu.cn/CPAN/],q[http://mirrors.xmu.edu.cn/CPAN/],q[rsync://mirrors.xmu.edu.cn/CPAN/],q[ftp://ftp.cuhk.edu.hk/pub/packages/perl/CPAN/],q[http://cpan.communilink.net/],q[http://ftp.cuhk.edu.hk/pub/packages/perl/CPAN/],q[http://mirrors.devlib.org/cpan/],q[http://mirrors.hust.edu.cn/CPAN/],q[ftp://mirrors.neusoft.edu.cn/mirror/cpan/],q[http://mirrors.neusoft.edu.cn/cpan/]],

退出编辑并保存Config.pm文件。

wps_clip_image-18146

然后输入perl -MCAPN -e shell,再次进入CPAN界面,如下图:

wps_clip_image-13688

因为刚刚我们修改Config.pm的urllist,所以我们现在需要重新加载urllist,输入reload indexreload cpan命令,如下图:

wps_clip_image-9783

wps_clip_image-12515

然后再进行Net::SNMP模块的安装,如下图:

wps_clip_image-720

wps_clip_image-23847

至此Net::SNMP模块安装结束。

相关文章
|
18天前
|
Perl
Perl 教程 之 Perl 包和模块 2
Perl教程介绍了BEGIN和END模块,它们在脚本加载编译后(BEGIN)和解释器退出前(END)执行。这两个关键字常用于模块创建。示例代码显示了BEGIN打印&quot;这是BEGIN语句块&quot;,主程序打印&quot;Begin和Block实例&quot;,而END在结束时打印&quot;这是END语句块&quot;。
12 0
|
19天前
|
Perl
Perl 教程 之 Perl 包和模块 1
Perl教程介绍了包和模块的概念。包是具有独立符号表的命名空间,允许在同一程序中使用相同变量名而不冲突。通过`package mypack;`定义包,使用`包名::变量名`来访问其他包的变量。示例展示了`main`和`Foo`两个包的交互,利用`__PACKAGE__`变量显示当前包名。程序输出显示了不同包中变量的独立性。
16 2
|
17天前
|
Perl
Perl 教程 之 Perl 包和模块 6
在Perl教程中,了解Perl包和模块的安装:解压Person.tar.gz,进入目录,运行&quot;perl Makefile.PL&quot;生成Makefile,接着&quot;make&quot;编译,&quot;make test&quot;检查,最后&quot;make install&quot;安装到系统。
8 0
|
1月前
|
Unix 程序员 Linux
Perl
Perl
12 0
|
Linux Perl Python