Yanıtlar:
CentOS / RHEL'deki daha yeni çekirdeklerde (2.6.32+) bunu çalışma zamanında / proc / <pid> / limitleri ile değiştirebilirsiniz:
cd /proc/7671/
[root@host 7671]# cat limits | grep nice
Max nice priority 0 0
[root@host 7671]# echo -n "Max nice priority=5:6" > limits
[root@host 7671]# cat limits | grep nice
Max nice priority 5 6
Belgelendiği gibi burada , prlimit
util-linux 2.21 ile tanıtıldı komut, okuyup çalışan süreçlerin sınırlarını değiştirmek için izin verir.
Bu, /proc/<pid>/limits
ana hat çekirdeğine dahil olmayan yazılabilir bir takiptir . Bu çözüm işe yaramalı.
prlimit(1)
Henüz sahip değilseniz kodu prlimit(2)
manimalisteki minimalist versiyonda bulabilirsiniz .
Util-linux-ng'nin yeni sürümünde prlimit komutunu kullanabilirsiniz, daha fazla bilgi için bu bağlantıyı okuyun https://superuser.com/questions/404239/setting-ulimit-on-a-running-process
man ulimit
-N seçeneğiyle ulimit'i deneyebilirsiniz , ancak mag sayfası çoğu işletim sisteminin bu ayarı yapmasına izin vermez.
Bir sistem çapında dosya açıklamaları sınırı kullanarak ayarlayabilir sysctl -w fs.file-max=N
ve değişikliklerin başlatılmasından sonra da devam etmesini sağlayabilirsiniz./etc/sysctl.conf
Ancak, belirli bir zamanda çok fazla dosyanın açık olması gerekip gerekmediğini görmek için işleme bakmayı da önerebilirim ve aslında bazı dosyaları kapatabilir ve bu süreçte daha verimli olabilirsiniz.
ulimit
ayarları çalışan işlemlere uygulamaz .