แก้ไข 'ขีด จำกัด นุ่ม' ของ 'กระบวนการสูงสุด'


3

ฉันพยายามulimit -u 2000และulimit -Su 2000แก้ไข ' กระบวนการสูงสุด ' และเริ่มต้นโปรแกรมของฉัน แต่ล้มเหลว ฉันพบไฟล์ '/ proc / pid / limit' ยังคงอยู่:

Max processes             1024                 2000                 processes

ฉันจะเปลี่ยนขีด จำกัด ซอฟต์ได้อย่างไร?

คำตอบ:


5

สิ่งที่ไม่ulimit -aแสดง?

เป็นไปได้ว่าคุณจะมีขีด จำกัด สูงสุดทั่วโลกหรือกำลังประสบปัญหาการอนุญาต ฉันลองการทดสอบของคุณและมันใช้ได้ดีสำหรับฉัน

ตัวอย่าง

ผลลัพธ์ของ a /proc/pid/limitsดูเหมือนดังต่อไปนี้:

$ cat /proc/22666/limits | grep processes
Max processes             1024                 62265                processes 

$ ulimit -a | grep processes
max user processes              (-u) 1024

การตั้งค่า soft limit เป็น 2000:

$ ulimit -Su 2000

$ ulimit -a | grep processes
max user processes              (-u) 2000

$ cat /proc/22666/limits | grep processes
Max processes             2000                 62265                processes 

มีอะไรอีกบ้าง?

ฉันจะดู/etc/security/limits.confไฟล์ของคุณและดูว่ามีข้อ จำกัด มาจากไฟล์นั้นหรือไม่ที่ทำให้ผู้ใช้ทั่วไปไม่สามารถเปลี่ยนขีด จำกัด นี้ได้

ฉันจะดูในไดเรกทอรี/etc/security/limit.d/ด้วย มีไฟล์เพิ่มเติมบ่อยครั้งที่มีการ จำกัด มากขึ้น ตัวอย่างเช่นในระบบ Fedora ของฉันฉันมีไฟล์นี้:

$ cat /etc/security/limits.d/90-nproc.conf 
# Default limit for number of user's processes to prevent
# accidental fork bombs.
# See rhbz #432903 for reasoning.

*          soft    nproc     1024

อ้างอิง


ที่จริงแล้ว/proc/pid/limitผลลัพธ์ที่เขาแสดงบ่งชี้ว่าฮาร์ด จำกัด อยู่ที่ 2000 และวงเงินนุ่มยังคงอยู่ที่ 1024
Patrick
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.