อย่างน้อยบน Linux, distros ส่วนใหญ่ดูเหมือนจะใช้แพมสำหรับการรับรอง หนึ่งโมดูลที่มาพร้อมกับ pam คือโมดูลจำกัด การอ้างอิงจาก README สำหรับ pam_limits:
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.
เป็นผลให้คุณสามารถตั้งค่าต่อผู้ใช้ต่อกลุ่มและข้อ จำกัด เริ่มต้นในทั้งสองประเภทฮาร์ด (รากตั้งค่านี้และกระบวนการไม่สามารถขอสูงกว่า) และข้อ จำกัด ที่อ่อนนุ่ม โดยทั่วไปแล้วซอฟต์ลิมิตจะตั้งไว้ต่ำกว่าฮาร์ดลิมิตและแอพสามารถเพิ่มขึ้นได้จนกว่าจะถึงฮาร์ดลิมิต
ในกรณีของคุณหากกระบวนการที่คุณต้องการเพิ่มขีด จำกัด ของการรันในฐานะผู้ใช้ทั่วไปคุณสามารถเพิ่มขีด จำกัด สำหรับผู้ใช้หรือกลุ่มนั้น ตัวอย่างเช่นฉันมีงาน mysql cron ในเซิร์ฟเวอร์บางเครื่องที่ต้องเปิดตัวจัดการไฟล์เพิ่มเติมดังนั้นฉันจึงตั้งค่านี้:
$ cat /etc/security/limits.d/mysql.conf
@mysql soft nofile 100000
@mysql hard nofile 200000
ไม่มีสิ่งใดที่ต้องรีสตาร์ท เมื่อคุณใช้กับผู้ใช้นั้นคุณจะเห็นได้ทันทีว่าข้อ จำกัด ใหม่จะมีผล
อีกสิ่งหนึ่งที่คุณสามารถทำได้หากคุณอยู่ในระบบที่ได้รับ RedHat โดยทั่วไปคือการวางสาย ulimit ที่คุณต้องการในสคริปต์ / etc / sysconfig / $ SERVICE ตัวอย่างเช่นสคริปต์เริ่มต้นของ apache ชื่อ /etc/init.d/httpd และมันจะจัดหาไฟล์การกำหนดค่า / etc / sysconfig / httpd หากพบ ฉันพบว่าง่ายต่อการจัดการโดยการทำเช่นนี้แทนที่จะแก้ไขสคริปต์ init เองเพราะสคริปต์ init ได้รับการอัปเดตเมื่อมีการอัปเกรด rpm แต่ไฟล์ sysconfig จะได้รับการอัปเดตหากไม่เปลี่ยนแปลงจากค่าเริ่มต้น