systemdは、inodeが使い果たされるまで/run/systemd/propagateを埋めます。

systemdは、inodeが使い果たされるまで/run/systemd/propagateを埋めます。

Rspamd用にPyzorを設定するには、次のガイドラインに従いました。https://www.rspamd.com/doc/modules/external_services.html#pyzor-特異的-details

このガイドラインには、ソケットとサービスの一部のシステム構成も含まれています。

Pyzor は、すべての接続で開始されるソケットアクティベーションサービスです。問題は、systemdが実行ごとに新しいディレクトリを作成することです。

drw-------     (…) 08:30 [email protected]:5953-127.0.0.1:60656.service
drw-------     (…) 08:30 [email protected]:5953-127.0.0.1:60662.service
drw-------     (…) 08:30 [email protected]:5953-127.0.0.1:60676.service
drw-------     (…) 08:30 [email protected]:5953-127.0.0.1:60684.service
drw-------     (…) 08:30 [email protected]:5953-127.0.0.1:60694.service
drw-------     (…) 08:30 [email protected]:5953-127.0.0.1:60706.service

これらのディレクトリは削除されず、/run数日後にinodeが使い果たされるため、新しいPyzorプロセスや孤立した名前空間を持つ他のプロセスは作成されません。

これを防ぐために、または一定期間後にこれらのディレクトリを削除するようにデバイスを再設定するにはどうすればよいですか?

ソケットユニット:

# /usr/lib/systemd/system/pyzor.socket

[Unit]
Description=Pyzor socket

[Socket]
ListenStream=127.0.0.1:5953
Accept=yes

[Install]
WantedBy=sockets.target

サービスユニット:

# /usr/lib/systemd/system/[email protected]

[Unit]
Description=Pyzor Socket Service
Requires=pyzor.socket

[Service]
Type=simple
ExecStart=-/usr/bin/pyzor check
StandardInput=socket
StandardError=journal
TimeoutStopSec=10

User=_rspamd
NoNewPrivileges=true
PrivateDevices=true
PrivateTmp=true
PrivateUsers=true
ProtectControlGroups=true
ProtectHome=true
ProtectKernelModules=true
ProtectKernelTunables=true
ProtectSystem=strict

[Install]
WantedBy=multi-user.target

関連情報