ESET FileSecurityで「プリロードLIBCライブラリを使用したオンアクセススキャナー」を設定しようとしています。
マニュアルには次のように記載されています。
... Sambaサーバーの起動直後にすべてのファイルシステムアクセスイベントを監視するオンアクセススキャナーを使用する。 Sambaデーモン初期化スクリプト内(
/etc/init.d/smb
)、ステートメントを置き換えますdaemon /usr/sbin/smbd $SMBDOPTIONS
次の行で:
LD_PRELOAD=@LIBDIR@/libesets_pac.so daemon /usr/sbin/smbd $SMBDOPTIONS
しかし、ファイル/etc/init.d/smbはありませんが、/ etc/init.d/smbdはあります。
誰かが、sambaの開始前にLIBCライブラリが起動されるこの行をどこに書き込むかを教えてもらえますか?
したがって、/etc/init.d/smbd
の深部には、実際にsmbd
を起動している次の行があります。
if ! start-stop-daemon --start --quiet --oknodo --exec /usr/sbin/smbd -- -D; then
人気のあるアイデア 環境変数を渡すための==はenv
であるため、次のようになります。
if ! start-stop-daemon --start --quiet --oknodo --exec /usr/bin/env LD_PRELOAD=@LIBDIR@/libesets_pac.so /usr/sbin/smbd -- -D; then
@LIBDIR@
をlibesets_pac.so
への正しいパスに置き換えてほしいと期待していることに注意してください。
別の方法は、smbd
の新しいランチャーを/usr/local/sbin/smbd
として作成することです。
#!/bin/sh
LD_PRELOAD=@LIBDIR@/libesets_pac.so /usr/sbin/smbd
次に、/etc/init.d/smbd
を変更して/usr/local/sbin/smbd
を呼び出します。