Відповіді:
Команда ulimit - це вбудована команда, яка використовує описані людиною функції C: Ця власна допомога включена на сторінку Man Bash, доступну з man bash
.
Ви можете перелічити всі доступні параметри ulimit -h
та переглянути їх відповідне значення, використовуючи ulimit -a
список усіх доступних типів обмежень та їх поточні значення, залежно від вашої системи:
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 20
file size (blocks, -f) unlimited
pending signals (-i) 16382
max locked memory (kbytes, -l) 64
max memory size (kbytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) unlimited
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
ulimit
має бути вбудованою оболонкою, оскільки встановлене обмеження стосується самої оболонки, а також програм, які вона запускає. Єдиним портативним аргументом є -f
(обмеження розміру файлу в 512-байтових одиницях). Більшість оболонок мають більше варіантів, вам потрібно перевірити документацію на оболонки, щоб точно знати, що вони є. З портативними оболонками, такими як bash та ksh, деякі варіанти unix можуть не підтримувати обмеження, навіть якщо оболонка розпізнає відповідний параметр.
Параметри, які підтримуються кожною я бачив:
-H
: Комбінуйте з іншими параметрами, щоб встановити або показати лише жорсткий ліміт.-S
: Комбінуйте з іншими параметрами, щоб встановити або показати лише м'який межа.-c
: максимальний розмір основного файлу (512-байтних блоків)-d
: максимальний розмір купи (сегмент даних) (кБ)-f
: максимальний розмір файлу (512-байтові блоки)-n
: максимальна кількість дескрипторів файлів-s
: максимальний розмір стека (кБ)-t
: максимальний час процесораЩе кілька дуже поширених варіантів:
-a
: Відображення всіх лімітів.-m
: максимальний фізичний об'єм пам'яті (кБ)-v
: максимальний розмір віртуальної пам'яті (кБ)
ulimit -h
підтримується не скрізь - принаймні не в Bash 4.2.25.