LD_LIBRARY_PATHをすべてのユーザーおよびシステムサービスにエクスポートする方法

LD_LIBRARY_PATHをすべてのユーザーおよびシステムサービスにエクスポートする方法

LD_LIBRARY_PATHシステムサービスとすべてのユーザーにエクスポートしたいと思います。システムサービスはログイン前に実行されるため、これは.bashrc適用されません。

この目標を達成する方法は?

答え1

必要ありません。ディストリビューションに応じて、ディレクトリまたは/etc/ld.so.conf新しいファイルを追加します。/etc/ld.so.conf.d/

次に(少なくともRedhatでは)rootとして実行する必要がありますldconfig

システム共有ライブラリー・パス (ld.so.conf 環境または /usr/local/lib) にどのライブラリーを追加するかに注意してください。特に、同じ名前の同じライブラリの2つの異なるバージョンに注意する必要があります。たとえば、dpkg/rpm/etc を介して libfoo.0.1 (名前付き libfoo.0) をインストールした場合、libfoo.0.2 (名前付き libfoo.0) がカスタムライブラリディレクトリに存在することは望ましくありません。

(実際にはシステム全体にわたって環境変数を実装するのはそれほど簡単ではありません。 を使用してinittabで直接実行できます/etc/environment/etc/default/rcS

答え2

ファイルに各パスを追加したら、次/etc/ld.so.conf.dを実行できます。

ldconfig -v 

次にロードします。

関連情報