Perl Cacti-在运行时更改环境变量。

Perl Cacti-在运行时更改环境变量。,perl,environment-variables,cacti,Perl,Environment Variables,Cacti,我正在使用Cacti脚本/命令方法来收集数据。我有一个连接到Oracle数据库并返回两个数字的perl脚本。当在命令行(Unix)上运行时,此脚本可以完美地工作 为了使这个perl脚本正常工作,我必须定义几个环境变量,以便它能够连接到Oracle $ENV{ORACLE_HOME}=…等.. 但是-当我在Cacti中创建一个数据输入方法来运行这个perl脚本时。。。我收到一个错误,指出它无法找到DBD/Oracle.pm。(这是因为Perl没有设置环境变量) 有人知道我在命令行上运行此命令时为什

我正在使用Cacti脚本/命令方法来收集数据。我有一个连接到Oracle数据库并返回两个数字的perl脚本。当在命令行(Unix)上运行时,此脚本可以完美地工作

为了使这个perl脚本正常工作,我必须定义几个环境变量,以便它能够连接到Oracle

$ENV{ORACLE_HOME}=…等..

但是-当我在Cacti中创建一个数据输入方法来运行这个perl脚本时。。。我收到一个错误,指出它无法找到DBD/Oracle.pm。(这是因为Perl没有设置环境变量)

有人知道我在命令行上运行此命令时为什么正确设置了ENV变量吗

但是它们在仙人掌上运行时,不能设置吗

顺便说一下-Cacti正在以root身份运行perl脚本。

解决了

问题是Root用户没有对Oracle.pm的读取权限

一旦我停止研究环境变量的问题。。。权限是下一个明显的问题


感谢您在评论中的帮助。

您能告诉我们您的Oracle.pm位于何处并向我们展示脚本吗?$Oracle\u HOME不会影响perl查找
DBD/Oracle.pm
的能力。如果
使用DBD::Oracle
报告
无法在…
中找到DBD/Oracle.pm,则
@INC
设置不正确。请查看影响
@INC
初始设置的环境变量
$PERL5LIB
$PERLLIB
的设置。一般来说,我发现一旦安装了
DBD::Oracle
,就不需要设置
$Oracle\u HOME
来使用它。