Linuxの特定のプロセスに共有オブジェクトをロードする

Linuxの特定のプロセスに共有オブジェクトをロードする

一部のプロセスに共有オブジェクトをロードしようとしていますが、特定の条件を満たす必要があります。

  • すべてのプロセスではなく特定のプロセスにのみロード
  • プロセスコードが実行される前に完了する必要があります。
  • このプロセスは私のものではありません

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標準パスで検索する前にパスからライブラリを検索します。

おすすめ記事