0

私は Cacti スクリプト/コマンド方式を使用してデータを収集しています。Oracle データベースに接続して 2 つの数値を返す perl スクリプトがあります。このスクリプトは、コマンド ライン (Unix) で実行すると完全に機能します。

この perl スクリプトが正しく機能するには、いくつかの環境変数を定義して、Oracle に接続できるようにする必要があります。

$ENV{ORACLE_HOME} = ...etc...

しかし、この perl スクリプトを実行するために Cacti でデータ入力メソッドを作成すると、DBD/Oracle.pm が見つからないというエラーが表示されます。(これは、環境変数が Perl によって設定されていないためです)。

これをコマンドラインで実行すると、ENV変数が正しく設定される理由を誰かが知っていますか?

しかし、Cacti で実行する場合は設定できませんか?

ちなみに、Cacti は root として perl スクリプトを実行しています。

4

1 に答える 1

0

解決しました!

問題は、ルートが Oracle.pm への読み取りアクセス権を持っていないことでした。

問題である ENV 変数を調べるのをやめると、パーミッションが次の明らかな問題になりました。

コメントにご協力いただきありがとうございます。

于 2011-08-13T15:35:04.890 に答える