找不到 DBI.pm,即使它在路径中
Cannot find DBI.pm even if it's in the path
我正在尝试安装 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
相关问题:
- Can't locate DBI.pm
- Unable to locate DBI.pm module in Perl
munin-run
switches users。默认用户是 nobody
。该用户可能没有读取该文件的权限。
The script must be run with sufficient privileges, usually as root, as it switches to either munin-node's default user (often "nobody") or any user specifically configured to run the given plugin.
检查 munin-run --debug
它是哪个用户 运行 并检查用户是否可以阅读 /usr/local/lib64/perl5/DBI.pm
。
我正在尝试安装 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
相关问题:
- Can't locate DBI.pm
- Unable to locate DBI.pm module in Perl
munin-run
switches users。默认用户是 nobody
。该用户可能没有读取该文件的权限。
The script must be run with sufficient privileges, usually as root, as it switches to either munin-node's default user (often "nobody") or any user specifically configured to run the given plugin.
检查 munin-run --debug
它是哪个用户 运行 并检查用户是否可以阅读 /usr/local/lib64/perl5/DBI.pm
。