Squid のアカウントを別のグループに追加する前に、cache_effective_group を確認してください。Squid 5–7 では既定で実効ユーザーの主グループと補助グループが使われます。明示的な上書きがあると Squid は他のグループの権限を無視するため、いま追加したメンバーシップがヘルパーに届かないことがあります。

Perl モジュールがディスク上に存在するのに読み込まれない理由の一つです。実際のローダーエラーでは三つの原因を区別します。依存関係が存在しない、インタプリタの検索パスの外にある、サービスが読めない、のいずれかです。

ヘルパーの実行 ID の下で、モジュールと各親ディレクトリを比較してください。インタプリタにはディレクトリの通過とファイルの読み取りが必要で、読み取り可能な最終ファイル名だけでは足りません。更新後は、ベンダー側の所有者やモードの既定値が以前に機能していた構成と異なる場合があります。

想定するサービスアカウントと実効グループ設定に合った狭い権限付与を選んでください。依存関係を一つ読むために、アプリケーションのツリー全体をプロキシから書き込み可能にする必要はありません。グループ変更後は、サポートされたサービスのライフサイクルを通じて影響を受けたプロセスを作り直してください。既存のプロセスは古いメンバーシップを保持したままかもしれません。

検索パスと通常の権限が一致しているなら、サービスのファイルシステム表示と強制アクセス制御の証拠を調べてください。root シェルでモジュールが読み込めたことは、ヘルパーにとってそれらの条件のいずれかを証明しません。

関連記事