64ビットDB2 10.5にUbuntu 12.04で32ビットlibpamと64ビットlibaioがない


8

これは私に起こりました。それがあなたに起こっているなら、多分これはあなたに少しの時間を節約することができます。

LAMPスタックを含むSoftLayer 64ビットUbuntu 12.04 Linuxシステムに64ビットDB2 10.5サーバーをインストールしていました(正確にはどの製品パッケージか-誰かが私に渡した)。

最初の結論:32ビットのlibpamと64ビットのlibaioが欠けていて、実行する必要があることがわかりました。

   apt-get install libpam0g:i386 libaio1

ほとんどの人の走行距離は間違いなく異なります。体験の一部のみがあなたに当てはまり、あなたにとって役立つと思われる場合は、ここに詳細を示します。

インストールの前に、db2prereqcheck文句を言いました:

   DBT3514W  The db2prereqcheck utility failed to find the following
   32-bit library file: "/lib/libpam.so*".

案の定、私が持っていたのは:

   /lib/x86_64-linux-gnu/libpam.so.0.83.0
   /lib/x86_64-linux-gnu/libpamc.so.0
   /lib/x86_64-linux-gnu/libpam.so.0
   /lib/x86_64-linux-gnu/libpam_misc.so.0.82.0
   /lib/x86_64-linux-gnu/libpamc.so.0.82.1
   /lib/x86_64-linux-gnu/libpam_misc.so.0

ウェブを少し見回した後、私はやった:

   apt-get install libpam0g:i386

その後、私も持っていました:

   /lib/i386-linux-gnu/libpam.so.0.83.0
   /lib/i386-linux-gnu/libpamc.so.0
   /lib/i386-linux-gnu/libpam.so.0
   /lib/i386-linux-gnu/libpam_misc.so.0.82.0
   /lib/i386-linux-gnu/libpamc.so.0.82.1
   /lib/i386-linux-gnu/libpam_misc.so.0

しかし、db2prereqcheckは依然として同じ不満を述べました。

ウェブ上の多くの場所が推奨されています:

   ln -s /lib/i386-linux-gnu/libpam.so.0 /lib/libpam.so.0

しかし、それはグロテスクなハックのように私には思われました。それは、道の先のさまざまなアプリケーションでさまざまな問題に私を確実に導くでしょう。

LD_LIBRARY_PATHand を含め、環境変数を使用していくつかのことを試しました LD_LIBRARY_PATH_32が、は役に立ちませんでしたdb2prereqcheck

信頼できる人が、とにかくインストールを続行するように言った。だから私はやった

   db2_install

(これはリモートのヘッドレスシステムでした)、インストールの一部として実行されるdb2prereqcheckは不平を言いましたが、インストール機能しました。

悲しいことに、db2startは不平を言いました:

   sqllib/adm/db2start: error while loading shared libraries:
   libaio.so.1: wrong ELF class: ELFCLASS32

私が信頼できる人が推奨しました:

   apt-get install libaio1

64ビットのlibaioをインストールしました(その前は、私のシステムには32ビットしか含まれていませんでした)。その後、次のようになりました。

   /lib/i386-linux-gnu/libaio.so.1.0.1
   /lib/i386-linux-gnu/libaio.so.1
   /lib/x86_64-linux-gnu/libaio.so.1.0.1
   /lib/x86_64-linux-gnu/libaio.so.1

その後、すべてがうまくいきました。

繰り返しになりますが、32ビットのlibpamと64ビットのlibaioがありませんでした。

ところで、私のシステムイメージにはすでにパッケージlibstdc++6などが含まれていますlib32stdc++6 -多くの人が環境に欠けているように見えるものです。

お役に立てれば。


2
質問と回答を分けてください。
Luis Alvarado

回答:


7

Ubuntuサーバー14.04.02(64ビット)では、DB2 10.5をインストールする前に次のパッケージをインストールする必要がありました。

  • libx32stdc ++ 6
  • libpam0g:i386
  • libaio1

3
注:あなたがi386のアーキテクチャ用のパッケージを追加する必要があるかもしれませんsudo dpkg --add-architecture i386そしてsudo apt-get update、最後にsudo apt-get install libpam0g:i386。DB2をインストールする初心者への注意:apt-getUbuntuパッケージマネージャーを使用してこれらのパッケージをインストールします。例:apt-get install libx32stdc++6sudoこれらのコマンドをrootとして実行するために使用します。(それ以外の場合は、十分なアクセス許可がない可能性があります。)
SilentSteel

0
ln -s /lib/i386-linux-gnu/libpam.so.0 /lib/libpam.so.0

醜いハックにもかかわらず、これは私にとってはトリックでした。

apt-get install libpam0g すべてがインストールされ、最新であると述べました。


0

ldconfigpamライブラリのi386バージョンをインストールした後に実行する必要がある場合があります。DB2は、その依存関係についてリンカーキャッシュを検索します。そのため、DB2がインストールされていて、にエントリがある/etc/ld.so.cache.d/場合ldconfig、実行されていればそれを見つける必要があります。

のようなものを実行するstrace db2 connect to sampleと、多くの情報が得られます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.