En azından Linux'ta çoğu dağıtım kimlik doğrulama için pam kullanıyor gibi görünüyor. Pam ile gelen modüllerden biri limit modülüdür. Pam_limits için README'den alıntı:
The pam_limits PAM module sets limits on the system resources that can be obtained in a user-session. Users of uid=0 are affected by this limits, too.
Sonuç olarak, her iki kategoride de kullanıcı başına, grup başına ve varsayılan limitleri ayarlayabilirsiniz (kök bunu ayarlar ve işlem daha yüksek talep edemez) ve yumuşak sınırlar. Yumuşak sınırlar tipik olarak sert sınırlardan daha düşük olarak ayarlanır ve uygulama, zor sınırına ulaşana kadar yukarı doğru artırabilir.
Sizin durumunuzda, işlemlerin limitlerini artırmak istediğiniz işlem normal bir kullanıcı olarak çalışıyorsa, o kullanıcı veya grubun limitlerini artırabilirsiniz. Örnek olarak, açılacak ekstra dosya tanıtıcısı gerektiren bazı sunucularda bazı mysql cron işleri var, bu yüzden şunu ayarladım:
$ cat /etc/security/limits.d/mysql.conf
@mysql soft nofile 100000
@mysql hard nofile 200000
Yeniden başlatılması gereken hiçbir şey yok; Bu kullanıcıya dava açtığınızda, yeni sınırların etkili olduğunu hemen görebilirsiniz.
Tipik bir RedHat türetilmiş sistemindeyseniz yapabileceğiniz bir diğer şey de / etc / sysconfig / $ SERVICE betiğine istediğiniz ulimit çağrısını koymaktır. Örnek olarak, apache'nin init betiği /etc/init.d/httpd olarak adlandırılır ve bulunursa / etc / sysconfig / httpd configuration dosyasını yazar. Ritmi yükseltildiğinde init betiği güncellendiğinden, init betiğinin kendisini düzenlemek yerine bunu yaparak yönetmeyi daha kolay buldum, ancak sysconfig dosyaları yalnızca varsayılandan değiştirilmediklerinde güncellenir.