Archwiliwch y daemon sy'n rhedeg cyn ymddiried yn ulimit -n y plisgyn mewngofnodi. Ar gyfer gosodiad sy'n defnyddio squid.service, dechreuwch gyda:

systemctl show squid.service -p MainPID -p LimitNOFILE
systemctl cat squid.service

Darllenwch /proc/PID/limits gan ddefnyddio ID y broses wirioneddol. Mewn gosodiad aml-broses, gwiriwch y gweithiwr perthnasol hefyd. Nid yw gwerth a arbedwyd mewn cyfluniad yn brawf bod y broses hon wedi'i etifeddu.

RheolaethCwmpas
Plisgyn ulimit a PAM limits.confDisgynyddion y plisgyn neu sesiynau sy'n defnyddio'r gosodiad PAM mewn gwirionedd
systemd LimitNOFILE=Prosesau a gychwynnwyd o dan bolisi adnoddau'r gwasanaeth hwnnw
Squid max_filedescriptors, lle mae'n cael ei gefnogiTerfyn y cymhwysiad o fewn cyfyngiadau'r system weithredu

Nid yw gwasanaeth system yn mabwysiadu golygiadau PAM dim ond oherwydd bod gweinyddwr wedi newid y ffeil. Defnyddiwch drop-in sy'n benodol i'r gwasanaeth pan fo newid ei derfyn systemd yn briodol. Mae Squid yn nodi bod max_filedescriptors angen ailgychwyn i'w newid; os caiff ei adael heb ei osod, mae'n etifeddu terfyn meddal yr OS.

Maintiwch y terfyn ar gyfer cofrestryddion, nid defnyddwyr. Gall cleientiaid ddal sawl soced, ac mae cysylltiadau ymlaen, logiau a phibellau cymorth hefyd yn defnyddio cofrestryddion. Mae codi'r terfyn yn caniatáu mwy o ddefnydd heb gadw swm sefydlog o RAM ar unwaith ar gyfer pob cofrestrydd posibl. Nid yw amcangyfrif hen o gof fesul soced na 65,535 yn ofyniad gallu cyffredinol nac yn nenfwd Linux.

Ar ôl newid y gwasanaeth, cymharwch derfynau'r broses newydd â'r gwerthoedd arfaethedig. Os bydd methiannau ymhell islaw iddynt, ymchwiliwch i'r adnodd sy'n cael ei ddiostio mewn gwirionedd.

Erthyglau cysylltiedig