一部のプロセスに共有オブジェクトをロードしようとしていますが、特定の条件を満たす必要があります。
- すべてのプロセスではなく特定のプロセスにのみロード
- プロセスコードが実行される前に完了する必要があります。
- このプロセスは私のものではありません
Linuxでこの機能をサポートするために使用できる方法は何ですか?
「/etc/ld.so.preload」または「LD_PRELOAD=/my/lib.so」で実行できますか?これにはカーネルモジュールが必要ですか?
どんな助けでも大変感謝します。
ありがとうございます!
答え1
使用できるコードは次のようになります。
LD_PRELOAD=/my/lib.so /path/to/binary
バイナリにこのライブラリが必要な場合は、次のものも使用できます。
LD_LIBRARY_PATH=/my:$LD_LIBRARY_PATH /path/to/binary
バイナリは、/my
標準パスで検索する前にパスからライブラリを検索します。