【发布时间】:2016-08-10 08:38:42
【问题描述】:
我正在尝试安装munin-mysql plugin,但遇到了一个奇怪的错误。 Munin 抱怨在@INC 中找不到DBI.pm:
[root@mybox perl5]# munin-run mysql
Can't locate DBI.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at /etc/munin/plugins/mysql line 127.
BEGIN failed--compilation aborted at /etc/munin/plugins/mysql line 127.
但是,它确实在路径中,并且恰好在/usr/local/lib64/perl5。它是通过命令cpanm DBI 安装的。
其实有几个DBI.pm文件;我怎么知道要使用哪一个?
[root@mybox perl5]# find / -name DBI.pm
/root/.cpan/build/DBI-1.634-Aazmvi/blib/lib/Bundle/DBI.pm
/root/.cpan/build/DBI-1.634-Aazmvi/blib/lib/DBI.pm
/root/.cpan/build/DBI-1.634-Aazmvi/lib/Bundle/DBI.pm
/root/.cpan/build/DBI-1.634-Aazmvi/DBI.pm
/root/.cpanm/work/1460983027.32244/DBI-1.634/blib/lib/Bundle/DBI.pm
/root/.cpanm/work/1460983027.32244/DBI-1.634/blib/lib/DBI.pm
/root/.cpanm/work/1460983027.32244/DBI-1.634/lib/Bundle/DBI.pm
/root/.cpanm/work/1460983027.32244/DBI-1.634/DBI.pm
/root/munin-mysql-master/t/mock/DBI.pm
/usr/local/lib64/perl5/Bundle/DBI.pm
/usr/local/lib64/perl5/DBI.pm
相关问题:
【问题讨论】:
-
检查 DBI.pm 文件的权限。
-
已经完成,文件和父目录的权限为 755。
-
命令
perl -MDBI -e1的结果是什么? -
该命令不输出任何内容并以零状态退出。
-
要使用的正确实例是
/usr/local/lib64/perl5/DBI.pm。其他主要是来自 cpan、cpanm 和 munin 的工作文件。/usr/local/lib64/perl5中的另一个实际上是模块Bundle::DBI