電気ウナギ的○○

About Home

「共有オブジェクトファイルを開けません」エラーではまった・・・

shinoda (2010年1月 7日 02:51)

阿呆だった。
誰がだ?俺がだ。

俺は駄目なヤツだ。
駄目なヤツは俺だ。

ああ、何ということだ。何ということだ。

こんな、あんな、そんな・・・ああ・・・

俺の4時間を返せぇ~

いや、何かというと、CentOS 上の Perl5.8 で PostgreSQL を DBD::Pg モジュール経由で使う設定をしたのだが、シェル上ではそのプログラムを実行出来るのに、Apache の CGI として実行すると駄目というケースが発生したのだ。

install_driver(Pg) failed: Can't load '/usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/auto/DBD/Pg/Pg.so' for module DBD::Pg: libpq.so.5: 共有オブジェクトファイルを開けません: そのようなファイルやディレクトリはありません at /usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/DynaLoader.pm line 230.
 at (eval 3) line 3
Compilation failed in require at (eval 3) line 3.
Perhaps a required shared library or dll isn't installed where expected
 at ./test.cgi line 89

こんなヤツね。

root や postgres ユーザでシェル上で実行すれば正常に動くのに・・・
これの解決に(このことばかりやってたわけではないが)4時間もかかってしまい、こんな時間になっているわけである。とほほ。

「それは、Apache の httpd.conf に SetEnv LD_LIBRARY_PATH /usr/local/pgsql/lib って書けばいいのだよ!」とか言う?
確かに昔はそんなこともしてたけどなあ。
ちゃんと /usr/local/pgsql/lib も ldconfig で認識させているから問題ないのだよ。そんな問題ではないのだ。

ま、とは言いつつ、藁をもすがる気持ちで実は SetEnv もしてみたけどな。(^^;
もちろん意味はない。

結局、原因は単純だった。

/usr/local/pgsql のパーミッションが 0700 になっていただけ・・・(^^;
なので、root や、このディレクトリのオーナーである postgres だけしか(いくらちゃんとライブラリのパスを通していても)DBD::Pg モジュールが利用できなかったのだな・・・とほほ。

いつもなら、PostgreSQL をインストールするとき、あらかじめ root で mkdir /usr/local/pgsql して、インストール後に chown -R postgres /usr/local/pgsql とかするのよ。
そしたら、/usr/local/pgsql のパーミッションは 0755 で作成されるので問題なかったんだよ。

今回は、急ぎテスト環境を作りたかったので、postgres ユーザを作る時に、

useradd -g postgres -u 128 -c 'POSTGRES Admin' -d /usr/local/pgsql -m -s /bin/csh postgres

と、ホームディレクトリとして /usr/local/pgsql を作っちゃったのよ。これが不味かった。パーミッションが 0700 で作られてしまうからな。

・・・そうなんだよな。以前も別のエントリで書いたけど、俺は「BSD の人」なので、未だに Linux 系でホームディレクトリが 0700 で作られちゃうことに馴れてないのであります。(^^;

まったく。困った話だ。

結局、chmod 755 /usr/local/pgsql したら全て解決。

ググってみたら、けっこう同じような状況ではまっている人も多いので、恥をさらしてエントリを公開しておくのだ。

ああ、俺の貴重な睡眠時間が・・・

電気ウナギ的○○

電気ウナギ的○○

About Back

コメント(0)

電気ウナギ的○○

電気ウナギ的○○

About Back

トラックバック(0)

トラックバックURL: https://blog.netandfield.com/mt/mt-tb.cgi/969

電気ウナギ的○○

About This Site

電気ウナギ的○○
岩国在住。広島で働く超零細IT企業社長のいわゆる社長日記。
何か、酒と食い物のことばかり書いているようで・・・お察しのとおり、肥満体です:-)


2011/06/24
iPhone用サイト公開

Create with jQuery, jQTouch.


CLOSE