ulimit در حقیقت دستور داخلی bash می باشد در لینوکس که با آن میتوانیم محدودیت در استفاده از سیستم (Resources) برای کاربرها استفاده کنیم. این دستور یکی از ابزار مفید برای ادمین های سرورهای لینوکسی بوده که با آن میتوانند محدودیت روی resource های خاص اعمال کنند و بدین گونه مطمین بشوند که سرویس های مهم تر همچنان در حال کار هستند و به دلیل کمبود resource با مشکل روبه رو نمیشوند. با این دستور شما میتوانید میزان استفاده از هر ریسورس را مدیریت کنید.
دستور ulimit میتواند از به اصطلاح بروز فاجعه جلوگیری کند. شما باید پیش بینی کنید که این محدودیت کجاها معنی پیدا خواهد کرد و کجاها ایجاد مشکل میکند. البته امکانش هست که این چنین اتفاقاتی نیفته اما به خاطر داشته باشید که یک یوزر به تنهایی میتواند تعداد پروسس زیادی را ایجاد کند و این سیستم را برای هر کس دیگری غیر قابل استفاده کند.
ساختار این دستور :
که به جای option از گزینه های مربوطه و به جای limit میزان محدودیت موردنظر رو اعمال میکنیم.
گزینه ها :
S- تغییر و گزارش soft limit مربوط به یک ریسورس
H- تغییر وگزارش hard limit مربوط به یک ریسورس
a- گزارش تمامی limit ها (محدودیتها) موجود
c- ماکزیمم سایز فایلهای core ایجاد شده
d- ماکزیمم سایز یک *segment از پردازش data
f- ماکزیمم سایز فایل های ایجادشده توسط shell (گزینه ی پیش فرض)
l- ماکزیمم سایز مموری که لاک میشود
m- ماکزیمم سایز RSS (بخشی از حافظه اصلی که برای پروسس ها اشغال میشود)
n- ماکزیمم تعداد فایل باز
p- سایز pipe buffer
s- ماکزیمم سایز stack
t- ماکزیمم مقدار cpu time به ثانیه
u- ماکزیمم تعداد پروسس های موجود برای یه کاربر مجزا
v- ماکزیمم مقدار ویرچوال مموری موجود برای یک پروسس
برای مثال :
soft limit در حقیقت مقداری است که کرنل برای ریسورس مربوطه تایید میکند و hard limit همچون سقفی برای soft limit عمل میکند.
دستور ulimit میتواند از به اصطلاح بروز فاجعه جلوگیری کند. شما باید پیش بینی کنید که این محدودیت کجاها معنی پیدا خواهد کرد و کجاها ایجاد مشکل میکند. البته امکانش هست که این چنین اتفاقاتی نیفته اما به خاطر داشته باشید که یک یوزر به تنهایی میتواند تعداد پروسس زیادی را ایجاد کند و این سیستم را برای هر کس دیگری غیر قابل استفاده کند.
ساختار این دستور :
کد PHP:
ulimit [options] [limit]
که به جای option از گزینه های مربوطه و به جای limit میزان محدودیت موردنظر رو اعمال میکنیم.
گزینه ها :
S- تغییر و گزارش soft limit مربوط به یک ریسورس
H- تغییر وگزارش hard limit مربوط به یک ریسورس
a- گزارش تمامی limit ها (محدودیتها) موجود
c- ماکزیمم سایز فایلهای core ایجاد شده
d- ماکزیمم سایز یک *segment از پردازش data
f- ماکزیمم سایز فایل های ایجادشده توسط shell (گزینه ی پیش فرض)
l- ماکزیمم سایز مموری که لاک میشود
m- ماکزیمم سایز RSS (بخشی از حافظه اصلی که برای پروسس ها اشغال میشود)
n- ماکزیمم تعداد فایل باز
p- سایز pipe buffer
s- ماکزیمم سایز stack
t- ماکزیمم مقدار cpu time به ثانیه
u- ماکزیمم تعداد پروسس های موجود برای یه کاربر مجزا
v- ماکزیمم مقدار ویرچوال مموری موجود برای یک پروسس
برای مثال :
کد PHP:
# ulimit -n 100000
OR
# ulimit -s 100000
soft limit در حقیقت مقداری است که کرنل برای ریسورس مربوطه تایید میکند و hard limit همچون سقفی برای soft limit عمل میکند.
کامنت